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

columnPermute -- permute some columns

Synopsis

Description

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

o1 = | . .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | 1 157536965537041165175488513                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293659793326081 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293659793326081 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293659793326081 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293659793326081 |
     | 2 967295832633945845834869185800307047105609422308414810645746398046370042262531207870656004029659873312418481789313649470391957047504299505728009633830699111355018426918079920832148853706789411558461993308975264326547024001026577137249483012835166386113514128000679938                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293711332933634 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293711332933634 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293711332933634 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293711332933634 |
     | 3 12383115491759593336353448778379443964747069532690831330280979580098339279790775242870055942037175182167694828630408385835175875367053447190075428867422552264390617730682204059152964954990436318320066452696273806924709017982508044079009837847400529770389578424189117183088087480824101224256058609149553476190710547446897844182028392366333307487865784713519314588490477817179043620210043028950398122011224596426889970399178340895356293289007965768159511777393133377446385175122996269338177433677421308960413087551096814482662548354346246858969757310348675789712294927261335717881049445949486482662504108816265621544578181600284422176496172308392462276574675565303527177360659765353027377486869078195903079205231308477660611980462430034802014102098182501771697118115602379850958690162608255533538768591965428342068226113736386719934945356202596593900817217755747321259865221369864995825759742201040930043241511643171678356445126920249177613171029077212712093309967156788875411419402722295933670734688896741512247918234685527915708781272988686433764604129914194970929787214584490838135220521430625819676767401319937903230133084064114039174361988618695782405360166205673240293621613980609349475147401997864732399255038565586575788726652072018194511096147381101805566009842353235105883866850267280696249522178045986257596416726180828361148349691211526937431835938258272119062171188772121412577237203776863014878700731892332492543579793355282497485378686731699609064685692087849279692448043166555128773569910728711789922382497619652814411987460235792426821685143207992887527205821901768253034644404961301302492347504072228115894168517070065900649353257228969167833550409150889329048630795067543501314484948470020881406429869289964955780339659513469613786331099385052168548349055619182239896461135352339579647464834649552264380287889796654012183708644027352537896512995386623043158420405706357356650047939670482859731927476521243363198074975790733527566884301449530824591134724875324870610422469237815027105566532407149520011169864527522204388934037762357154623838443726873951859115535082942799913460934057397669440474940318488716528611259546474584816425450065518883981812205527661480828715325934121441005941996455787469564823691373707900960611934772846171073982976423398106640751130583413303916911062944958495609727167498815255089153517445600965557409747352516741305809942165367442987751609928770897445943681574154313712518520801993109843248632836418938139529653938167892786928726780752296935424003                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293762872541187 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293762872541187 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293762872541187 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293762872541187 |
     | 4 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293814412148740 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293814412148740 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293814412148740 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293814412148740 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015832377192404069217278657813443785443675456435869059969286823822674355624877588258812684759224423190251769502038935276192905450801702901739342167910466272940644582963456057747858483852774861715706114377251409147236018325886986734343095193722822901599230737235442591998298782079379710183371282383794186156837896394185627056505644020559243388472501502147362013971801775199580416751689293053451012685077132906995813842742688372831620056860549413253070604783263326569493017549502420657725938313453234006966642373020268815556129060231091136497324795417898727797441465028373376645462757388746691498158952160021472526249878169554613584996677223569463170796236273724977742630767398946552773071162735635711836805915146472980306867736818870527948831525898787180642440279080860933579492860428565439783048026636450089330222916993149717764139830290858513596521482180409803391835241351195397053822222658685032613466662693871470510409150968864559822193437268724413160030297524751288760840594825573423117531865203368014500800591088924330919914151354789136260961000801356467138928107358619115018197564054308406976233954853555883528333362886514687983243942278978506802401842477835696492090374584202104004885954325861632622327050901500305085756926674179652960070913141193321011330112267708199084628678512916225851964671056359913201003460385521655388255163601781856087918111697560039314565613747876271502864273884563319342584486709222512345131303369570183796454475168042990424893006364875814578300368768807671827917899146955360758954996267495384112169878888354440459913059663900345489495950337632126226095659999904813365225274702674168034585196080427424881947698057018811648427235586756920410097236088228899894792661323352493731277965153478508774855003487630291100839445919961186759122022847175445441494983046245477239026882905463779700861764109618891254885850477003839106185706390154416048241905681943459804430075660334510623309063810849401009578102625056774576573007062532200586604585854516043566673726529197390390361719682006360597859726917926454792837028163710693241883290035467703553716476245277053609738952033809945799703683257508855885369230218652831563301874301679368569941804354182645880903321124792816453339309836263373844896372919793563041874716192086206609114122932802790883571536872583230180291316701257896407677175754519195071205834508027622777456592859431883673279584300578737327447744088828638857300834726033002385570610787311164069825865278798781401347133807122361488316755493207155648767471441383762530829199774157677922057833087381225451018713791470426692947761224372554657295056086060102552004765156769599447264723592219843658334350369607902932463400795871792729924950962800794372800029264218345732939685535994085180569941306252089187436247160508992753655644230026184420111245208493635662840863390929758026307994539582822459837972732133174806998925959487868425682387914786997420366009140048692394160425476356132065296466899461924365229979512536534250552478857411511561447650360826407921227589500629784337070512369756872583539110675047917578881971816484850166020337163690887794927329071718972330450435854984919858245720503713892478669590398299289724219728354418891956077825280963411466109063382539267530540317018509353380831158582758720128143177558449498812894743276091128122857691918630241637619401391904446428498335172490508444590500320566422912005377496054897553126621371658780908744186784621759601533895370593776629499404694623770119617045843151597222205441325600937700590064235370302350358475332060238350644900472725004756199239989417266872557375569334048201415741484721861389612321742236574656037089744922059648907129411929054345446916350960671083879269150588129364792641180777330969579151557677897262251956804885312552947668334091823442157319470343991850291562861842355950736119368453082584304172694112424926173928681220052602845491388337936657442318479650776267196490718407618754387334721635774326379008266888146629755249354709154561640376560009981172363751460088759352467646221810190561435224598238124123364396495728425314671306902609193495391817424091586236565379238701845224573395840800207042212727240626267825327457203488431555124290755627914650178719956655375222338967729270775136993467075572769434655775992651288193504746413608690122941135854015847412431428165745104708212733366579922528507796774332643251852548347191534613270409243231117005960212671739500957185686577011130343193421374112219896357741740305617779976128990868577386798099963612080690919226490946007007270549048261926334608080790817960184901395067132222215928827398281596403535544413177255972612171990430446904027254898235941370187818297860391917449432846504134588120006317989875538682996050710276026675019569887368196028950777426869832381989107859180475453579633834702290761759284653724171600236335760436279804816794540674040603284423547221788756824907259843045230078453012791114886548288865419695464605331406263073604853398010310412661806988166772365276603729881923107303714018811478858949903539501245277086173754388159478697060840874793655911143240742286455758570485405426172727347975772327354987985446965322447533811375347577374201216720110893335293814412148740 |

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

