TestHelper.cs 59 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Threading;
  4. using System.Linq;
  5. using System.Data;
  6. using MySystem;
  7. using MySystem.PxcModels;
  8. using Library;
  9. public class TestHelper
  10. {
  11. public readonly static TestHelper Instance = new TestHelper();
  12. private TestHelper()
  13. {
  14. }
  15. public void Start()
  16. {
  17. Thread th = new Thread(leaderflag);
  18. th.IsBackground = true;
  19. th.Start();
  20. }
  21. public void StartEverDay()
  22. {
  23. OtherMySqlConn.connstr = Library.ConfigurationManager.AppSettings["Pxc1SqlConnStr"].ToString();
  24. DateTime end = DateTime.Parse("2022-04-19 00:00:00");
  25. DateTime check = DateTime.Parse("2022-03-11");
  26. while (check <= end)
  27. {
  28. StatMerchantTrade(check.ToString("yyyy-MM-dd"));
  29. check = check.AddDays(1);
  30. }
  31. }
  32. private void StatMerchantTrade(string date)
  33. {
  34. function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "执行商户交易额日志");
  35. WebCMSEntities db = new WebCMSEntities();
  36. try
  37. {
  38. DataTable selfdt = OtherMySqlConn.dtable("select MerchantId,BrandId,DATE_FORMAT(CreateDate,'%Y-%m-%d') as TradeDate,sum(TradeAmount) as TradeAmount from TradeRecord group by MerchantId,BrandId,DATE_FORMAT(CreateDate,'%Y-%m-%d') order by MerchantId,BrandId,DATE_FORMAT(CreateDate,'%Y-%m-%d')");
  39. foreach (DataRow selfDr in selfdt.Rows)
  40. {
  41. int BrandId = int.Parse(selfDr["BrandId"].ToString());
  42. int MerchantId = int.Parse(selfDr["MerchantId"].ToString());
  43. string TradeDate = selfDr["TradeDate"].ToString();
  44. TradeDate = TradeDate.Replace("-", "");
  45. string TradeMonth = TradeDate.Substring(0, 6);
  46. decimal TradeAmount = decimal.Parse(selfDr["TradeAmount"].ToString());
  47. PosMerchantTradeSummay merStat = db.PosMerchantTradeSummay.FirstOrDefault(m => m.MerchantId == MerchantId && m.TradeMonth == TradeMonth && m.TradeDate == TradeDate && m.BrandId == BrandId);
  48. if (merStat == null)
  49. {
  50. merStat = db.PosMerchantTradeSummay.Add(new PosMerchantTradeSummay()
  51. {
  52. MerchantId = MerchantId,
  53. TradeMonth = TradeMonth,
  54. TradeDate = TradeDate,
  55. BrandId = BrandId,
  56. }).Entity;
  57. db.SaveChanges();
  58. }
  59. merStat.TradeAmount += TradeAmount;
  60. db.SaveChanges();
  61. }
  62. }
  63. catch (Exception ex)
  64. {
  65. function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计商户的交易额");
  66. }
  67. db.Dispose();
  68. function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "\n\n", "执行商户交易额日志");
  69. }
  70. private void setLdFee()
  71. {
  72. // DataTable dt = CustomerSqlConn.dtable("select KqMerNo,BrandId from PosMerchantInfo where Id in (select BindMerchantId from PosMachinesTwo where BrandId in (10,11) and DownFeeFlag=1 and BindingTime<'2023-08-06 00:00:00')", "server=rm-2vcs4j67tla603c9d5o.mysql.cn-chengdu.rds.aliyuncs.com;port=3306;user=KxsProfitServer;password=FrW8ZfxlcaVdm1r0;database=KxsProfitServer;charset=utf8;");
  73. // foreach(DataRow dr in dt.Rows)
  74. // {
  75. // function.WriteLog(dr["KqMerNo"].ToString(), "临时设置联动费率日志");
  76. // string result = SetDepositPostService.Instance.LDFeeRate(dr["KqMerNo"].ToString(), "0.0063", int.Parse(dr["BrandId"].ToString()), 0);
  77. // function.WriteLog(result + "\n\n", "临时设置联动费率日志");
  78. // }
  79. // function.WriteLog("000006026200825805", "临时设置费率日志");
  80. // string result = SetDepositPostService.Instance.SetFeeForSft("40585414", "0.6300", "0");
  81. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  82. // function.WriteLog("0000320226626450030145", "临时设置费率日志");
  83. // result = SetDepositPostService.Instance.LDFeeRate("110000004265069", "0.0063", 1, 3);
  84. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  85. // function.WriteLog("0000320226624650409066", "临时设置费率日志");
  86. // result = SetDepositPostService.Instance.LDFeeRate("110000004842951", "0.0063", 1, 3);
  87. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  88. // function.WriteLog("0000320226636450184893", "临时设置费率日志");
  89. // result = SetDepositPostService.Instance.LDFeeRate("110000004744970", "0.0063", 3, 0);
  90. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  91. // function.WriteLog("0000320226636450180288", "临时设置费率日志");
  92. // result = SetDepositPostService.Instance.LDFeeRate("110000004760326", "0.0063", 3, 0);
  93. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  94. // function.WriteLog("00003102702303069483466", "临时设置费率日志");
  95. // string result = SetDepositPostService.Instance.SetFee("M7000615224RVXMbk7", "00003102702303069483466", 0.63M, 300);
  96. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  97. // function.WriteLog("00000302JBNL01471793", "临时设置费率日志");
  98. // result = SetDepositPostService.Instance.SetFee("M900065131JVMYUBl5", "00000302JBNL01471793", 0.63M, 0);
  99. // function.WriteLog(result + "\n\n", "临时设置费率日志");
  100. // return;
  101. bool op = true;
  102. while(op)
  103. {
  104. int page = int.Parse(function.CheckInt(function.ReadInstance("/TmpSetLdFee/page.txt")));
  105. if(page < 1) page = 50;
  106. int skip = (page - 1) * 100;
  107. DataTable dt = CustomerSqlConn.dtable("select KqMerNo,BrandId from PosMerchantInfo where Id in (select BindMerchantId from PosMachinesTwo where BrandId in (10,11) and DownFeeFlag=0 and BindingTime<'2023-08-06 00:00:00') limit " + skip + ",100", "server=rm-2vcs4j67tla603c9d5o.mysql.cn-chengdu.rds.aliyuncs.com;port=3306;user=KxsProfitServer;password=FrW8ZfxlcaVdm1r0;database=KxsProfitServer;charset=utf8;");
  108. if(dt.Rows.Count > 0)
  109. {
  110. foreach(DataRow dr in dt.Rows)
  111. {
  112. function.WriteLog(dr["KqMerNo"].ToString(), "临时设置联动费率日志");
  113. string result = SetDepositPostService.Instance.LDFeeRate(dr["KqMerNo"].ToString(), "0.0063", int.Parse(dr["BrandId"].ToString()), 3);
  114. function.WriteLog(result + "\n\n", "临时设置联动费率日志");
  115. }
  116. page += 1;
  117. function.WritePage("/TmpSetLdFee/", "page.txt", page.ToString());
  118. }
  119. else
  120. {
  121. op = false;
  122. function.WriteLog("执行结束\n\n", "临时设置联动费率日志");
  123. }
  124. dt.Dispose();
  125. dt.Clear();
  126. }
  127. }
  128. public void StartJk()
  129. {
  130. Thread th = new Thread(setJkFee);
  131. th.IsBackground = true;
  132. th.Start();
  133. }
  134. private void setJkFee()
  135. {
  136. bool op = true;
  137. while(op)
  138. {
  139. int page = int.Parse(function.CheckInt(function.ReadInstance("/TmpSetJkFee/page.txt")));
  140. if(page < 1) page = 1;
  141. int skip = (page - 1) * 100;
  142. DataTable dt = CustomerSqlConn.dtable("select KqMerNo,KqSnNo from PosMerchantInfo where Id in (select BindMerchantId from PosMachinesTwo where BrandId in (1,3) and (DownFeeFlag=1 or UpFeeFlag=0) and BindingState=1 and BindingTime<'" + DateTime.Now.AddDays(-90).ToString("yyyy-MM-dd HH:mm:ss") + "') limit " + skip + ",100", "server=rm-2vcs4j67tla603c9d5o.mysql.cn-chengdu.rds.aliyuncs.com;port=3306;user=KxsProfitServer;password=FrW8ZfxlcaVdm1r0;database=KxsProfitServer;charset=utf8;");
  143. if(dt.Rows.Count > 0)
  144. {
  145. foreach(DataRow dr in dt.Rows)
  146. {
  147. function.WriteLog(dr["KqMerNo"].ToString(), "临时设置金控费率日志");
  148. function.WriteLog(dr["KqSnNo"].ToString(), "临时设置金控费率日志");
  149. string merNo = dr["KqMerNo"].ToString();
  150. string sn = dr["KqSnNo"].ToString();
  151. string result = SetDepositPostService.Instance.SetFee(merNo, sn, 0.63M, 0);
  152. function.WriteLog(result + "\n\n", "临时设置金控费率日志");
  153. }
  154. page += 1;
  155. function.WritePage("/TmpSetJkFee/", "page.txt", page.ToString());
  156. }
  157. else
  158. {
  159. op = false;
  160. function.WriteLog("执行结束\n\n", "临时设置金控费率日志");
  161. }
  162. dt.Dispose();
  163. dt.Clear();
  164. }
  165. }
  166. public void StartSft()
  167. {
  168. Thread th = new Thread(setSftFee);
  169. th.IsBackground = true;
  170. th.Start();
  171. }
  172. private void setSftFee()
  173. {
  174. bool op = true;
  175. while(op)
  176. {
  177. int page = int.Parse(function.CheckInt(function.ReadInstance("/TmpSetSftFee/page.txt")));
  178. if(page < 1) page = 1;
  179. int skip = (page - 1) * 100;
  180. DataTable dt = CustomerSqlConn.dtable("select mer.KqMerNo,DownFeeFlag,UpFeeFlag from (select BindMerchantId,DownFeeFlag,UpFeeFlag from PosMachinesTwo where BrandId=7 and BindingState=1 and BindingTime<'" + DateTime.Now.AddDays(-90).ToString("yyyy-MM-dd HH:mm:ss") + "') tb left join PosMerchantInfo mer on tb.BindMerchantId=mer.Id limit " + skip + ",100", "server=rm-2vcs4j67tla603c9d5o.mysql.cn-chengdu.rds.aliyuncs.com;port=3306;user=KxsProfitServer;password=FrW8ZfxlcaVdm1r0;database=KxsProfitServer;charset=utf8;");
  181. if(dt.Rows.Count > 0)
  182. {
  183. foreach(DataRow dr in dt.Rows)
  184. {
  185. function.WriteLog(dr["KqMerNo"].ToString(), "临时设置盛付通费率日志");
  186. string merNo = dr["KqMerNo"].ToString();
  187. string DownFeeFlag = dr["DownFeeFlag"].ToString();
  188. string UpFeeFlag = dr["UpFeeFlag"].ToString();
  189. string addRate = "0";
  190. string Fee = "0.6300";
  191. if(UpFeeFlag == "1" && DownFeeFlag == "0")
  192. {
  193. addRate = "3";
  194. }
  195. string result = SetDepositPostService.Instance.SetFeeForSft(merNo, Fee, addRate);
  196. function.WriteLog(result + "\n\n", "临时设置盛付通费率日志");
  197. }
  198. page += 1;
  199. function.WritePage("/TmpSetSftFee/", "page.txt", page.ToString());
  200. }
  201. else
  202. {
  203. op = false;
  204. function.WriteLog("执行结束\n\n", "临时设置盛付通费率日志");
  205. }
  206. dt.Dispose();
  207. dt.Clear();
  208. }
  209. }
  210. List<string> PosSns = new List<string>();
  211. public void leaderflag()
  212. {
  213. WebCMSEntities db = new WebCMSEntities();
  214. List<int> ids = new List<int>();
  215. // List<PosCouponRecord> records = db.PosCouponRecord.Where(m => m.FromUserId == 597).ToList();
  216. // foreach(PosCouponRecord record in records)
  217. // {
  218. // ids.Add(record.PosCouponId);
  219. // }
  220. ids.Add(37335);
  221. ids.Add(37336);
  222. ids.Add(37730);
  223. ids.Add(37796);
  224. ids.Add(37797);
  225. ids.Add(37805);
  226. ids.Add(38404);
  227. ids.Add(38443);
  228. ids.Add(38444);
  229. ids.Add(38472);
  230. ids.Add(38481);
  231. ids.Add(125983);
  232. ids.Add(125984);
  233. ids.Add(125985);
  234. ids.Add(125986);
  235. ids.Add(125987);
  236. ids.Add(125988);
  237. ids.Add(125989);
  238. ids.Add(125990);
  239. ids.Add(125991);
  240. ids.Add(125992);
  241. ids.Add(125993);
  242. ids.Add(125995);
  243. ids.Add(131167);
  244. ids.Add(131168);
  245. ids.Add(131169);
  246. ids.Add(132794);
  247. ids.Add(134136);
  248. ids.Add(134137);
  249. ids.Add(134138);
  250. ids.Add(136564);
  251. ids.Add(136565);
  252. ids.Add(137922);
  253. ids.Add(138625);
  254. ids.Add(138626);
  255. ids.Add(138627);
  256. ids.Add(138628);
  257. ids.Add(138629);
  258. ids.Add(138630);
  259. ids.Add(139315);
  260. ids.Add(139316);
  261. ids.Add(139317);
  262. ids.Add(139768);
  263. ids.Add(139769);
  264. ids.Add(139770);
  265. ids.Add(139774);
  266. ids.Add(139783);
  267. ids.Add(139784);
  268. ids.Add(139785);
  269. ids.Add(139786);
  270. ids.Add(139787);
  271. ids.Add(139788);
  272. ids.Add(139789);
  273. ids.Add(139790);
  274. ids.Add(139791);
  275. ids.Add(139792);
  276. ids.Add(139793);
  277. ids.Add(139794);
  278. ids.Add(139795);
  279. ids.Add(139801);
  280. ids.Add(140749);
  281. ids.Add(140750);
  282. ids.Add(140751);
  283. ids.Add(141457);
  284. ids.Add(141458);
  285. ids.Add(141459);
  286. ids.Add(141529);
  287. ids.Add(141530);
  288. ids.Add(141531);
  289. ids.Add(141532);
  290. ids.Add(141533);
  291. ids.Add(141534);
  292. ids.Add(141535);
  293. ids.Add(141536);
  294. ids.Add(141537);
  295. ids.Add(141538);
  296. ids.Add(141539);
  297. ids.Add(141540);
  298. ids.Add(141541);
  299. ids.Add(141542);
  300. ids.Add(141543);
  301. ids.Add(141730);
  302. ids.Add(141731);
  303. ids.Add(141732);
  304. ids.Add(142382);
  305. ids.Add(143671);
  306. ids.Add(143672);
  307. ids.Add(143673);
  308. ids.Add(144289);
  309. ids.Add(144290);
  310. ids.Add(144291);
  311. ids.Add(144916);
  312. ids.Add(144917);
  313. ids.Add(144918);
  314. ids.Add(144976);
  315. ids.Add(144977);
  316. ids.Add(144978);
  317. ids.Add(146152);
  318. ids.Add(146153);
  319. ids.Add(146154);
  320. ids.Add(146386);
  321. ids.Add(146387);
  322. ids.Add(146388);
  323. ids.Add(148561);
  324. ids.Add(148562);
  325. ids.Add(148563);
  326. ids.Add(148714);
  327. ids.Add(148715);
  328. ids.Add(148716);
  329. ids.Add(148717);
  330. ids.Add(148718);
  331. ids.Add(148719);
  332. ids.Add(149855);
  333. ids.Add(149856);
  334. ids.Add(149857);
  335. ids.Add(149900);
  336. ids.Add(149901);
  337. ids.Add(149902);
  338. ids.Add(150428);
  339. ids.Add(150429);
  340. ids.Add(150430);
  341. ids.Add(150431);
  342. ids.Add(150432);
  343. ids.Add(150433);
  344. ids.Add(150434);
  345. ids.Add(150435);
  346. ids.Add(150436);
  347. ids.Add(151631);
  348. ids.Add(151632);
  349. ids.Add(151637);
  350. ids.Add(151638);
  351. ids.Add(151639);
  352. ids.Add(151640);
  353. ids.Add(151641);
  354. ids.Add(151642);
  355. ids.Add(152045);
  356. ids.Add(152046);
  357. ids.Add(152207);
  358. ids.Add(152208);
  359. ids.Add(152212);
  360. ids.Add(152213);
  361. ids.Add(153455);
  362. ids.Add(153456);
  363. ids.Add(153457);
  364. ids.Add(154802);
  365. ids.Add(154803);
  366. ids.Add(154804);
  367. ids.Add(154805);
  368. ids.Add(154806);
  369. ids.Add(154807);
  370. ids.Add(154808);
  371. ids.Add(154809);
  372. ids.Add(154810);
  373. ids.Add(154811);
  374. ids.Add(154812);
  375. ids.Add(154813);
  376. ids.Add(154814);
  377. ids.Add(154815);
  378. ids.Add(154816);
  379. ids.Add(154820);
  380. ids.Add(154821);
  381. ids.Add(154822);
  382. ids.Add(155057);
  383. ids.Add(155058);
  384. ids.Add(155059);
  385. ids.Add(155060);
  386. ids.Add(155061);
  387. ids.Add(155062);
  388. ids.Add(155065);
  389. ids.Add(155235);
  390. ids.Add(155666);
  391. ids.Add(155667);
  392. ids.Add(155668);
  393. ids.Add(155696);
  394. ids.Add(155697);
  395. ids.Add(155698);
  396. ids.Add(155699);
  397. ids.Add(155700);
  398. ids.Add(155701);
  399. ids.Add(155702);
  400. ids.Add(155703);
  401. ids.Add(155704);
  402. ids.Add(155705);
  403. ids.Add(155706);
  404. ids.Add(155707);
  405. ids.Add(155708);
  406. ids.Add(155709);
  407. ids.Add(155710);
  408. ids.Add(155954);
  409. ids.Add(155955);
  410. ids.Add(155956);
  411. ids.Add(156430);
  412. ids.Add(156431);
  413. ids.Add(156432);
  414. ids.Add(156476);
  415. ids.Add(156477);
  416. ids.Add(156478);
  417. ids.Add(156479);
  418. ids.Add(156480);
  419. ids.Add(156481);
  420. ids.Add(156482);
  421. ids.Add(156483);
  422. ids.Add(156484);
  423. ids.Add(156485);
  424. ids.Add(156486);
  425. ids.Add(156487);
  426. ids.Add(156713);
  427. ids.Add(156714);
  428. ids.Add(156715);
  429. ids.Add(157229);
  430. ids.Add(157230);
  431. ids.Add(157231);
  432. ids.Add(157232);
  433. ids.Add(158021);
  434. ids.Add(158022);
  435. ids.Add(158023);
  436. ids.Add(158075);
  437. ids.Add(158076);
  438. ids.Add(158647);
  439. ids.Add(158987);
  440. ids.Add(158988);
  441. ids.Add(158989);
  442. ids.Add(159071);
  443. ids.Add(159072);
  444. ids.Add(159073);
  445. ids.Add(159074);
  446. ids.Add(159075);
  447. ids.Add(159076);
  448. ids.Add(159077);
  449. ids.Add(159078);
  450. ids.Add(159079);
  451. ids.Add(159080);
  452. ids.Add(159081);
  453. ids.Add(159082);
  454. ids.Add(159083);
  455. ids.Add(159084);
  456. ids.Add(159085);
  457. ids.Add(159923);
  458. ids.Add(159924);
  459. ids.Add(159925);
  460. ids.Add(160259);
  461. ids.Add(160260);
  462. ids.Add(160261);
  463. ids.Add(160262);
  464. ids.Add(160263);
  465. ids.Add(160264);
  466. ids.Add(160265);
  467. ids.Add(160266);
  468. ids.Add(160267);
  469. ids.Add(160268);
  470. ids.Add(160688);
  471. ids.Add(160689);
  472. ids.Add(160690);
  473. ids.Add(160691);
  474. ids.Add(160692);
  475. ids.Add(160715);
  476. ids.Add(160716);
  477. ids.Add(160717);
  478. ids.Add(160793);
  479. ids.Add(160794);
  480. ids.Add(160795);
  481. ids.Add(161255);
  482. ids.Add(161256);
  483. ids.Add(161257);
  484. ids.Add(161258);
  485. ids.Add(161259);
  486. ids.Add(161260);
  487. ids.Add(161261);
  488. ids.Add(162023);
  489. ids.Add(162024);
  490. ids.Add(162025);
  491. ids.Add(162026);
  492. ids.Add(162027);
  493. ids.Add(162028);
  494. ids.Add(162029);
  495. ids.Add(162030);
  496. ids.Add(162031);
  497. ids.Add(162032);
  498. ids.Add(162033);
  499. ids.Add(162034);
  500. ids.Add(162164);
  501. ids.Add(162165);
  502. ids.Add(162166);
  503. ids.Add(162314);
  504. ids.Add(162315);
  505. ids.Add(162316);
  506. ids.Add(162332);
  507. ids.Add(163588);
  508. ids.Add(163589);
  509. ids.Add(163590);
  510. ids.Add(163612);
  511. ids.Add(164017);
  512. ids.Add(164107);
  513. ids.Add(164108);
  514. ids.Add(164131);
  515. ids.Add(164132);
  516. ids.Add(164133);
  517. ids.Add(164410);
  518. ids.Add(164997);
  519. ids.Add(165027);
  520. ids.Add(165029);
  521. ids.Add(165484);
  522. ids.Add(165485);
  523. ids.Add(165798);
  524. ids.Add(165799);
  525. ids.Add(165800);
  526. ids.Add(165801);
  527. ids.Add(165802);
  528. ids.Add(165803);
  529. ids.Add(166770);
  530. ids.Add(166771);
  531. ids.Add(166772);
  532. ids.Add(166773);
  533. ids.Add(166774);
  534. ids.Add(166775);
  535. ids.Add(166776);
  536. ids.Add(167601);
  537. ids.Add(167602);
  538. ids.Add(167603);
  539. ids.Add(167604);
  540. ids.Add(167605);
  541. ids.Add(167606);
  542. ids.Add(167607);
  543. ids.Add(167608);
  544. ids.Add(167609);
  545. ids.Add(167610);
  546. ids.Add(167611);
  547. ids.Add(167612);
  548. ids.Add(167613);
  549. ids.Add(167614);
  550. ids.Add(167615);
  551. ids.Add(167841);
  552. ids.Add(169130);
  553. ids.Add(169134);
  554. ids.Add(169140);
  555. ids.Add(169593);
  556. ids.Add(169797);
  557. ids.Add(169798);
  558. ids.Add(169799);
  559. ids.Add(170466);
  560. ids.Add(170467);
  561. ids.Add(170468);
  562. ids.Add(171694);
  563. ids.Add(171695);
  564. ids.Add(172125);
  565. ids.Add(172257);
  566. ids.Add(172258);
  567. ids.Add(172506);
  568. ids.Add(172507);
  569. ids.Add(172508);
  570. ids.Add(172583);
  571. ids.Add(173112);
  572. ids.Add(173113);
  573. ids.Add(173114);
  574. ids.Add(173115);
  575. ids.Add(173116);
  576. ids.Add(173117);
  577. ids.Add(173118);
  578. ids.Add(173119);
  579. ids.Add(173120);
  580. ids.Add(173121);
  581. ids.Add(173122);
  582. ids.Add(173123);
  583. ids.Add(173529);
  584. ids.Add(173532);
  585. ids.Add(174410);
  586. ids.Add(174468);
  587. ids.Add(174469);
  588. ids.Add(174675);
  589. ids.Add(174676);
  590. ids.Add(175059);
  591. ids.Add(176004);
  592. ids.Add(176005);
  593. ids.Add(176006);
  594. ids.Add(176294);
  595. ids.Add(176610);
  596. ids.Add(176781);
  597. ids.Add(176782);
  598. ids.Add(176783);
  599. ids.Add(176784);
  600. ids.Add(176785);
  601. ids.Add(176786);
  602. ids.Add(176787);
  603. ids.Add(176788);
  604. ids.Add(176789);
  605. ids.Add(176811);
  606. ids.Add(176812);
  607. ids.Add(176813);
  608. ids.Add(176835);
  609. ids.Add(176949);
  610. ids.Add(177117);
  611. ids.Add(177129);
  612. ids.Add(177131);
  613. ids.Add(177192);
  614. ids.Add(177193);
  615. ids.Add(177194);
  616. ids.Add(177279);
  617. ids.Add(177285);
  618. ids.Add(177297);
  619. ids.Add(177435);
  620. ids.Add(177436);
  621. ids.Add(177437);
  622. ids.Add(177444);
  623. ids.Add(177445);
  624. ids.Add(177446);
  625. ids.Add(177462);
  626. ids.Add(177463);
  627. ids.Add(177464);
  628. ids.Add(177468);
  629. ids.Add(177469);
  630. ids.Add(177470);
  631. ids.Add(177472);
  632. ids.Add(177473);
  633. ids.Add(177534);
  634. ids.Add(177645);
  635. ids.Add(177657);
  636. ids.Add(177658);
  637. ids.Add(177659);
  638. ids.Add(177822);
  639. ids.Add(177823);
  640. ids.Add(177824);
  641. ids.Add(177834);
  642. ids.Add(177835);
  643. ids.Add(177836);
  644. ids.Add(177837);
  645. ids.Add(177840);
  646. ids.Add(177841);
  647. ids.Add(177842);
  648. ids.Add(177882);
  649. ids.Add(177883);
  650. ids.Add(177884);
  651. ids.Add(177915);
  652. ids.Add(177918);
  653. ids.Add(177919);
  654. ids.Add(177920);
  655. ids.Add(177969);
  656. ids.Add(178128);
  657. ids.Add(178221);
  658. ids.Add(178222);
  659. ids.Add(178290);
  660. ids.Add(178605);
  661. ids.Add(178635);
  662. ids.Add(178636);
  663. ids.Add(178637);
  664. ids.Add(178638);
  665. ids.Add(178639);
  666. ids.Add(178640);
  667. ids.Add(178788);
  668. ids.Add(178929);
  669. ids.Add(178930);
  670. ids.Add(178931);
  671. ids.Add(178938);
  672. ids.Add(178939);
  673. ids.Add(178940);
  674. ids.Add(178956);
  675. ids.Add(179236);
  676. ids.Add(179237);
  677. ids.Add(179292);
  678. ids.Add(179357);
  679. ids.Add(179382);
  680. ids.Add(179385);
  681. ids.Add(179386);
  682. ids.Add(179387);
  683. ids.Add(179406);
  684. ids.Add(179407);
  685. ids.Add(179439);
  686. ids.Add(179440);
  687. ids.Add(179441);
  688. ids.Add(179442);
  689. ids.Add(179443);
  690. ids.Add(179454);
  691. ids.Add(179640);
  692. ids.Add(179641);
  693. ids.Add(179642);
  694. ids.Add(179643);
  695. ids.Add(179790);
  696. ids.Add(179791);
  697. ids.Add(179792);
  698. ids.Add(179808);
  699. ids.Add(179809);
  700. ids.Add(179928);
  701. ids.Add(179929);
  702. ids.Add(179967);
  703. ids.Add(179968);
  704. ids.Add(179969);
  705. ids.Add(180045);
  706. ids.Add(180048);
  707. ids.Add(180054);
  708. ids.Add(180055);
  709. ids.Add(180057);
  710. ids.Add(180087);
  711. ids.Add(180264);
  712. ids.Add(180265);
  713. ids.Add(180266);
  714. ids.Add(180306);
  715. ids.Add(180307);
  716. ids.Add(180315);
  717. ids.Add(180366);
  718. ids.Add(180384);
  719. ids.Add(180385);
  720. ids.Add(180386);
  721. ids.Add(180387);
  722. ids.Add(180388);
  723. ids.Add(180389);
  724. ids.Add(180594);
  725. ids.Add(180595);
  726. ids.Add(180597);
  727. ids.Add(180598);
  728. ids.Add(180608);
  729. ids.Add(180639);
  730. ids.Add(180640);
  731. ids.Add(180641);
  732. ids.Add(180684);
  733. ids.Add(180685);
  734. ids.Add(180686);
  735. ids.Add(180711);
  736. ids.Add(180723);
  737. ids.Add(180724);
  738. ids.Add(180725);
  739. ids.Add(180726);
  740. ids.Add(180747);
  741. ids.Add(180748);
  742. ids.Add(180749);
  743. ids.Add(180876);
  744. ids.Add(180887);
  745. ids.Add(180924);
  746. ids.Add(180927);
  747. ids.Add(181240);
  748. ids.Add(181504);
  749. ids.Add(181549);
  750. ids.Add(181660);
  751. ids.Add(181661);
  752. ids.Add(181684);
  753. ids.Add(181685);
  754. ids.Add(181686);
  755. ids.Add(181789);
  756. ids.Add(181790);
  757. ids.Add(181791);
  758. ids.Add(182132);
  759. ids.Add(182188);
  760. ids.Add(182191);
  761. ids.Add(182578);
  762. ids.Add(182579);
  763. ids.Add(183012);
  764. ids.Add(183013);
  765. ids.Add(183014);
  766. ids.Add(183029);
  767. ids.Add(183030);
  768. ids.Add(183176);
  769. ids.Add(183177);
  770. ids.Add(183178);
  771. ids.Add(183239);
  772. ids.Add(183351);
  773. ids.Add(183362);
  774. ids.Add(183378);
  775. ids.Add(183379);
  776. ids.Add(183387);
  777. ids.Add(183388);
  778. ids.Add(183389);
  779. ids.Add(183408);
  780. ids.Add(183488);
  781. ids.Add(183546);
  782. ids.Add(183547);
  783. ids.Add(183548);
  784. ids.Add(183567);
  785. ids.Add(183733);
  786. ids.Add(183734);
  787. ids.Add(183735);
  788. ids.Add(183745);
  789. ids.Add(183746);
  790. ids.Add(183747);
  791. ids.Add(183777);
  792. ids.Add(183778);
  793. ids.Add(183779);
  794. ids.Add(183923);
  795. ids.Add(183924);
  796. ids.Add(183925);
  797. ids.Add(183926);
  798. ids.Add(183927);
  799. ids.Add(183928);
  800. ids.Add(183968);
  801. ids.Add(183969);
  802. ids.Add(184161);
  803. ids.Add(184180);
  804. ids.Add(184181);
  805. ids.Add(184182);
  806. ids.Add(184267);
  807. ids.Add(184268);
  808. ids.Add(184349);
  809. ids.Add(184350);
  810. ids.Add(184377);
  811. ids.Add(184378);
  812. ids.Add(184379);
  813. ids.Add(184380);
  814. ids.Add(184381);
  815. ids.Add(184382);
  816. ids.Add(184384);
  817. ids.Add(184396);
  818. ids.Add(184397);
  819. ids.Add(184398);
  820. ids.Add(184484);
  821. ids.Add(184485);
  822. ids.Add(184486);
  823. ids.Add(184487);
  824. ids.Add(184488);
  825. ids.Add(184489);
  826. ids.Add(184561);
  827. ids.Add(184562);
  828. ids.Add(184564);
  829. ids.Add(184565);
  830. ids.Add(184566);
  831. ids.Add(184567);
  832. ids.Add(184582);
  833. ids.Add(184609);
  834. ids.Add(184610);
  835. ids.Add(184611);
  836. ids.Add(184612);
  837. ids.Add(184621);
  838. ids.Add(184622);
  839. ids.Add(184623);
  840. ids.Add(184630);
  841. ids.Add(184631);
  842. ids.Add(184727);
  843. ids.Add(184728);
  844. ids.Add(184730);
  845. ids.Add(184731);
  846. ids.Add(184733);
  847. ids.Add(184734);
  848. ids.Add(184754);
  849. ids.Add(184777);
  850. ids.Add(184780);
  851. ids.Add(184781);
  852. ids.Add(184806);
  853. ids.Add(184812);
  854. ids.Add(184813);
  855. ids.Add(184879);
  856. ids.Add(184883);
  857. ids.Add(184884);
  858. ids.Add(184885);
  859. ids.Add(184901);
  860. ids.Add(184912);
  861. ids.Add(184913);
  862. ids.Add(184914);
  863. ids.Add(184988);
  864. ids.Add(185009);
  865. ids.Add(185023);
  866. ids.Add(185047);
  867. ids.Add(185048);
  868. ids.Add(185049);
  869. ids.Add(185055);
  870. ids.Add(185141);
  871. ids.Add(185142);
  872. ids.Add(185209);
  873. ids.Add(185210);
  874. ids.Add(185211);
  875. ids.Add(185269);
  876. ids.Add(185270);
  877. ids.Add(185271);
  878. ids.Add(185308);
  879. ids.Add(185309);
  880. ids.Add(185310);
  881. ids.Add(185362);
  882. ids.Add(185363);
  883. ids.Add(185364);
  884. ids.Add(185368);
  885. ids.Add(185369);
  886. ids.Add(185370);
  887. ids.Add(185374);
  888. ids.Add(185375);
  889. ids.Add(185376);
  890. ids.Add(185407);
  891. ids.Add(185408);
  892. ids.Add(185409);
  893. ids.Add(185520);
  894. ids.Add(185521);
  895. ids.Add(185600);
  896. ids.Add(185601);
  897. ids.Add(185602);
  898. ids.Add(185695);
  899. ids.Add(185761);
  900. ids.Add(185867);
  901. ids.Add(185912);
  902. ids.Add(185988);
  903. ids.Add(185989);
  904. ids.Add(185990);
  905. ids.Add(186030);
  906. ids.Add(186031);
  907. ids.Add(186072);
  908. ids.Add(186073);
  909. ids.Add(186090);
  910. ids.Add(186091);
  911. ids.Add(186092);
  912. ids.Add(186132);
  913. ids.Add(186133);
  914. ids.Add(186232);
  915. ids.Add(186262);
  916. ids.Add(186263);
  917. ids.Add(186268);
  918. ids.Add(186269);
  919. ids.Add(186292);
  920. ids.Add(186293);
  921. ids.Add(186469);
  922. ids.Add(186470);
  923. ids.Add(186471);
  924. ids.Add(186532);
  925. ids.Add(186652);
  926. ids.Add(186788);
  927. ids.Add(186789);
  928. ids.Add(186790);
  929. ids.Add(186857);
  930. ids.Add(186858);
  931. ids.Add(186859);
  932. ids.Add(187037);
  933. ids.Add(187038);
  934. ids.Add(187039);
  935. ids.Add(187235);
  936. ids.Add(187256);
  937. ids.Add(187257);
  938. ids.Add(187258);
  939. ids.Add(187271);
  940. ids.Add(187272);
  941. ids.Add(187273);
  942. ids.Add(187280);
  943. ids.Add(187281);
  944. ids.Add(187282);
  945. ids.Add(187337);
  946. ids.Add(187338);
  947. ids.Add(187379);
  948. ids.Add(187380);
  949. ids.Add(187382);
  950. ids.Add(187445);
  951. ids.Add(187470);
  952. ids.Add(187471);
  953. ids.Add(187472);
  954. ids.Add(187482);
  955. ids.Add(187494);
  956. ids.Add(187495);
  957. ids.Add(187496);
  958. ids.Add(187536);
  959. ids.Add(187577);
  960. ids.Add(187581);
  961. ids.Add(187582);
  962. ids.Add(187583);
  963. ids.Add(187617);
  964. ids.Add(187618);
  965. ids.Add(187619);
  966. ids.Add(187626);
  967. ids.Add(187677);
  968. ids.Add(187683);
  969. ids.Add(187684);
  970. ids.Add(187685);
  971. ids.Add(187701);
  972. ids.Add(187702);
  973. ids.Add(187719);
  974. ids.Add(187728);
  975. ids.Add(187729);
  976. ids.Add(187730);
  977. ids.Add(187731);
  978. ids.Add(187749);
  979. ids.Add(187764);
  980. ids.Add(187767);
  981. ids.Add(187768);
  982. ids.Add(187769);
  983. ids.Add(187776);
  984. ids.Add(187791);
  985. ids.Add(187809);
  986. ids.Add(187854);
  987. ids.Add(187866);
  988. ids.Add(187867);
  989. ids.Add(187924);
  990. ids.Add(187935);
  991. ids.Add(187950);
  992. ids.Add(187951);
  993. ids.Add(187972);
  994. ids.Add(187973);
  995. ids.Add(187989);
  996. ids.Add(187992);
  997. ids.Add(187996);
  998. ids.Add(187997);
  999. ids.Add(187998);
  1000. ids.Add(187999);
  1001. ids.Add(188000);
  1002. ids.Add(188002);
  1003. ids.Add(188003);
  1004. ids.Add(188004);
  1005. ids.Add(188005);
  1006. ids.Add(188006);
  1007. ids.Add(188007);
  1008. ids.Add(188008);
  1009. ids.Add(188011);
  1010. ids.Add(188012);
  1011. ids.Add(188013);
  1012. ids.Add(188014);
  1013. ids.Add(188015);
  1014. ids.Add(188016);
  1015. ids.Add(188023);
  1016. ids.Add(188040);
  1017. ids.Add(188041);
  1018. ids.Add(188061);
  1019. ids.Add(188062);
  1020. ids.Add(188076);
  1021. ids.Add(188104);
  1022. ids.Add(188141);
  1023. ids.Add(188152);
  1024. ids.Add(188155);
  1025. ids.Add(188158);
  1026. ids.Add(188159);
  1027. ids.Add(188161);
  1028. ids.Add(188162);
  1029. ids.Add(188163);
  1030. ids.Add(188164);
  1031. ids.Add(188165);
  1032. ids.Add(188166);
  1033. ids.Add(188169);
  1034. ids.Add(188170);
  1035. ids.Add(188197);
  1036. ids.Add(188293);
  1037. ids.Add(188377);
  1038. ids.Add(188407);
  1039. ids.Add(188408);
  1040. ids.Add(188409);
  1041. ids.Add(188422);
  1042. ids.Add(188423);
  1043. ids.Add(188424);
  1044. ids.Add(188446);
  1045. ids.Add(188551);
  1046. ids.Add(188554);
  1047. ids.Add(188560);
  1048. ids.Add(188572);
  1049. ids.Add(188574);
  1050. ids.Add(188575);
  1051. ids.Add(188578);
  1052. ids.Add(188579);
  1053. ids.Add(188580);
  1054. ids.Add(188585);
  1055. ids.Add(188586);
  1056. ids.Add(188599);
  1057. ids.Add(188600);
  1058. ids.Add(188601);
  1059. ids.Add(188602);
  1060. ids.Add(188603);
  1061. ids.Add(188605);
  1062. ids.Add(188607);
  1063. ids.Add(188610);
  1064. ids.Add(188613);
  1065. ids.Add(188629);
  1066. ids.Add(188630);
  1067. ids.Add(188647);
  1068. ids.Add(188648);
  1069. ids.Add(188649);
  1070. ids.Add(188650);
  1071. ids.Add(188656);
  1072. ids.Add(188659);
  1073. ids.Add(188678);
  1074. ids.Add(188680);
  1075. ids.Add(188689);
  1076. ids.Add(188690);
  1077. ids.Add(188691);
  1078. ids.Add(188757);
  1079. ids.Add(188760);
  1080. ids.Add(188761);
  1081. ids.Add(188773);
  1082. ids.Add(188779);
  1083. ids.Add(188929);
  1084. ids.Add(188941);
  1085. ids.Add(188942);
  1086. ids.Add(188943);
  1087. ids.Add(188979);
  1088. ids.Add(189011);
  1089. ids.Add(189012);
  1090. ids.Add(189013);
  1091. ids.Add(189036);
  1092. ids.Add(189131);
  1093. ids.Add(189132);
  1094. ids.Add(189133);
  1095. ids.Add(189311);
  1096. ids.Add(189424);
  1097. ids.Add(189425);
  1098. ids.Add(189426);
  1099. ids.Add(189427);
  1100. ids.Add(189428);
  1101. ids.Add(189429);
  1102. ids.Add(189580);
  1103. ids.Add(189581);
  1104. ids.Add(189667);
  1105. ids.Add(189736);
  1106. ids.Add(189737);
  1107. ids.Add(189738);
  1108. ids.Add(189742);
  1109. ids.Add(189745);
  1110. ids.Add(189772);
  1111. ids.Add(189773);
  1112. ids.Add(189781);
  1113. ids.Add(189783);
  1114. ids.Add(189799);
  1115. ids.Add(189800);
  1116. ids.Add(189801);
  1117. ids.Add(189808);
  1118. ids.Add(189809);
  1119. ids.Add(189810);
  1120. ids.Add(189832);
  1121. ids.Add(189833);
  1122. ids.Add(189834);
  1123. ids.Add(189835);
  1124. ids.Add(189836);
  1125. ids.Add(189837);
  1126. ids.Add(189998);
  1127. ids.Add(189999);
  1128. ids.Add(190000);
  1129. ids.Add(190089);
  1130. ids.Add(190090);
  1131. ids.Add(190091);
  1132. ids.Add(190155);
  1133. ids.Add(190200);
  1134. ids.Add(190201);
  1135. ids.Add(190202);
  1136. ids.Add(190281);
  1137. ids.Add(190282);
  1138. ids.Add(190283);
  1139. ids.Add(190296);
  1140. ids.Add(190297);
  1141. ids.Add(190368);
  1142. ids.Add(190369);
  1143. ids.Add(190422);
  1144. ids.Add(190428);
  1145. ids.Add(190429);
  1146. ids.Add(190430);
  1147. ids.Add(190491);
  1148. ids.Add(190503);
  1149. ids.Add(190504);
  1150. ids.Add(190536);
  1151. ids.Add(190537);
  1152. ids.Add(190538);
  1153. ids.Add(190539);
  1154. ids.Add(190540);
  1155. ids.Add(190541);
  1156. ids.Add(190588);
  1157. ids.Add(190589);
  1158. ids.Add(190630);
  1159. ids.Add(190730);
  1160. ids.Add(190731);
  1161. ids.Add(190732);
  1162. ids.Add(190742);
  1163. ids.Add(190748);
  1164. ids.Add(190790);
  1165. ids.Add(190793);
  1166. ids.Add(190811);
  1167. ids.Add(190817);
  1168. ids.Add(190883);
  1169. ids.Add(190884);
  1170. ids.Add(190895);
  1171. ids.Add(190896);
  1172. ids.Add(190897);
  1173. ids.Add(190907);
  1174. ids.Add(190916);
  1175. ids.Add(190917);
  1176. ids.Add(190918);
  1177. ids.Add(190955);
  1178. ids.Add(190956);
  1179. ids.Add(190957);
  1180. ids.Add(191045);
  1181. ids.Add(191046);
  1182. ids.Add(191047);
  1183. ids.Add(191054);
  1184. ids.Add(191055);
  1185. ids.Add(191056);
  1186. ids.Add(191084);
  1187. ids.Add(191086);
  1188. ids.Add(191087);
  1189. ids.Add(191096);
  1190. ids.Add(191097);
  1191. ids.Add(191098);
  1192. ids.Add(191111);
  1193. ids.Add(191112);
  1194. ids.Add(191113);
  1195. ids.Add(191120);
  1196. ids.Add(191121);
  1197. ids.Add(191122);
  1198. ids.Add(191495);
  1199. ids.Add(191496);
  1200. ids.Add(191546);
  1201. ids.Add(191547);
  1202. ids.Add(191561);
  1203. ids.Add(191562);
  1204. ids.Add(191621);
  1205. ids.Add(191622);
  1206. ids.Add(191623);
  1207. ids.Add(191676);
  1208. ids.Add(191717);
  1209. ids.Add(191718);
  1210. ids.Add(191756);
  1211. ids.Add(191757);
  1212. ids.Add(191787);
  1213. ids.Add(191792);
  1214. ids.Add(191793);
  1215. ids.Add(191798);
  1216. ids.Add(191799);
  1217. ids.Add(191800);
  1218. ids.Add(191804);
  1219. ids.Add(191805);
  1220. ids.Add(191806);
  1221. ids.Add(191807);
  1222. ids.Add(191867);
  1223. ids.Add(191868);
  1224. ids.Add(191869);
  1225. ids.Add(191895);
  1226. ids.Add(191896);
  1227. ids.Add(191945);
  1228. ids.Add(191946);
  1229. ids.Add(191947);
  1230. ids.Add(191948);
  1231. ids.Add(191962);
  1232. ids.Add(192014);
  1233. ids.Add(192035);
  1234. ids.Add(192036);
  1235. ids.Add(192143);
  1236. ids.Add(192386);
  1237. ids.Add(192387);
  1238. ids.Add(192388);
  1239. ids.Add(192389);
  1240. ids.Add(192390);
  1241. ids.Add(192391);
  1242. ids.Add(192443);
  1243. ids.Add(192444);
  1244. ids.Add(192445);
  1245. ids.Add(192452);
  1246. ids.Add(192453);
  1247. ids.Add(192454);
  1248. ids.Add(192455);
  1249. ids.Add(192506);
  1250. ids.Add(192545);
  1251. ids.Add(192560);
  1252. ids.Add(192561);
  1253. ids.Add(192562);
  1254. ids.Add(192590);
  1255. ids.Add(192596);
  1256. ids.Add(192602);
  1257. ids.Add(192603);
  1258. ids.Add(192604);
  1259. ids.Add(192623);
  1260. ids.Add(192638);
  1261. ids.Add(192639);
  1262. ids.Add(192640);
  1263. ids.Add(192653);
  1264. ids.Add(192654);
  1265. ids.Add(192719);
  1266. ids.Add(192752);
  1267. ids.Add(192767);
  1268. ids.Add(192768);
  1269. ids.Add(192769);
  1270. ids.Add(192794);
  1271. ids.Add(192890);
  1272. ids.Add(192891);
  1273. ids.Add(192892);
  1274. ids.Add(192896);
  1275. ids.Add(192897);
  1276. ids.Add(192906);
  1277. ids.Add(192907);
  1278. ids.Add(192908);
  1279. ids.Add(192909);
  1280. ids.Add(192910);
  1281. ids.Add(193121);
  1282. ids.Add(193122);
  1283. ids.Add(193148);
  1284. ids.Add(193175);
  1285. ids.Add(193176);
  1286. ids.Add(193193);
  1287. ids.Add(193213);
  1288. ids.Add(193226);
  1289. ids.Add(193310);
  1290. ids.Add(193313);
  1291. ids.Add(193334);
  1292. ids.Add(193335);
  1293. ids.Add(193435);
  1294. ids.Add(193467);
  1295. ids.Add(193468);
  1296. ids.Add(193469);
  1297. ids.Add(193470);
  1298. ids.Add(193471);
  1299. ids.Add(193472);
  1300. ids.Add(193498);
  1301. ids.Add(193499);
  1302. ids.Add(193500);
  1303. ids.Add(193516);
  1304. ids.Add(193597);
  1305. ids.Add(193598);
  1306. ids.Add(193599);
  1307. ids.Add(193633);
  1308. ids.Add(193681);
  1309. ids.Add(193682);
  1310. ids.Add(193683);
  1311. ids.Add(193684);
  1312. ids.Add(193685);
  1313. ids.Add(193686);
  1314. ids.Add(193708);
  1315. ids.Add(193780);
  1316. ids.Add(193788);
  1317. ids.Add(193792);
  1318. ids.Add(193793);
  1319. ids.Add(193810);
  1320. ids.Add(193948);
  1321. ids.Add(194065);
  1322. ids.Add(194086);
  1323. ids.Add(194087);
  1324. ids.Add(194113);
  1325. ids.Add(194116);
  1326. ids.Add(194117);
  1327. ids.Add(194118);
  1328. ids.Add(194170);
  1329. ids.Add(194171);
  1330. ids.Add(194182);
  1331. ids.Add(194183);
  1332. ids.Add(194197);
  1333. ids.Add(194212);
  1334. ids.Add(194221);
  1335. ids.Add(194222);
  1336. ids.Add(194263);
  1337. ids.Add(194300);
  1338. ids.Add(194301);
  1339. ids.Add(194302);
  1340. ids.Add(194315);
  1341. ids.Add(194316);
  1342. ids.Add(194317);
  1343. ids.Add(194339);
  1344. ids.Add(194340);
  1345. ids.Add(194345);
  1346. ids.Add(194347);
  1347. ids.Add(194396);
  1348. ids.Add(194397);
  1349. ids.Add(194398);
  1350. ids.Add(194402);
  1351. ids.Add(194403);
  1352. ids.Add(194404);
  1353. ids.Add(194420);
  1354. ids.Add(194459);
  1355. ids.Add(194562);
  1356. ids.Add(194568);
  1357. ids.Add(194580);
  1358. ids.Add(194581);
  1359. ids.Add(194586);
  1360. ids.Add(194616);
  1361. ids.Add(194619);
  1362. ids.Add(194631);
  1363. ids.Add(194685);
  1364. ids.Add(194721);
  1365. ids.Add(194850);
  1366. ids.Add(194852);
  1367. ids.Add(194934);
  1368. ids.Add(194979);
  1369. ids.Add(194980);
  1370. ids.Add(194997);
  1371. ids.Add(194998);
  1372. ids.Add(194999);
  1373. ids.Add(195000);
  1374. ids.Add(195019);
  1375. ids.Add(195100);
  1376. ids.Add(195271);
  1377. ids.Add(195280);
  1378. ids.Add(195310);
  1379. ids.Add(195601);
  1380. ids.Add(195655);
  1381. ids.Add(195656);
  1382. ids.Add(195657);
  1383. ids.Add(195667);
  1384. ids.Add(195774);
  1385. ids.Add(195775);
  1386. ids.Add(195776);
  1387. ids.Add(195782);
  1388. ids.Add(195828);
  1389. ids.Add(195837);
  1390. ids.Add(195838);
  1391. ids.Add(195894);
  1392. ids.Add(195895);
  1393. ids.Add(195896);
  1394. ids.Add(195906);
  1395. ids.Add(195936);
  1396. ids.Add(195975);
  1397. ids.Add(195976);
  1398. ids.Add(195978);
  1399. ids.Add(195981);
  1400. ids.Add(195984);
  1401. ids.Add(195985);
  1402. ids.Add(195987);
  1403. ids.Add(195988);
  1404. ids.Add(195996);
  1405. ids.Add(195999);
  1406. ids.Add(196000);
  1407. ids.Add(196001);
  1408. ids.Add(196005);
  1409. ids.Add(196023);
  1410. ids.Add(196090);
  1411. ids.Add(196102);
  1412. ids.Add(196108);
  1413. ids.Add(196114);
  1414. ids.Add(196116);
  1415. ids.Add(196117);
  1416. ids.Add(196123);
  1417. ids.Add(196124);
  1418. ids.Add(196125);
  1419. ids.Add(196156);
  1420. ids.Add(196157);
  1421. ids.Add(196158);
  1422. ids.Add(196168);
  1423. ids.Add(196174);
  1424. ids.Add(196192);
  1425. ids.Add(196193);
  1426. ids.Add(196194);
  1427. ids.Add(196204);
  1428. ids.Add(196205);
  1429. ids.Add(196206);
  1430. ids.Add(196207);
  1431. ids.Add(196208);
  1432. ids.Add(196209);
  1433. ids.Add(196216);
  1434. ids.Add(196217);
  1435. ids.Add(196218);
  1436. ids.Add(196231);
  1437. ids.Add(196232);
  1438. ids.Add(196237);
  1439. ids.Add(196238);
  1440. ids.Add(196239);
  1441. ids.Add(196287);
  1442. ids.Add(196288);
  1443. ids.Add(196289);
  1444. ids.Add(196338);
  1445. ids.Add(196344);
  1446. ids.Add(196345);
  1447. ids.Add(196346);
  1448. ids.Add(196359);
  1449. ids.Add(196360);
  1450. ids.Add(196443);
  1451. ids.Add(196444);
  1452. ids.Add(196445);
  1453. ids.Add(196464);
  1454. ids.Add(196465);
  1455. ids.Add(196467);
  1456. ids.Add(196468);
  1457. ids.Add(196482);
  1458. ids.Add(196503);
  1459. ids.Add(196504);
  1460. ids.Add(196505);
  1461. ids.Add(196506);
  1462. ids.Add(196507);
  1463. ids.Add(196508);
  1464. ids.Add(196509);
  1465. ids.Add(196510);
  1466. ids.Add(196515);
  1467. ids.Add(196516);
  1468. ids.Add(196517);
  1469. ids.Add(196518);
  1470. ids.Add(196527);
  1471. ids.Add(196536);
  1472. ids.Add(196537);
  1473. ids.Add(196538);
  1474. ids.Add(196554);
  1475. ids.Add(196599);
  1476. ids.Add(196608);
  1477. ids.Add(196668);
  1478. ids.Add(196669);
  1479. ids.Add(196670);
  1480. ids.Add(196683);
  1481. ids.Add(196701);
  1482. ids.Add(196779);
  1483. ids.Add(196780);
  1484. ids.Add(196800);
  1485. ids.Add(196801);
  1486. ids.Add(196802);
  1487. ids.Add(196815);
  1488. ids.Add(196839);
  1489. ids.Add(196840);
  1490. ids.Add(196848);
  1491. ids.Add(196849);
  1492. ids.Add(196850);
  1493. ids.Add(196869);
  1494. ids.Add(196870);
  1495. ids.Add(196872);
  1496. ids.Add(196893);
  1497. ids.Add(196894);
  1498. ids.Add(196895);
  1499. ids.Add(196917);
  1500. ids.Add(196929);
  1501. ids.Add(196941);
  1502. ids.Add(196944);
  1503. ids.Add(196953);
  1504. ids.Add(196989);
  1505. ids.Add(197022);
  1506. ids.Add(197043);
  1507. ids.Add(197044);
  1508. ids.Add(197046);
  1509. ids.Add(197052);
  1510. ids.Add(197055);
  1511. ids.Add(197056);
  1512. ids.Add(197057);
  1513. ids.Add(197091);
  1514. ids.Add(197092);
  1515. ids.Add(197097);
  1516. ids.Add(197130);
  1517. ids.Add(197131);
  1518. ids.Add(197132);
  1519. ids.Add(197235);
  1520. ids.Add(197236);
  1521. ids.Add(197244);
  1522. ids.Add(197271);
  1523. ids.Add(197307);
  1524. ids.Add(197308);
  1525. ids.Add(197349);
  1526. ids.Add(197350);
  1527. ids.Add(197351);
  1528. ids.Add(197358);
  1529. ids.Add(197359);
  1530. ids.Add(197360);
  1531. ids.Add(197361);
  1532. ids.Add(197364);
  1533. ids.Add(197365);
  1534. ids.Add(197366);
  1535. ids.Add(197367);
  1536. ids.Add(197368);
  1537. ids.Add(197376);
  1538. ids.Add(197377);
  1539. ids.Add(197378);
  1540. ids.Add(197421);
  1541. ids.Add(197422);
  1542. ids.Add(197423);
  1543. ids.Add(197439);
  1544. ids.Add(197440);
  1545. ids.Add(197441);
  1546. ids.Add(197448);
  1547. ids.Add(197449);
  1548. ids.Add(197450);
  1549. ids.Add(197451);
  1550. ids.Add(197452);
  1551. ids.Add(197454);
  1552. ids.Add(197455);
  1553. ids.Add(197456);
  1554. ids.Add(197457);
  1555. ids.Add(197460);
  1556. ids.Add(197461);
  1557. ids.Add(197462);
  1558. ids.Add(197472);
  1559. ids.Add(197478);
  1560. ids.Add(197479);
  1561. ids.Add(197480);
  1562. ids.Add(197490);
  1563. ids.Add(197511);
  1564. ids.Add(197512);
  1565. ids.Add(197514);
  1566. ids.Add(197515);
  1567. ids.Add(197517);
  1568. ids.Add(197518);
  1569. ids.Add(197519);
  1570. ids.Add(197520);
  1571. ids.Add(197521);
  1572. ids.Add(197522);
  1573. ids.Add(197538);
  1574. ids.Add(197539);
  1575. ids.Add(197541);
  1576. ids.Add(197542);
  1577. ids.Add(197562);
  1578. ids.Add(197563);
  1579. ids.Add(197565);
  1580. ids.Add(197566);
  1581. ids.Add(197567);
  1582. ids.Add(197568);
  1583. ids.Add(197577);
  1584. ids.Add(197578);
  1585. ids.Add(197579);
  1586. ids.Add(197596);
  1587. ids.Add(197601);
  1588. ids.Add(197602);
  1589. ids.Add(197625);
  1590. ids.Add(197626);
  1591. ids.Add(197627);
  1592. ids.Add(197673);
  1593. ids.Add(197778);
  1594. ids.Add(197779);
  1595. ids.Add(197780);
  1596. ids.Add(197790);
  1597. ids.Add(197895);
  1598. ids.Add(197896);
  1599. ids.Add(197898);
  1600. ids.Add(197934);
  1601. ids.Add(198090);
  1602. ids.Add(198091);
  1603. ids.Add(198092);
  1604. ids.Add(198204);
  1605. ids.Add(198205);
  1606. ids.Add(198206);
  1607. ids.Add(198243);
  1608. ids.Add(198249);
  1609. ids.Add(198315);
  1610. ids.Add(198348);
  1611. ids.Add(198349);
  1612. ids.Add(198350);
  1613. ids.Add(198372);
  1614. ids.Add(198375);
  1615. ids.Add(198478);
  1616. ids.Add(198544);
  1617. ids.Add(198545);
  1618. ids.Add(198619);
  1619. ids.Add(198715);
  1620. ids.Add(198847);
  1621. ids.Add(198848);
  1622. ids.Add(198849);
  1623. ids.Add(198874);
  1624. ids.Add(198928);
  1625. ids.Add(198929);
  1626. ids.Add(198930);
  1627. ids.Add(198958);
  1628. ids.Add(198959);
  1629. ids.Add(198970);
  1630. ids.Add(198971);
  1631. ids.Add(199003);
  1632. ids.Add(199036);
  1633. ids.Add(199051);
  1634. ids.Add(199052);
  1635. ids.Add(199053);
  1636. ids.Add(199066);
  1637. ids.Add(199072);
  1638. ids.Add(199073);
  1639. ids.Add(199084);
  1640. ids.Add(199189);
  1641. ids.Add(199190);
  1642. ids.Add(199191);
  1643. ids.Add(199264);
  1644. ids.Add(199265);
  1645. ids.Add(199266);
  1646. ids.Add(199282);
  1647. ids.Add(199283);
  1648. ids.Add(199363);
  1649. ids.Add(199435);
  1650. ids.Add(199436);
  1651. ids.Add(199594);
  1652. ids.Add(199695);
  1653. ids.Add(199722);
  1654. ids.Add(199749);
  1655. ids.Add(199750);
  1656. ids.Add(199751);
  1657. ids.Add(199779);
  1658. ids.Add(199794);
  1659. ids.Add(199795);
  1660. ids.Add(199911);
  1661. ids.Add(199953);
  1662. ids.Add(199954);
  1663. ids.Add(199955);
  1664. ids.Add(200076);
  1665. ids.Add(200082);
  1666. ids.Add(200092);
  1667. ids.Add(200148);
  1668. ids.Add(200149);
  1669. ids.Add(200160);
  1670. ids.Add(200161);
  1671. ids.Add(200193);
  1672. ids.Add(200301);
  1673. ids.Add(200307);
  1674. ids.Add(200316);
  1675. ids.Add(200322);
  1676. ids.Add(200433);
  1677. ids.Add(200445);
  1678. ids.Add(200448);
  1679. ids.Add(200499);
  1680. ids.Add(200556);
  1681. ids.Add(200557);
  1682. ids.Add(200577);
  1683. ids.Add(200578);
  1684. ids.Add(200673);
  1685. ids.Add(200674);
  1686. ids.Add(200709);
  1687. ids.Add(200781);
  1688. ids.Add(200782);
  1689. ids.Add(200790);
  1690. ids.Add(200791);
  1691. ids.Add(200792);
  1692. ids.Add(200796);
  1693. ids.Add(200797);
  1694. ids.Add(200835);
  1695. ids.Add(200838);
  1696. ids.Add(200841);
  1697. ids.Add(200847);
  1698. ids.Add(200848);
  1699. ids.Add(200849);
  1700. ids.Add(200862);
  1701. ids.Add(200863);
  1702. ids.Add(200946);
  1703. ids.Add(200947);
  1704. ids.Add(200955);
  1705. ids.Add(200956);
  1706. ids.Add(200958);
  1707. ids.Add(200959);
  1708. ids.Add(200960);
  1709. ids.Add(200985);
  1710. ids.Add(200986);
  1711. ids.Add(201003);
  1712. ids.Add(201004);
  1713. ids.Add(201005);
  1714. ids.Add(201018);
  1715. ids.Add(201019);
  1716. ids.Add(201096);
  1717. ids.Add(201102);
  1718. ids.Add(201111);
  1719. ids.Add(201112);
  1720. ids.Add(201134);
  1721. ids.Add(201167);
  1722. ids.Add(201168);
  1723. ids.Add(201169);
  1724. ids.Add(201170);
  1725. ids.Add(201276);
  1726. ids.Add(201426);
  1727. ids.Add(201427);
  1728. ids.Add(201428);
  1729. ids.Add(201444);
  1730. ids.Add(201447);
  1731. ids.Add(201492);
  1732. ids.Add(201493);
  1733. ids.Add(201494);
  1734. ids.Add(201594);
  1735. ids.Add(201595);
  1736. ids.Add(201630);
  1737. ids.Add(201727);
  1738. ids.Add(201728);
  1739. ids.Add(201847);
  1740. ids.Add(201848);
  1741. ids.Add(201862);
  1742. ids.Add(201863);
  1743. ids.Add(201874);
  1744. ids.Add(201876);
  1745. ids.Add(201895);
  1746. ids.Add(201896);
  1747. ids.Add(201897);
  1748. ids.Add(201898);
  1749. ids.Add(201899);
  1750. ids.Add(201900);
  1751. ids.Add(201904);
  1752. ids.Add(201905);
  1753. ids.Add(201906);
  1754. ids.Add(201976);
  1755. ids.Add(201991);
  1756. ids.Add(201992);
  1757. ids.Add(201993);
  1758. ids.Add(202006);
  1759. ids.Add(202007);
  1760. ids.Add(202009);
  1761. ids.Add(202010);
  1762. ids.Add(202011);
  1763. ids.Add(202039);
  1764. ids.Add(202040);
  1765. ids.Add(202060);
  1766. ids.Add(202061);
  1767. ids.Add(202063);
  1768. ids.Add(202084);
  1769. ids.Add(202207);
  1770. ids.Add(202208);
  1771. ids.Add(202309);
  1772. ids.Add(202318);
  1773. ids.Add(202330);
  1774. ids.Add(202331);
  1775. ids.Add(202339);
  1776. ids.Add(202351);
  1777. ids.Add(202357);
  1778. ids.Add(202358);
  1779. ids.Add(202359);
  1780. ids.Add(202417);
  1781. ids.Add(202432);
  1782. ids.Add(202438);
  1783. ids.Add(202439);
  1784. ids.Add(202447);
  1785. ids.Add(202448);
  1786. ids.Add(202449);
  1787. ids.Add(202507);
  1788. ids.Add(202508);
  1789. ids.Add(202513);
  1790. ids.Add(202621);
  1791. ids.Add(202639);
  1792. ids.Add(202709);
  1793. ids.Add(202812);
  1794. ids.Add(202833);
  1795. ids.Add(202834);
  1796. ids.Add(202835);
  1797. ids.Add(202839);
  1798. ids.Add(202840);
  1799. ids.Add(202893);
  1800. ids.Add(202894);
  1801. ids.Add(202895);
  1802. ids.Add(202896);
  1803. ids.Add(202897);
  1804. ids.Add(202898);
  1805. ids.Add(202902);
  1806. ids.Add(202903);
  1807. ids.Add(202904);
  1808. ids.Add(202950);
  1809. ids.Add(202951);
  1810. ids.Add(202952);
  1811. ids.Add(202986);
  1812. ids.Add(202987);
  1813. ids.Add(203004);
  1814. ids.Add(203058);
  1815. ids.Add(203059);
  1816. ids.Add(203073);
  1817. ids.Add(203074);
  1818. ids.Add(203094);
  1819. ids.Add(203095);
  1820. ids.Add(203096);
  1821. ids.Add(203199);
  1822. ids.Add(203200);
  1823. ids.Add(203201);
  1824. ids.Add(203275);
  1825. ids.Add(203276);
  1826. ids.Add(203440);
  1827. ids.Add(203441);
  1828. ids.Add(203442);
  1829. ids.Add(203515);
  1830. ids.Add(203516);
  1831. ids.Add(203539);
  1832. ids.Add(203542);
  1833. ids.Add(203543);
  1834. ids.Add(203544);
  1835. ids.Add(203665);
  1836. ids.Add(203692);
  1837. ids.Add(203710);
  1838. ids.Add(203711);
  1839. ids.Add(203717);
  1840. ids.Add(203718);
  1841. ids.Add(203788);
  1842. ids.Add(203789);
  1843. ids.Add(203790);
  1844. ids.Add(203791);
  1845. ids.Add(203792);
  1846. ids.Add(203793);
  1847. ids.Add(203797);
  1848. ids.Add(203798);
  1849. ids.Add(203799);
  1850. ids.Add(203800);
  1851. ids.Add(203801);
  1852. ids.Add(203802);
  1853. ids.Add(203803);
  1854. ids.Add(203815);
  1855. ids.Add(203816);
  1856. ids.Add(203863);
  1857. ids.Add(203881);
  1858. ids.Add(203887);
  1859. ids.Add(203888);
  1860. ids.Add(203889);
  1861. ids.Add(203896);
  1862. ids.Add(203897);
  1863. ids.Add(203898);
  1864. ids.Add(203899);
  1865. ids.Add(203929);
  1866. ids.Add(203930);
  1867. ids.Add(203931);
  1868. ids.Add(203932);
  1869. ids.Add(203933);
  1870. ids.Add(203934);
  1871. ids.Add(203935);
  1872. ids.Add(203936);
  1873. ids.Add(203959);
  1874. ids.Add(203960);
  1875. ids.Add(204039);
  1876. ids.Add(204055);
  1877. ids.Add(204058);
  1878. ids.Add(204088);
  1879. ids.Add(204089);
  1880. ids.Add(204090);
  1881. ids.Add(204121);
  1882. ids.Add(204122);
  1883. ids.Add(204123);
  1884. ids.Add(204226);
  1885. ids.Add(204247);
  1886. ids.Add(204248);
  1887. ids.Add(204249);
  1888. ids.Add(204250);
  1889. ids.Add(204251);
  1890. ids.Add(204252);
  1891. ids.Add(204253);
  1892. ids.Add(204254);
  1893. ids.Add(204325);
  1894. ids.Add(204326);
  1895. ids.Add(204334);
  1896. ids.Add(204388);
  1897. ids.Add(204389);
  1898. ids.Add(204390);
  1899. ids.Add(204466);
  1900. ids.Add(204467);
  1901. ids.Add(204508);
  1902. ids.Add(204509);
  1903. ids.Add(204529);
  1904. ids.Add(204530);
  1905. ids.Add(204534);
  1906. ids.Add(204567);
  1907. ids.Add(204633);
  1908. ids.Add(204634);
  1909. ids.Add(204635);
  1910. ids.Add(204669);
  1911. ids.Add(204670);
  1912. ids.Add(204671);
  1913. ids.Add(204823);
  1914. ids.Add(204825);
  1915. ids.Add(204847);
  1916. ids.Add(204872);
  1917. ids.Add(204873);
  1918. ids.Add(204874);
  1919. ids.Add(204925);
  1920. ids.Add(204931);
  1921. ids.Add(204932);
  1922. ids.Add(204933);
  1923. ids.Add(205027);
  1924. ids.Add(205028);
  1925. ids.Add(205029);
  1926. ids.Add(205036);
  1927. ids.Add(205037);
  1928. ids.Add(205054);
  1929. ids.Add(205055);
  1930. ids.Add(205066);
  1931. ids.Add(205067);
  1932. ids.Add(205068);
  1933. ids.Add(205084);
  1934. ids.Add(205085);
  1935. ids.Add(205086);
  1936. ids.Add(205090);
  1937. ids.Add(205091);
  1938. ids.Add(205129);
  1939. ids.Add(205133);
  1940. ids.Add(205156);
  1941. ids.Add(205159);
  1942. ids.Add(205177);
  1943. ids.Add(205186);
  1944. ids.Add(205189);
  1945. ids.Add(205190);
  1946. ids.Add(205201);
  1947. ids.Add(205202);
  1948. ids.Add(205207);
  1949. ids.Add(205208);
  1950. ids.Add(205232);
  1951. ids.Add(205250);
  1952. ids.Add(205251);
  1953. ids.Add(205252);
  1954. ids.Add(205259);
  1955. ids.Add(205260);
  1956. ids.Add(205301);
  1957. ids.Add(205307);
  1958. ids.Add(205373);
  1959. ids.Add(205374);
  1960. ids.Add(205403);
  1961. ids.Add(205409);
  1962. ids.Add(205430);
  1963. ids.Add(205448);
  1964. ids.Add(205449);
  1965. ids.Add(205450);
  1966. ids.Add(205454);
  1967. ids.Add(205472);
  1968. ids.Add(205473);
  1969. ids.Add(205474);
  1970. ids.Add(205554);
  1971. ids.Add(205555);
  1972. ids.Add(205556);
  1973. ids.Add(205569);
  1974. ids.Add(205635);
  1975. ids.Add(205668);
  1976. ids.Add(205708);
  1977. ids.Add(205710);
  1978. ids.Add(205719);
  1979. ids.Add(205770);
  1980. ids.Add(205896);
  1981. ids.Add(205987);
  1982. ids.Add(205993);
  1983. ids.Add(205994);
  1984. ids.Add(205995);
  1985. ids.Add(206131);
  1986. ids.Add(206200);
  1987. ids.Add(206201);
  1988. ids.Add(206202);
  1989. ids.Add(206470);
  1990. ids.Add(206485);
  1991. ids.Add(206486);
  1992. ids.Add(206487);
  1993. ids.Add(206500);
  1994. ids.Add(206501);
  1995. ids.Add(206502);
  1996. ids.Add(206548);
  1997. PosSns = db.PosCoupons.Where(m => ids.Contains(m.Id) && m.IsUse == 1).ToList().Select(m => m.ExchangeCode).ToList();
  1998. List<PosCoupons> coupons = db.PosCoupons.Where(m => ids.Contains(m.Id) && m.IsUse == 1).ToList();
  1999. foreach (PosCoupons coupon in coupons)
  2000. {
  2001. ChildNo(db, coupon.ExchangeCode, coupon.ExchangeCode, coupon.OpenPrizeUserId);
  2002. }
  2003. // db.SaveChanges();
  2004. db.Dispose();
  2005. }
  2006. List<string> nos = new List<string>();
  2007. private void ChildNo(WebCMSEntities db, string RootCheckNo, string CheckNo, int LeaderUserId)
  2008. {
  2009. MachineApply apply = db.MachineApply.FirstOrDefault(m => m.SwapSnExpand.Contains(CheckNo));
  2010. if(apply != null)
  2011. {
  2012. int len = 0;
  2013. string[] SnList = apply.SwapSnExpand.TrimEnd('\n').Split('\n');
  2014. foreach(string sn in SnList)
  2015. {
  2016. if(PosSns.Contains(sn.Split(':')[0]) || nos.Contains(sn.Split(':')[0]))
  2017. {
  2018. len += 1;
  2019. }
  2020. }
  2021. Orders order = db.Orders.FirstOrDefault(m => m.Id == apply.QueryCount);
  2022. if(order != null)
  2023. {
  2024. if(!string.IsNullOrEmpty(order.SnNos))
  2025. {
  2026. if(order.SnNos.Contains(","))
  2027. {
  2028. string[] SwapSnExpands = order.SnNos.TrimEnd(',').Split(',');
  2029. int index = 0;
  2030. foreach(string no in SwapSnExpands)
  2031. {
  2032. if(!nos.Contains(no) && index < len)
  2033. {
  2034. index += 1;
  2035. nos.Add(no);
  2036. ChildNo(db, RootCheckNo, no, LeaderUserId);
  2037. }
  2038. }
  2039. }
  2040. else
  2041. {
  2042. string[] SwapSnExpands = order.SnNos.TrimEnd('\n').Split('\n');
  2043. int index = 0;
  2044. foreach(string no in SwapSnExpands)
  2045. {
  2046. if(!nos.Contains(no) && index < len)
  2047. {
  2048. index += 1;
  2049. nos.Add(no);
  2050. ChildNo(db, RootCheckNo, no, LeaderUserId);
  2051. }
  2052. }
  2053. }
  2054. }
  2055. else
  2056. {
  2057. MachineForSnNo forSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == CheckNo) ?? new MachineForSnNo();
  2058. PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == forSnNo.SnId);
  2059. if(pos != null)
  2060. {
  2061. // pos.LeaderUserId = LeaderUserId;
  2062. // Library.function.WriteLog(LeaderUserId + ":" + pos.PosSn + ":" + apply.SwapSnExpand.TrimEnd('\n').Split('\n').Length, "大盟主奖励标记机具");
  2063. // Users user = db.Users.FirstOrDefault(m => m.Id == pos.BuyUserId) ?? new Users();
  2064. // Library.function.WriteLog(pos.PosSn + ":" + RootCheckNo + ":" + user.MakerCode + ":" + user.RealName, "大盟主奖励标记机具");
  2065. Library.function.WriteLog(pos.Id + ":" + LeaderUserId, "开机奖励标记机具");
  2066. }
  2067. }
  2068. }
  2069. }
  2070. else
  2071. {
  2072. MachineForSnNo forSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == CheckNo) ?? new MachineForSnNo();
  2073. PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m=>m.Id == forSnNo.SnId);
  2074. if(pos != null)
  2075. {
  2076. // pos.LeaderUserId = LeaderUserId;
  2077. // Library.function.WriteLog(LeaderUserId + ":" + pos.PosSn, "大盟主奖励标记机具");
  2078. // Users user = db.Users.FirstOrDefault(m => m.Id == pos.BuyUserId) ?? new Users();
  2079. // Library.function.WriteLog(pos.PosSn + ":" + RootCheckNo + ":" + user.MakerCode + ":" + user.RealName, "大盟主奖励标记机具");
  2080. Library.function.WriteLog(pos.Id + ":" + LeaderUserId, "开机奖励标记机具");
  2081. }
  2082. }
  2083. }
  2084. }