#
# a(n,y=(n-1)!)=((n*y)*((n-2)*y-1))\2;
# for(u=1,60,print(u," ",a(u)));
#
1 -1
2 -1
3 3
4 132
5 4260
6 172440
7 9069480
8 609618240
9 51209444160
10 5267273961600
11 651825357321600
12 95601055094899200
13 16405141092269529600
14 3257166195621552614400
15 741005309513165913216000
16 191521372305099874093056000
17 55814799928917691355645952000
18 18217950696798789305484251136000
19 6619947834449261166289062211584000
20 2663555481625467457221397756231680000
21 1180842930187290573215234145989345280000
22 574262561838450784038638192361103196160000
23 305105699104768901560014136386418807111680000
24 176438267139443501930712482429242395434680320000
25 110674913023832742120174380363373024532267008000000
26 75066462746599599003248715218182857292569182208000000
27 54892350883450956771125623145305220144397223919616000000
28 43158561958604480251729809945892964472373479005749248000000
29 36392627399247870193804782817576330623847351728286728192000000
30 32834237164654745108188315164306056509051769373762201845760000000
31 31626406297526374127422816427904921638007129604138315937218560000000
32 32455236255668444621796655754981054706466697091313504228390993920000000
33 35415153802185406771304510759835327034918985687658542625495302799360000000
34 41017602648827898216674746913584760710098002310886756019683480295178240000000
35 50336289250608486342775540978014798534099378637193854933738706130331238400000000
36 65345655499880834997712247742368302097000987241119172824717315403155924582400000000
37 89600425276601309635098382051447360110652778304753551730524548111488609209548800000000
38 129577575022870053956861134454744559410308610452959234328087185816451207789962854400000000
39 197368243022334903851958984630318421408468398876392107799071706881329958883008551321600000000
40 316215930982811164874165638077980433002540721242757376823664240459187678509944342052864000000000
41 532241340675279002772411426617569170916908013966111031431425854657341087755755487624167424000000000
42 940020090915723531050351258087645243404016000050944937240868565362985587442890685104215031808000000000
43 1740118191298641614503857731408944492327344218494307990804339752206585045586558832237465246367744000000000
44 3372603706179396518413037823626350369226831243376382744565871190735368581975368030861377110840180736000000000
45 6836749512955090942325858102465415962761247906215838737690210178089963358076160917405262705987808133120000000000
46 14481189433487201930861375720291862462518475797631130051957061222842136530267599003838706375004719174123520000000000
47 32019884545090224451215982814254438613145966144353014608071919811680960827198318863073598912725407401183805440000000000
48 73842123078917402947764218500712636033729684057697298754828548677925735338583441023717387677432670076856822661120000000000
49 177452253339909682422992342824842992124187265097262830294647125156610483589870058007922942900989316124389984310394880000000000
50 444008191335603801126465947153224167527753667562512954098946850073822027343476319510537638224382758922840299215519744000000000000
51 1155808823070493644807331668683236661095683765873666533638821019137228248734698171695645703310755393414497298139991506944000000000000
52 3127760202839744026560248556477493495128319741935677191030768717095863853679025365040744528273369348517651862447279558361088000000000000
53 8792509261406861227944045922085011514025122192950220865250414556002636028817233026038520792637697235183826446308169816593137664000000000000
54 25657576437639504223285190006046661834574015396933797451961327370245816011152873317473017783312688865172572591757365650096029433856000000000000
55 77668444366323737688217726131765481526544149300602866479100625795199883002961932707563565485619558559572518843824577005155281618862080000000000000
56 243732371075603095326497588872362922405562696446722051939698416646370651737540001664818218039573029367055550439539357541426615770656276480000000000000
57 792401019741349618805924383378371012176307166447898582195063963452533918872293331879377140518125662710429472936217683929065694698927407759360000000000000
58 2667308276196990964131883938929783558368596428499966398423006580686333083715356093568517881490975040417367523566566958226137701390137789650042880000000000000
59 9290520509023712062817508746857321467750503710082722247821448671235571666268130229196095064327209280079933045973901135035996764714818129589352529920000000000000
60 33465432823030676504170015717627109539623393364108500560047365634703290781020570397519351856053535563700980592503016695868180104106013567775361151795200000000000000