o2 = | . .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          .                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | 1 157536965537041165175488513                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834676227473409 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834676227473409 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834676227473409 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834676227473409 |
     | 2 967295832633945845834869185800307047105609422308414810645746398046370042262531207870656004029659867643643135423451310363960669327212120076853228559801724639866595782427405756281430494560374525638028294288787280527208428047369243884116714468332259544164584008521351170                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834727767080962 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834727767080962 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834727767080962 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834727767080962 |
     | 3 131320522667450157025014260926434774716195847451632054705472093552882657937224227764793673195138276328372816899776734130388737434818690167331124365840014622782803706159845123550740412921007087553502380120695904417147970951537507206651907127467183161573779723178248263074187395885724110758149710061534193709853106342689965050959679915725374559915797776841674811262895475772752192186796407999901239797329138540841100687452317370204422685244564766575465339689963006989105940793437609494935421352868357948938560930816050684017233894979440221880116465093602735473118966546439285627021737850907147159056115095547222622389600382636305433978537453708363550680044552778307854478715904795887293000618873330950159907064634024667597920704725645191753237971947018376345767362567069071425947868001151369353768724402915660943386666954040621655786034195877759072808406413312541054444997832101848898307139180775031860766186984005321157886422251530262245980838451869512231095440663073156790670066092805497094844963038902076049033115948206900828345746535325613390035364261625579481210367466657492465675554690895467444703679009901171538013169218879836089647962843609019832974582769225926146128996499938379497881894386192303721640577131458645130084944756723029266437102263564244339382088803976591516713227376089495271502906041107375500349669191785650768431630908662054426767410536351445906139203613627806134859199012517830382669533419033337076400470080714822924351401083697031914166971007801601005562405133378862089422503432760399781129278498950831051025881450168383251210191706329894591234844253745786351018836510478592767233346164562670055467345165767963264447262115184429767969374176795974819280553386701362510276463778443149596951818217577188769173393260543473472455946902552260253524164026011357722603296716418707668840027294769649302079325139950714749350318589430482335272428546290703696172301163889318481009886592214963122220271956774674682243811563964799234855770231595582127218640915880750340500671193365282120438615805700822756975533144387279439915219485725900547893334717540257169300434281605226338425690764480771498857073047560429768749639099474394990853154489626109323671961224733045910713159901870774586984390509578154379202781387815176511439608282645262413480846339529429964754987615017783525655074850527706855726641377662195068466551618948518909256036042215085366809815613981708466294024288975314241930825615526412744588447414749810701865747883752797917796809562878103132064245120139159649394997075723359368932951392354801857412490538863752607136472346163085372777950038063909420597132865080131587                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834779306688515 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834779306688515 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834779306688515 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834779306688515 |
     | 4 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834830846296068 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834830846296068 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834830846296068 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834830846296068 79221136326288413549090453617582214988603149380032775393045753873679347103737428810698791647263113706575282689198477135930652137291317188670030006057926509831856472550143054466006425134587034426949120010210832597783143689081004098970652114673282224426184172485773967049733965817226715156969648131835381010189470025770375559444559659305270898952170617343578663720139463438305206193729450577009951868047317341521679722886752217921827822705466305632297648679105292595306982225729633137305184703173136534319068330149229142960259210328722455601450057473003629441834416962669954405564521304502500726298911194393554191501157954017925309977598836623748100506311537547090223313424323313673085311409323919977212070953990949404412305207140907616619412378270976434206887105501661848469182736298770557698748104969475842500166345456724876246803841548685455561851856586967869889986216391448174596518073583228454703935275996041071738034755239225816281721293011288588359444337681021846829274952700086230836341401062887321604178406708278357480439226036171803414304571700770050264769130291420603534822495795966981715612394351588510056912232508637273573895372779156159436797233748213294951636931736322625278881149941049169682180025310119656903852664689348405476728233436921288688205034751242856813863451202798101231235894933014025474654357904163264189792879110990531247061528782494741231885291482973616690359904394443018958369073484128300703937149692838128916254439952768266768999800895221352172804608885628145520829329108509888656265795056847497582709463200002373315731960683089450281141672128908771066872542843950397795050900482861371828770525181267955544208230938560999841196913163882946371552828126583680248944964520944418180558701521838650855170095150234372062727397690674991347946365752214498420657007149585319909260780872426315558079608099072865828174703417406185318728278145026184310672633645641700732291542811057990742838365066341014265183949971790930431087121056345347741501667746148234688653065189269356885872908647581204650438736957716528711548574555583977239301969823515430537595181395319473570033411789209713074292228145962019286962544117035974563318921268241513986555088394502711032433789248734183877010959345104750102614262227563661010217640141350231316347211768763385670337883433049195056061300162041862964241528184097908283230852906666992480893473206747006312106694438401261591124362380788902882710265313013071263115504159140550179707220633782158597940373880726872858838789886163551228708805088540541574505134133745949431125107024728689987177439066224173647204385151471810845156172459609697201263898819372465925856032821983943945509201296896112993390414319772317613998628115011584901662481020736975231857679558573639533120123760882987807897148264001476729480741158503008405824181375825684426593602078107066384305742314153383784825815001170364503279303283157714730965700730790958163526085614077255893030881612578737162635171062435305862363661501175783671862584712802832632731639923317926092501167046294294878922434436385815597766578254085927198853219424480746368612964091254086956730350365974846418411767133289280026522101904776721397535481072023153960396155426365282526318432948840966649466716318812335304612541684202901596339076117983534399558629308180937552570931412127563964839611720473046765641026358839977096301838517860717992220124429055320994261412222457829626748188314831526678529121257451724121669436757611557692716596947663821034873517375372433749628434475153359120061495211777091719559441963916844642691242108239222713715540944215042751815205832903182816602051553000809853471087600226541940973229542173962641860015572714026730877762563780111880467244618055586935195897209646109126685288690235443479134420307287200865787784854857681194140932834097813623138157320433948668365280904196167520730495552269155400544459597418276177569668057444229387270850059959177577695113400939572251098823419194625556857107173746511343007800181920881221537624681494893301655822089723344553388000429323171176866004751029713971505534118999127107434111180853160547174861752751626348577776330731649967976997705926985766161797485058129327581956292771787829660210103007587578438303364646280346294247633981629844834860981910926589933525586410278385574288166108654586815838726812632990143066979317344762104354343375257570333883689617990419862704229988727473561686512974943917017701629021694931065627383970151448161079270422835544949285326099262830853904796892448341901343021226214704238492700377380756779821477303617108015181033663888382907694701687086758887917099855028808021759693299993928761037883200478548527383654940830627162960534839519753768771304564445702228660676511638525909100219792667017787855759149034626623398581454820469088953474304671180584117170375107299218857538863644099680063025446314779087962590928803576169825639877210091913953351078907222584306551857008399547716236951520432306368855405563331758063509346439969963192969308936226062923426688246041671272845075445462096707328610949341325449158353742604022908568946203933963643988238016251082863396042138900397422551647696827175988389556639458939949446524753736368453580244135105014317368938795421424241169688445192369547807720902472510058532210500190676908416490365999594117212594539752865691344940629371386945400149172429767490208830567907361799732482813964175917940399926984637762837734833459842745195607883737248217715147010664746624865860107174027680587247982043006696208521522681495053640549260909058244066831466386395550275703967451187984628361840304549620598007584604056652075292109056084955460757631045962710468974190271314358635494727254653928324003353839691189913153372830283101267409306943828090830937214893815925580078330686328742776609556460072981273554977224301651716046982335341896599200489741066102393484018972841466743047289295775671416546171942449273730018102329884754306147198475343597045689433842671468209541017943478180739831881650778966557553896529865161244407229829547727716931459459359559840553017703654746156616071691286614296466768069668800344909496623755249308151433068017415932042402097203261108808555885215825105468494713684598721648229183118676788358693974111182614492214872927357569277835129060640219341798931965723310239741977694394948416720292490078649040773942984422921245511852420706674819914354346020104887798142515274317061947997836595134419034230582330000240717127925526964112060319439249076892237808670839725453914016230218699443944340117528267723797972780319883977386476469029456738893211705543189528568137121573530047359055999267493785987462058075025437911796049705063581773663851013087176643772751648150048981936401280117985710232762186707399038083284214490009351252797025675234031663328726764953673595105495179812315052867907929540377789168697586451635338020604541532555456767223921372800748040195290633117401248117419768580554561920679552566002835202485597492704090494964420701053820178654505444932328959627731270218760735536157010176515686945610256645425466090751077063124240264202269417785796090050755625809976411130855080982514771006405019239084453063860469309363801560732448786594182631965426855620770324661738005715385915570566785767487246135064276153153759997114083896415651122260662526196811934588460728906851527212560414251230489996405218070314736073129676329566820684536684171651336809291777117985968335713633891342587678051190608132314213884936083558677694435789223952611566992819476705878074764002787217694166299949376281231412882322206987374652542436733768892535513131102546959338123452241057528223073307768102485716978811877380836416402793916906204056848362602583858587799671063183493736976342561580071402353708559999242811554741824392329109504518229810589936161848694495394989078505170054301833167574488999685417558644273661508773537637981961957984792817571894810151022150547618198149075642735541126296201993828633364656909410149851951595803219323557352758303156050734384212094939255739820941934884266839134997336768543139675562698313949059103432622004005640347414656309167438176447636201516809822354302880413412717674579911221440622845685228474456155384906707252143377125314150837386631396514527318983337718901048928329329231053825850914024463262687129801484678479889043123413018639057435163125340160776426866124073417851687642326386507952253164044084747674005103217002559290300274648989716183889269044878295897830654589625180490130933627186869004247858920369351374170799600935138980545576370920442418871673724104025062350731987187660226373777528736838440566539761446697010514416914532606833807691987940485899225589523055865241744841283099576179939918576916875342973064243096858476793192049859899782186145677894090980647849547300727225421836011349406545236904075431271994844586009146218199710862892803636591601154696477512478292275250777590018345242890569038980311434424392948124073348055473490447237830845622797278516698144529504116448931061113891647057058620794373490463398953658158965702707490244380813828952161569509352548837163937935673984287577196500520617263106739238470925651467642538521375527085306835125123774804515658137649320313723193127826012386401988540383848535460459896965806571434697853358345154066559897963713778228705544983566005922071338326667706340091344249958769578166738866210481521699795932404287255558904977976553252812624111989996041730416891581462709176170910391913688403238592984353993392194681230587082627245280421081139740208036525485792274576334655807266441163068245269699020838386092391268202393889974078313116767447506288402182229275003848091961720669177729636122915830876787153522240521453987784507244007826382298026467470463760967573853675134096385557848831271408652154371624111252499564372062150013955444434938386217378817598976633983150647821783131416621121040672827078193257165938909879204554066753420462499499405101209977169314936445394229389280748698062250201575237958736378969913685357721863832618943594508285694442728244356832442223934683630878786303868018175473362791145301632462352907096465592202879056332552115896543904826458212794417852487896113461318099376542617151785504301013763328021128755408720002853394970938327753434639306842271812841755581902745089096463501675354456031688981286865035104285413603994217165612389712909013969609477704477506170772469818464069352103014065264333924134562051844813124541073046723070347119399410312952443056168721141213692318735187212233869999412090357927948074701612217345505917874602273747508370221792468116380157816878721457089531667429136398326548819843923947304998512012573939192793234531264466083077405176334012847803089716426599491496652820497485082574101723974963408694125118272323793008062527724873911153326201747267833452774456406795062351090513105042806073092505786551457899197320680371474721629647461730422734615204643671590588307878664275592110292172646226942712157378821151624838887245133738001947693269115066052843625721408775448640352503509790579095189312622623321466072695598269282593177791900689295938594763884965047071647685325260924163058904294944512565779865646541003518594721063554176484063271126931281907769811005119934086038555571583256205792782207581716734498446546377038765658976788163564930990836722839048120124792774021847980241330282140141081159231276091031444164036909723689754102461665528840180400281884753831537589798135091613008166254015036399815055176173830185614387160202432178643424571854610953254094277479479117229265202703571750059139011332050699993405300281724025708414354956312228408267788456948967536773713229101477685287565442889281738677462580577411068739257265204333230790200539561307660422459489675927671128999491676432064011328488280950243405047919512157820694164084516250461093360342221926055322924962653770185518122147267660965415708275668657777195201587990470641793863170183707555775721656719612363613836047130121873295368585424000171831658683501977879920010645046409734633101253276012390829754950668822031729816484926553816610789545632633859011147345352421321219790964843207703583555455036461780317941150168036527728374634906285406117381587590300502061449391010300472124333307338687172841770018687944078122500131543842112211194564790507171968870130657510398345019686113082377616175708199109264911305901556207782909138358612778720892664602028876161792856130874663430521635141580477742603741854159578966026101373866946261770037067559392117859629358279935673149964030186825339555633755559433113949510892035999693645055125333587333337276913205531112520112130493511472005709625746785021588601518810424112148755414736396076977724019012336685259142041755489733208353173921591876764475501581939072986349004627342224114333330293138545073462695098914545130290395025246123327623413771256288557348071336705713166530877934802194427466789780638577099972618682079243217426054474662924263645082137520283379814204213903983691761288611476697223765394340885328077806544110108572108815733205185617549019523465476569603734747564164033541947848179213889474801094252335492542339883501798393579730030172242159882143935627470616353229600791486121877057240468042972463121337618139540178072201946975764957823555666964225124272351462421378255304591216333215762471934040103027780217929039800568777077864486946798303760753304045696529397380864725517147943941170756684649038396902309919299766758017664434744226144320263224251368711000986658177483450365496135945426364231939953858462494348962948855972451388306121917790927472674277821279148202422729981050029700237351555314554521437072111141119532802075631491753391636982546241966242023847447969328303277591390722624098915413666778115546400952554512575931772383654651523187865223135652643300783678650163274080016845668214171919659433809794837435065130045360895122871628185756149402605015575909990278157825227079270482531345464428601654531350805194534809068297845075699733693396334010798752603505590318203368599232119087338459788796456591141826485366765902425980142685243667719450413452546782307234790117274838933867557842714963876722366108896178169337369948280310204398951904626651297201725593125874941863423738839875570230988331452036534521542356962231711630486895711899792932347105557973252593025545948051194425527819835985070546451415270542876071492400495562463481630628498714990266598148242821880212166131479962192104431699977824735427954211377871622078591954440102941539714083804366347019718664856513583278746260347643935522749872865668344044416159694047460386038151061452642309382230941018515496060301244190676195384321846812141334067127554035271242117279150269241818428467008844087811750519845962310193623290155066222390084027733005646300989713994077078696054041743717085070817820098029624430074444306351379904638634153312194642992682444481394274915353136987548028924513034039504687410449238362220526022093336386579567656130716088311380350015860788608320174814661641125855934829100054894559652990081164499737468540743735277908789854179022789860777725356491913233819035169654825373463063666263977460602852471752273903948722057556786323363849703052572822308066663069053713423204836321852869788382910928431066746937756113710200499344353837567524690788763094345892416932133113060961225345368076160464877077861498197815884350672309871103290419997440151367107308088763524715304686801024012226843585693486694200984580382001585770434747661957463492511215062045224061800170436295843299127286449050469782254708466769098996025007749354495703035921265233810789895017148420563210335910095558773227634563993040729933768635724359895283936554180016908799340257801748828444572958077013140781545032030102041974420800633071989736116022527719824164625938593748760369859486106313420518550157685720556635495708063960411561850915032433009262928324931840416996531463891994005904304832967382480928663115015710718064394028463105134597657853957843237176304682795688346098859132488111474096705302090843675153138778034272814896984881961086307107201866725183652540744598370059578025133257653814967253167934734683989801441237382935276915971896412886056533582540532692329529396352167989334401002476108509960142584626268667255920545161551230872929798038236802973006576280273644206289421721908465777989007084312113534232358158526794374117128374622062946696372425204306825509425037359307746280495837561103656803869165121396563626326437854075477176148993833788886273362771419202732976725831436830726880924355330714199843395640831978128936762259776639439786939016835206146864905176045843001686359404728627803915480651343235971856729702285087091698559359293499788478005579771070545826781890658358543625070958825538778596931845270217515349378205570642662081161604372942443542429207344709742964667343469410526048782054999171464096426615832971458492792736343511652131266502734295853346405343555509279433857220111260274822923995163217334743664619306350677612591620076374954933659476520560373731719810957855965767866871792654858495301457305292659245704871347263582852074888423872965564372870403246155606081597464173687788760570565643858983460433103837902850917359478597180301605860076408927569818089024390068816072233310090564343520451678635594095766235678594760205066101096162903930765451316217872000568658716369615677536291936601540258260864396361896361381360990261701174984081386722069624019191782899456496605784382663699316413085879825305052488605892851832525877574670898181820667667977036182027841546167246945089072937374230045519162340388560539523266265262501649014537347802892939894599360015452936407555508785196500073224153884571357989174116652075264436694628692115709439549718085445537280091488680358759254217815155626507875085664581539108291685515055706456983291208422783106965861883724261703004134204080860922061366467342857912438771856159000210173102435518947912465831538848665628478255765871606811218463573566705492637008566032672146527130501310293841740688983761087256199371244262134765167676188526525625304849143614344786832031994502913261624189568698705621337281016912689199271899257039655107299989687789031097198571969008420622014744382498490753195705513479856277988071174434326597491550398305043427684298550897570392685804917308165960308113744909042365984281138064132738310192627286987273393101050265975160551291579750717309795775057752963375201089190454452591532699082922354102413730598665743214233950245474638588156413311802728515821901495898401670512089647644494163191694643834316905062264329963715521030747290625225835103035509536655884016808934200995512158279716332096053731026677232310622092905104661169208160355958405637032947000416121148237818434458580543592546947397525315530796137184001744297873952306394007516609841092122945595493224294352387574502233904997757426183071526430751609195099892718078281358895038500319682978997375162046853631354227598961783956351396155942736356232049107881342818947320780548915846049325442799431823704359115455173443117532209041648295393337941530899075498790276366347055487305948931868075362621487707563803587952163455854729130722926681692227800270108320970831713228847573288191172319450192079819321268342357289498852368545646250526798345617287498639567193798880104481329175604319345315806387328555929454356480554133831633143082984155095142787983811097112921827040136834515536421276179598586720713823916248791058079739446660498000641589766082881098040727175751562295159077312769393637108222587426169956899078079763629907615162922200533441151122300073720818293720543797998081019766388290145448016759261631039463230647425722075410876047147980722244470006730312115044311166872707530773069870576625801556252480714543708643845047746952847961817106323148258001287960190446825560466248063060999581859139252475298417485943544498260319254575107506290674155404568810743731908228792214841880147191717278229884694307437100195513701900502947879881937618774965194538383254284257932611515313977641318410986894182520480512229358648122398932224794511937609110845964655935732764815777590207012131649154634061470000514578786868204892347737657621027114463340038354199461207834830846296068 |

o2 : MutableMatrix

See also

Ways to use columnPermute :