package com.hsmap.mainpackage;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Maps;
import com.google.gson.Gson;
import com.hsmap.util.TextUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.PairFunction;
import org.apache.spark.api.java.function.VoidFunction;
import org.elasticsearch.spark.rdd.api.java.JavaEsSpark;
import scala.Tuple2;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import java.io.File;
import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
public class MainCleancity {
public static void main(String[] args) {
SparkConf sparkConf = new SparkConf().setAppName("Resolve").setMaster("local[*]");
sparkConf.set("cluster.name", "es");
sparkConf.set("es.index.auto.create", "true");
sparkConf.set("es.nodes", "192.168.100.100"); //es集群节点
sparkConf.set("es.port", "9200"); //集群端口
sparkConf.set("es.index.read.missing.as.empty", "true");
sparkConf.set("es.net.http.auth.user", "chentx"); //访问es的用户名
sparkConf.set("es.net.http.auth.pass", "KNB2pMQo0Y08"); //访问es的密码
sparkConf.set("es.nodes.wan.only", "false");
sparkConf.set("es.mapping.date.rich", "false");
sparkConf.set("es.batch.write.refresh", "false");
sparkConf.set("spark.kryoserializer.buffer.max","128m");
JavaSparkContext jsc = new JavaSparkContext(sparkConf);
// readNestedAndWrite(jsc);
// String s = investNameToNew("刘芳,医学本科学历");
// System.out.println(s);
// String str = "呼吸\t神经内科\t肾病\t消化\t泌尿外科\t普通外科\t妇产\t皮肤性病\t麻醉\t医学影像(诊断\t治疗)\t医学影像(核医学)";
// String str = "耳鼻喉\t急诊医学(中毒\t感染)\t口腔\t肾病\t血液\t肿瘤\t神经内科\t普通外科\t泌尿\t妇科";
// String regex_1 = "[^()]+(\\([^()]+\\))?";
// Pattern compile = Pattern.compile(regex_1);
// 1诊断 治疗
// 2 = 1repalce()
// str replace(1, 2)
// readNestedAndWrite(jsc);
// enrich_major_list(str);
deal_date_time(jsc);
jsc.close();
}
private static void deal_date_time(JavaSparkContext jsc){
Map<String, String> readEsMap = new HashMap<>();
// readEsMap.put("es.query","{\"query\":{\"match_all\":{}}}");
// readEsMap.put("es.query","{\n" +
// " \"query\": {\n" +
// " \"terms\": {\n" +
// " \"medical_id\": [\n" +
// " \"0b609e9ecc25f932b22bf9a5d38bd163\",\n" +
// " \"ebba29d88913c2bc0c6c87ad6627d05b\",\n" +
// " \"b45447dcda738bf0e54f488404991f46\",\n" +
// " \"bd9b6202f390f7cd8a8f912cf901520e\",\n" +
// " \"60e5928d4605e072815c36962e790170\",\n" +
// " \"1e5837f6e12c74925c52e43eda22ba19\",\n" +
// " \"f0c017c870c7e2b973b5f502db09f079\",\n" +
// " \"1b0ea6b0f00dceb0fac6f5a09d54a814\",\n" +
// " \"a7bfc83151d1059a96fb07b395149233\",\n" +
// " \"2dcacbb921d3a928bbe2057b47fe753c\",\n" +
// " \"50466809e4bf32a4cbb43908a37275c2\",\n" +
// " \"d8d518e442382a76aa168dae9b8db309\",\n" +
// " \"f3df64c050e55ad568aa8dd46c9d3ebc\",\n" +
// " \"e0e3660bdcfb1b11e95b256a7d9f574b\",\n" +
// " \"8b549d31148f9bfeb71fe023253c0b3c\",\n" +
// " \"9dbb4b277471bdd4af55f0d3c590a94e\",\n" +
// " \"73f9bfdfb60ce766c51f6c312013ca2c\",\n" +
// " \"15606443c4eb671165e7bab0f22c210e\",\n" +
// " \"1fc4572faa1ad9d6fe8bd0f3344afdcb\",\n" +
// " \"d44989e851dd195d32335224f7a7be5a\",\n" +
// " \"717c29e08aa9b7b2a1a7b2b4d53490f4\",\n" +
// " \"60706eb011d581a789d4b019995a1cc0\",\n" +
// " \"ad8fe095138711c7d79243045c344fc3\",\n" +
// " \"cd0725b44b511bdad9b58f39b39583dd\",\n" +
// " \"7e481a2f32f1575b4151ce620a5e54f8\",\n" +
// " \"0a3b09be9959d51a00f62e4d20396aa5\",\n" +
// " \"97bd9f16d6be63ef08917b363481e35e\",\n" +
// " \"14541cb90172f408cf4ebd8256b34825\",\n" +
// " \"e8d8b067468db6291660a651ac785f4e\",\n" +
// " \"32a2b5933b26588b3be3d6b831829544\",\n" +
// " \"365e5fa14667e7e75d3d74de8f488bcb\",\n" +
// " \"a3dbbdb78c03fa064a72e4aaddbe7134\",\n" +
// " \"8ae38847133fa1237bd2b0a895cc711e\",\n" +
// " \"7d2335159f6e19dfe48d9ad9a5637b96\",\n" +
// " \"505258b1d86015674d379eb1fcb8e75d\",\n" +
// " \"f0fdfba65d10f930169b44fd8f10509f\",\n" +
// " \"2962cce6f5eb3dc2c621f1b087e048a3\",\n" +
// " \"5aa811e8a56b2ef04c14801285bc0b79\",\n" +
// " \"bc28f66c8a4364c2ce7c114a583323a1\",\n" +
// " \"67a06a61e4d12ea51f1a3b1cce0a6b09\",\n" +
// " \"7d7e25f243d523d9c6730571b5563468\",\n" +
// " \"dfb48ddd5923e4e399bacd545204828b\",\n" +
// " \"a099d4ae1eafd72a6d52d5f4335bd62b\",\n" +
// " \"7a9c19f32f0095aaa6ec564e063f9c51\",\n" +
// " \"af9842641bfafabc8505508a57b41fd5\",\n" +
// " \"bacb581131fa1220a2ed5efd54814550\",\n" +
// " \"df1f7b543fc6f6bb34b55f3cf39dc268\",\n" +
// " \"4b94bfd1aad43af1659bf96491fbdd12\",\n" +
// " \"e6d28d1cfbbe47944f910943867af20d\",\n" +
// " \"8dda8b57e6113dccdb8430018398b2f5\",\n" +
// " \"613d5002179482ef4ad077ca5907374b\",\n" +
// " \"457a24185fb1598b55a4c8fe62aabae7\",\n" +
// " \"8de7e482719962c0e7eb7a98a2f4734b\",\n" +
// " \"0c65c558b65d22fbd6daca46e79c023a\",\n" +
// " \"4632bd99ebe503ab784bcf5516d251dd\",\n" +
// " \"20efebed685200949d410e024338c189\",\n" +
// " \"2add8d3ba169daf5c2e3d4f0096754e2\",\n" +
// " \"28b1920c39cc381f2d5ae2a1d0242f40\",\n" +
// " \"7889d24a8cd9680ccd80cb43d6231121\",\n" +
// " \"42fa412d30da803ed080050cdc1d3f22\",\n" +
// " \"d22881d200a4d779bf69c480c5cd77f0\",\n" +
// " \"cea9b3bc6c5d89c48781713128409aa9\",\n" +
// " \"d128b197bb58892d863f8621d1c27b28\",\n" +
// " \"d40c64e6a59977ed70a0763056714515\",\n" +
// " \"ac8eb018569274911326a493f38a4e19\",\n" +
// " \"439fe9c37d63f63d53c3ff37f5947c4f\",\n" +
// " \"22f92b7cc7578afa5003ae3d62534b0e\",\n" +
// " \"45c14a75ac9ab84e9b1f778bad520cb9\",\n" +
// " \"26ff77d1a9b9d6f11ed33b06a58e9b12\",\n" +
// " \"540e263b5d86936ace12824cebd84d82\",\n" +
// " \"0a48358ab401c408453c2f57c6c04457\",\n" +
// " \"96d24394c05323a6c3dd16a65f5f9a9e\",\n" +
// " \"d4cbd8bbc9fd6203858ba6c032852a4d\",\n" +
// " \"2d1f0c60a23a21a10bd855f099a281b5\",\n" +
// " \"6ca0971a4dcffd1b1b35ce900848d33b\",\n" +
// " \"28f5fa8f408d6028251b3d421cc17d66\",\n" +
// " \"ed3c521c9dc3d599a1297e414bbd2b39\",\n" +
// " \"750455aba23a54ef59d519a27cb04209\",\n" +
// " \"ac9acbb9143275e6afdb11612569a9c7\",\n" +
// " \"7da5bca27fb33ecf9b2174c8aa0fbef9\",\n" +
// " \"85485f98a94064cc833105a448e1432b\",\n" +
// " \"f74382dcddfa8c5b10b836d16a0835e7\",\n" +
// " \"64c0c626df0725a14ab7b97c04573344\",\n" +
// " \"29e70e0bca95ce47124b91c204aa9da7\",\n" +
// " \"8dc1018c08044eb5b7d0ebb031a9c3bd\",\n" +
// " \"42a7d60b6b5fe4b5dc2fe86fefadfce4\",\n" +
// " \"3bb7a9d4eccc342760e74e3307b6c02a\",\n" +
// " \"12c7aa43f0d60b257a294d2958b36e22\",\n" +
// " \"e013b8c6defc9d4d5e41166bae689237\",\n" +
// " \"596d6d707107ba7301baa9be708d8e61\",\n" +
// " \"a866d313e6d2c9199309aba545e955a9\",\n" +
// " \"f6a07818e7ec46d350e76c5e155f3f43\",\n" +
// " \"09f7b2fa5c33afa8d3c2bcb0357c3a7c\",\n" +
// " \"4673a7590ca369c457ffb6ad5f7726ad\",\n" +
// " \"5ba53f0b2437b16ef64987a7f29147f7\",\n" +
// " \"d8d1a684bd5ac1dfed292306232436dc\",\n" +
// " \"edc15aea0d8bdda781eb2180a64f972e\",\n" +
// " \"f7fa44bd041b6a0b5d606df0b8cdee87\",\n" +
// " \"b6fbe325972aac907388e1436bccb8c1\",\n" +
// " \"9bf4310c82742dad9fc39b8a79a8ffb0\",\n" +
// " \"8d7765d7e2a50fcf922eac0fdfad6cc1\",\n" +
// " \"3ce3bbe27b4e168412cc5c7085f6949a\",\n" +
// " \"599d22fa369029830edbaa7e8cb04989\",\n" +
// " \"ad9432b08c792054725db7d9bbc8f758\",\n" +
// " \"2e774e587b133f5ff7b993a614a6e034\",\n" +
// " \"a6f497fc42c701cfd26dc48e62797286\",\n" +
// " \"4f20b7e9ff9d1743aba62d9d4e2e6cb8\",\n" +
// " \"72c3922c178bb6f00772cc8e90fda148\",\n" +
// " \"40e771bed82893d361ba815d9036ccce\",\n" +
// " \"d1ceac52dbee6c2dbbd2bf1d10b7ee06\",\n" +
// " \"80c108e9436caa97446e489b4f0d58ee\",\n" +
// " \"a4e74346865f93da016d859e0d066751\",\n" +
// " \"824fb11eb510ee5b74ab7fd1560c7c46\",\n" +
// " \"30394828db23175ac013a0304ef2cec1\",\n" +
// " \"db8b9b4664e7113333d1b5dbcbaa58ab\",\n" +
// " \"3b2038243aecc0441e8786e67eb7fe1d\",\n" +
// " \"867d7f118ace4c03cb57e1953298ee4a\",\n" +
// " \"5c2a6d8fbbf28a7df21bed3c09147806\",\n" +
// " \"884b508e93472fdce5e75c9f4d14d56d\",\n" +
// " \"4ba814f35f8fb0293336143e08d1d34a\",\n" +
// " \"8dc251e821ccb3da3ce9e1e9b43d89cd\",\n" +
// " \"eb6527bee26b8e8eaed4a3cc077440ed\",\n" +
// " \"7ab0e46daa5534444745167faece8347\",\n" +
// " \"9aac65b157b4239b9260d3d7a235719c\",\n" +
// " \"d1cb71963d50b3639065b1744ec2f5ff\",\n" +
// " \"1fc8d581525ae952fce3d392d1206a1d\",\n" +
// " \"6181fdf70c9703d66055d2553c8cbe18\",\n" +
// " \"b9f9bd2c158eb498a0f77a81ad601c19\",\n" +
// " \"d134c7fb6cdf509bf016bb858a672603\",\n" +
// " \"4f0308e1198f00fae5aab3f6c05f12b2\",\n" +
// " \"86c6fc65105d6155bf27b6facb27caac\",\n" +
// " \"b53dc4feb9310b88ffc090da4d7e8aef\",\n" +
// " \"e85882c8f399713b0cb8300f1fb1814c\",\n" +
// " \"f94d58a3d0d58701fca5ab51aef8743f\",\n" +
// " \"ad658a98a0b1e4fd1ff2818f8242eaf0\",\n" +
// " \"40be6ffe19b22a8053e1b00a9ae4ec55\",\n" +
// " \"6c73ae7644e8be01a734ecf40306de6c\",\n" +
// " \"82b980fed1c58a468f6e04b9cc76f71b\",\n" +
// " \"1f18d53c9fa4f782279ae7b352d0189f\",\n" +
// " \"1420205cbcda7e55b5df6163d8ef4eb9\",\n" +
// " \"5ef9eb5a7d6247090563dc4d0e95717e\",\n" +
// " \"9b0388b25a5fe5ac621fa09a05ee1683\",\n" +
// " \"faaf68c111d875997f90ff30532814f6\",\n" +
// " \"7a279fdcfe344683038792ca5d2e965c\",\n" +
// " \"7f57b3d5e675c6f4c65b9dea28b6eec2\",\n" +
// " \"89d01f1f784c6fc8aaad0333d38e95c4\",\n" +
// " \"e815bcf8b277d98ab91b961ae0492e65\",\n" +
// " \"b12e936a2353bd405d82db7cbdd04b29\",\n" +
// " \"4a0a263c9bb8585330232bfc2acb1274\",\n" +
// " \"e688b9d51fbfacc5d1a606fa6ff06506\",\n" +
// " \"f98aa0f15aea0deb6f279fbbfd76ecdb\",\n" +
// " \"48936b4f9107176b4ab19c70b6c5d6a0\",\n" +
// " \"b2355e7bf574f9a1cdb4ad2d6165b060\",\n" +
// " \"0b30d43d714f882c151d530b682ef90a\",\n" +
// " \"23dc3e4270d0c311e9e1dd830ebd636e\",\n" +
// " \"a02bf12deeebb777612580a170fe59eb\",\n" +
// " \"474ab5352b1821694995820050eefdc1\",\n" +
// " \"5b84baafe59689320b333a17e21b5963\",\n" +
// " \"913781b47c0aac8da6aa0eaa0859a099\",\n" +
// " \"6fdedb4eda2ff2b4ffe0c21f195cf06c\",\n" +
// " \"f2f990547dba3bdc198f26dd4fd94ee7\",\n" +
// " \"856f9ad9300f7e3a771c827656ab6323\",\n" +
// " \"dfd02e714067803b8a0832cdcb268509\",\n" +
// " \"27de639a4d1e2c212865cac17750ddd3\",\n" +
// " \"97086cc00cf3a4a838fec3cbbaef9058\",\n" +
// " \"913b0bdacef1b1ce97c0f09bad2b01fd\",\n" +
// " \"f6ee7f6abdd997239d87d62a13caafe5\",\n" +
// " \"c3c6c9b3c95ed2d337698c5a8f142740\",\n" +
// " \"ec81ff5f0e43bbfad501ac0457ea226c\",\n" +
// " \"1aec06bee9a8330d69826106e9514c74\",\n" +
// " \"47d3f6a86602ea3d669a4d2629ffad42\",\n" +
// " \"9fd997fadf47102e547799db910f164d\",\n" +
// " \"f56482c286910049e55c3a9eeca45d51\",\n" +
// " \"6b0cb07712a6f5456f78fd552cd030ed\",\n" +
// " \"eed55475fcfe336a67ff68b3fa4ae45b\",\n" +
// " \"f91053cfdbf5068b5894819ea4baa499\",\n" +
// " \"803e3d729da5b42591528a4bad9e9b78\",\n" +
// " \"328e9a7dcfa3834e15a448dea1b47325\",\n" +
// " \"75a58d89b64e2013bd213262a8b62c47\",\n" +
// " \"5e8606e5f9c83772069ea89a6ed553c5\",\n" +
// " \"8b0c605802201229c8f9be3596311c82\",\n" +
// " \"4913306526f39fbd245ab213ed8be24a\",\n" +
// " \"5da944c553bdebd7f7ea980c16d67e40\",\n" +
// " \"17767167e2947ede0ab85c863987ef45\",\n" +
// " \"5b3c70bac5e799edf0219033f25b7f99\",\n" +
// " \"80cb048b33a37770bab025b915c6d67c\",\n" +
// " \"586f88061dae91c1a0c321f76ff7429f\",\n" +
// " \"61f74fe854b2a3af86815f6d0df4586f\",\n" +
// " \"fb21a5cf751f629a8fe1aa80e9dfac3b\",\n" +
// " \"380988d69d7cdf416766e22b30a60d6f\",\n" +
// " \"36cbb38daf6bd226ecd1e92316d2f0d2\",\n" +
// " \"e5a897f25d1585883b5edab84c67fdad\",\n" +
// " \"95da0cada8ca29f8e2aac9b669e4819f\",\n" +
// " \"06fa6c55b07c596385e9a99d90165a12\",\n" +
// " \"7d9f13d69d257ea107787d263e0b9c9a\",\n" +
// " \"9cf6dfc30bebbfea206985ce2f5c980d\",\n" +
// " \"56832e0ae13f45568806cadcbff18f8d\",\n" +
// " \"45999be8a2ebcf40ea1db9985768656d\",\n" +
// " \"e1d84d9de0c443ff0f0287081db9319e\",\n" +
// " \"3b4aef1cd713a8fe96b0203b2747feff\",\n" +
// " \"618cc1ef4483f96c00cdbf80edd3c864\",\n" +
// " \"729e3cfcf8c4dfccc79081b397a76920\",\n" +
// " \"eb725b7b0edde8ced7d3892be8cec4ca\",\n" +
// " \"214478e2228c6e73d834a6970fc93af7\",\n" +
// " \"98afcc6aa4306eb6e54cda88c545f761\",\n" +
// " \"0a5552810c3fd749ee2831d6e25e70f6\",\n" +
// " \"b40854394b1aaa128f6953e52e75c4d6\",\n" +
// " \"d9b4cdbe60d927c71fe5b28ffe8f31cc\",\n" +
// " \"23e460779ddca15d2ac46b6f1b441da1\",\n" +
// " \"7d3912090b6592110091e89c871f960a\",\n" +
// " \"91a15ef46618d89b7dec2bc9765d14c9\",\n" +
// " \"dd13440abedec6803e6a911675b98d57\",\n" +
// " \"04ca4fe381d089c1bdd002599548afe2\",\n" +
// " \"08a29a6e978bec5631cc0d94c0fc24c9\",\n" +
// " \"9f38d3bba3e54215bb7bd15230483313\",\n" +
// " \"8d96660c9018086ff30284ca55f75f7d\",\n" +
// " \"fe43a7286d01f81bb161b1b6c3939294\",\n" +
// " \"f328a76c25842cbc33726dae9134a0db\",\n" +
// " \"baaffae1f71cd91a3b4520bf70ea27be\",\n" +
// " \"9e81d0e0fa99c61fdc3d48915abf5ed3\",\n" +
// " \"55d0b6bdbf0dcc2f96f5146660ee8a92\",\n" +
// " \"116f87a07877e8b9634453b8418c17e5\",\n" +
// " \"57ba3b1dcf7d54082b320731a0d57a72\",\n" +
// " \"a2a8819ba52354a0bac4523511d72ab6\",\n" +
// " \"59ad439eef20521ef7216ecdc997b0ce\",\n" +
// " \"848ab41e499d29d0b7c58c2fe1998f09\",\n" +
// " \"fba4a1c69c90cce0d4361648bba5c2f4\",\n" +
// " \"f13354baad7844d7ca9b544c18d09dfd\",\n" +
// " \"89bf62d0c7fa65d976fa359f213f0483\",\n" +
// " \"fedf223ba03576bc5ceac529437764c2\",\n" +
// " \"aba57c307a71138af4f7c765ab8fa105\",\n" +
// " \"a5691396d49d1bd94805960d00fb6d5f\",\n" +
// " \"3686d0c13ecf3f59064654d930aeed04\",\n" +
// " \"1c1c09f19846b78d0507c50e4e05d2b0\",\n" +
// " \"805b143e711d24e3a673b1c12379afc0\",\n" +
// " \"d8133eaf68a19c151693512fd4e3af26\",\n" +
// " \"d82dcc3394f1238398ff61eae2eb8db4\",\n" +
// " \"f42d6279de4c097c5f4a028f58de987a\",\n" +
// " \"6a02fbdea6b6428d651231f935b75c7a\",\n" +
// " \"fe3fc31f288dcdfe8daa3e81b57c530a\",\n" +
// " \"3f2e3ec9f8fbb26ce0d9bb9125ccec66\",\n" +
// " \"3ce8351055755debe665844ee453dd88\",\n" +
// " \"b36d51aea970a813c011845ce989d8fd\",\n" +
// " \"16b3d83570f0b923bfac68175cfd352c\",\n" +
// " \"421346cd137c48751181ed5c4b9c0d6f\",\n" +
// " \"f4602125d71b81be4a054877971a111e\",\n" +
// " \"18b2f315cc7bb34694d91c9bcc541b0c\",\n" +
// " \"f75f97c0303ae01a86fe3bae1ef5ecda\",\n" +
// " \"8dae51da88b1e2851c8ef3cc1dd8dfc2\",\n" +
// " \"c781096e399b02045301b1cd19f03ba5\",\n" +
// " \"39526fbaa0e250fa29175dfc97ef1d7c\",\n" +
// " \"690f1783cea0bcc0829c8dda498f7c8d\",\n" +
// " \"3e4cca5ddf62859363c91e9b3047fb5e\",\n" +
// " \"9183b8ad4a155f1312bffce091da0be2\",\n" +
// " \"b8f6e72fe057551c6cbf40ef02c5a2c2\",\n" +
// " \"ee40dda2ca7d238d5b5f10cd31361736\",\n" +
// " \"d1ceeeced8f069ab4bb431cceb8b2de8\",\n" +
// " \"74bf90314effb7fa47b77da32f1c1ef4\",\n" +
// " \"ca197cc9377c4b66d18098c31fcae8e3\",\n" +
// " \"0c39c3d5e3a1be33dae8d36dca9b941f\",\n" +
// " \"ae3aeb66fc52ea9ee61645c87f496c80\",\n" +
// " \"631d4b02cb48a00e2200a00f49abf2d1\",\n" +
// " \"21651887872ac921d4c5e2f1da07b032\",\n" +
// " \"2b5c37aadfcc981a71e783bbcedf88f9\",\n" +
// " \"aa3d89ab4b977e2bce82c5b79fd721c7\",\n" +
// " \"ea6dec33400c0eda4fc37dc498fb658e\",\n" +
// " \"bef481c3bf02b926dea11c2565ee0378\",\n" +
// " \"d54380d076fe8d46337612a6a8c524f6\",\n" +
// " \"24f9fdd6c8527657576b939577ed1673\",\n" +
// " \"1bd4509e12c461cf4bd7c5ecad38fbdc\",\n" +
// " \"6cb871732e48ab42230a5805045e57af\",\n" +
// " \"d135c4f9363ad01e5168f062719a0296\",\n" +
// " \"952003b7848165a48e9ebe6a54c103bd\",\n" +
// " \"ff704eec813983696c90049a086181f8\",\n" +
// " \"6c2cfa2d90ea5b52807502c1f02fa347\",\n" +
// " \"f8816329d702cc5cf16a3d272d671648\",\n" +
// " \"7d78b2aa6b084817b3b1085464336b86\",\n" +
// " \"dda1a1231375311527787a39850fd8d1\",\n" +
// " \"e4e9c3ce1a0a1b396c178fb76edb6153\",\n" +
// " \"c79803b16de574bdbba66de70f7b59e1\",\n" +
// " \"80bf83762262efc0bfc67014c916f1d7\",\n" +
// " \"8ac625778cef60b89fe8f4a59e0466bf\",\n" +
// " \"2481403d6f0eef5affa5a0e71f7d8c8c\",\n" +
// " \"335a78b49f238ab56d64dac1a5019732\",\n" +
// " \"1cfdad131e921893ddf20348491f104f\",\n" +
// " \"d7dc5e45793c7c660186a75c9fdcf3d8\",\n" +
// " \"dbed5203f4e93a5f44e502edc2c3dae6\",\n" +
// " \"f3fa8544b0df27b08de484ece7af9b22\",\n" +
// " \"97f1f95795dcc457b6cd41ef38e2e3f4\",\n" +
// " \"535f9eff35d505dc7870d0223372317e\",\n" +
// " \"5a65cb73edf228e43e5ec7a0d9e35d11\",\n" +
// " \"c652fa1f543a5aac3c54e4f303d95fd8\",\n" +
// " \"58f344af596019a9ff7a969412dc4ae5\",\n" +
// " \"dc427f2c95d824c9e22f083b6d2eb9ff\",\n" +
// " \"8be7987281d0a189c953281070d702a3\",\n" +
// " \"aba0d9a11b241e860096c2fcd227cf2f\",\n" +
// " \"b0cb73619a9b58f49acc1b942a40e351\",\n" +
// " \"a21a3ccf3416cf1bbc5c8fdeb33de353\",\n" +
// " \"d05303c7d505dce2fe25e8c213e955e8\",\n" +
// " \"c98a199fd7d3ad9a8158979bf464487a\",\n" +
// " \"ff49db156c7fcb0e45fc83cab0b04edd\",\n" +
// " \"03a259fb06f21adc33a3f9e07b3c3e4d\",\n" +
// " \"047426b99b8b6b329f80147657893db0\",\n" +
// " \"055ba8d45f10841eab7d54eb6cec11a7\",\n" +
// " \"061df8fe301775e4bcc8e7b04d7892cb\",\n" +
// " \"0641bb30e105de66d413de6e04c0ca9d\",\n" +
// " \"06d23bce61732b8f1e033884834f1d3a\",\n" +
// " \"06e27b3d297ac20a2cb921f1311ea43d\",\n" +
// " \"075a2a31c11d54ca7c76939bab614d6b\",\n" +
// " \"0938cd49fb8a3a4003a463eba446b218\",\n" +
// " \"09f97118b13cb96a197eeb4b692270c8\",\n" +
// " \"0fbab8066889e534bfd04910b0a2792d\",\n" +
// " \"16219b8c6d70cb2b295f319a0fa2a738\",\n" +
// " \"16b67037d3f018deaeaf8cf31a1698c7\",\n" +
// " \"1c1a175f416cd0b9a25714e6575d034f\",\n" +
// " \"1d9ab4fe794be00836aa3d1fe6b51e5f\",\n" +
// " \"1ff7f3236545c92283aa905b8db806b9\",\n" +
// " \"28182a6043fb4fc1555bec1535a18a0e\",\n" +
// " \"2a5fc0e81de4a30798c0e5a2d91183e0\",\n" +
// " \"2c218639bc1be757d772e52059aef01a\",\n" +
// " \"2c4e6b8fd1caafc31f4aa6196762fdec\",\n" +
// " \"2e8bb380ac30557121cc07cedef84e43\",\n" +
// " \"317bef2d7a514e78469f9856d7cc6aac\",\n" +
// " \"32b96c7d6a9d9a71af9c8c666cc98f86\",\n" +
// " \"333ec0ccc9132edff049b062d728906c\",\n" +
// " \"35f3156025c3379c9a769f1c5b75681e\",\n" +
// " \"398b2afb6dd2668d89a97f1c6ec7d170\",\n" +
// " \"39ad613cfe96b46dab06322931e62917\",\n" +
// " \"3abcf3b1c1b6cd788d393e2bd26045de\",\n" +
// " \"4b827e48bb2964e94d957f378d548471\",\n" +
// " \"54f74227018a100920d145cef076bd14\",\n" +
// " \"55457be300f468b1ea52b7d45188866e\",\n" +
// " \"59bd4f636fafc61c2e9bceaa02b0b801\",\n" +
// " \"59f3aa9551efd16bc7e2eafcdc7ab0d4\",\n" +
// " \"5e06b76ebb9568fe9b0da6b7c40e5f76\",\n" +
// " \"5f01929e04804a97aa8795ed652b5eff\",\n" +
// " \"603610024356083e6815d823ee03a38d\",\n" +
// " \"63aacf268607dbd2a80b97932ac0c24d\",\n" +
// " \"661fa1b6bcf42feda1fb16d9f3e0541e\",\n" +
// " \"6febf9776570657b0dc868f27e15f070\",\n" +
// " \"7043788eb621c224b6c5bbc67d534ac3\",\n" +
// " \"70b8b55da7d27d0ad9cd3c58edc44e9e\",\n" +
// " \"7688d190a877f2f6d016e6f1760ae59c\",\n" +
// " \"76e4a720a0249e02650a5bf927c2caf9\",\n" +
// " \"7840229cc165ab7786a2c52c9d9fe9f8\",\n" +
// " \"84b20cfc55a6d6f967a92d376ea289e1\",\n" +
// " \"949480754c00b714fdbdb1e0cd067770\",\n" +
// " \"97d76858c64e8891efd5845a6aa1fe8a\",\n" +
// " \"a13aed521d7a073be065d96a19fc6bcb\",\n" +
// " \"a3399f749bded59901c9680869af1ba7\",\n" +
// " \"a4d14f379f1333d9541f41ffc169decc\",\n" +
// " \"a5b509775d3ba88d5ea994965c3495b4\",\n" +
// " \"a7969d42cf37bc25d4b979e766548f13\",\n" +
// " \"a877a624bb990607aa36904b89ecbb11\",\n" +
// " \"aa73fdb54b6cecfca93815863d0ce774\",\n" +
// " \"aaa4d37e953adb58bc9deedd35a32e9d\",\n" +
// " \"ac46e2e258ff2ae996f7d7956f16b28a\",\n" +
// " \"ae261072db38265bbbd71c546309c838\",\n" +
// " \"b1e8b65b6f734190d4e7ffe1b9c0cce0\",\n" +
// " \"bc73e7cab1d79ecbc11cf0d2aa420c59\",\n" +
// " \"c1d73e7d230e4851f7e55e65d13d1925\",\n" +
// " \"c5e572cafe877bba85881c17f6529838\",\n" +
// " \"c7f9a6456aebb494dd56678102c5c3b2\",\n" +
// " \"c96e3a72fd9b5fabec6ae6d48744e28e\",\n" +
// " \"d0fbfb495aef9c2d12faae43c39cc4ca\",\n" +
// " \"d27e98d1d8cb990ddb1ea1a970b118f6\",\n" +
// " \"d6fe0be96e1637d5f74a73c4649ebc5b\",\n" +
// " \"d737b09de5e54550e53fdf15d20cb70c\",\n" +
// " \"db03c7c71087e5c71a0ae1a165bf34d0\",\n" +
// " \"dd58366eaeaada64ec15511dc66caf2c\",\n" +
// " \"e1aba608a398e1fa4f74283bb79d35cd\",\n" +
// " \"e69b305fa7d087a8425686dfb30c9350\",\n" +
// " \"efa6fece9e66e9d68295f17462452dd4\",\n" +
// " \"f2b0ea13ea8ef6e7c321a7e1b527b79a\",\n" +
// " \"f2d5e26e7e8a22c2b293fba6e8e55f87\",\n" +
// " \"f4e38bfdd33fd3588f253ebefc6eaff2\",\n" +
// " \"ff6dedebe09b60f3aaef7e03699f976f\"\n" +
// " ]\n" +
// " }\n" +
// " }\n" +
// "}");
readEsMap.put("es.query","{\n" +
" \"query\": {\n" +
" \"terms\": {\n" +
" \"pmid\": [\n" +
" \"26720029\",\n" +
" \"25536254\",\n" +
" \"25038372\",\n" +
" \"25803346\",\n" +
" \"25038355\",\n" +
" \"24756516\",\n" +
"\"25038354\",\n" +
"\"27179849\",\n" +
"\"27218629\",\n" +
"\"25038359\",\n" +
"\"27552618\",\n" +
"\"26103028\",\n" +
"\"15364188\",\n" +
"\"16257340\",\n" +
"\"15464183\",\n" +
"\"15910950\",\n" +
"\"15836888\",\n" +
"\"15950714\",\n" +
"\"15325832\",\n" +
"\"16039331\",\n" +
"\"16226614\",\n" +
"\"16154016\",\n" +
"\"16125588\",\n" +
"\"15766987\",\n" +
"\"15752530\",\n" +
"\"16125585\",\n" +
"\"16182899\",\n" +
"\"15680455\",\n" +
"\"15924975\",\n" +
"\"16005334\",\n" +
"\"15836887\",\n" +
"\"16182898\",\n" +
"\"15894087\",\n" +
"\"16084253\",\n" +
"\"15276394\",\n" +
"\"15781101\",\n" +
"\"15766996\",\n" +
"\"16084256\",\n" +
"\"16084255\",\n" +
"\"15351192\",\n" +
"\"15380963\",\n" +
"\"15894098\",\n" +
"\"15276392\",\n" +
"\"15680453\",\n" +
"\"15866311\",\n" +
"\"15794969\",\n" +
"\"15733717\",\n" +
"\"15766989\",\n" +
"\"16099293\",\n" +
"\"16054939\",\n" +
"\"15850626\",\n" +
"\"15639680\",\n" +
"\"15910949\",\n" +
"\"15794968\",\n" +
"\"15325831\",\n" +
"\"15680456\",\n" +
"\"15733708\",\n" +
"\"15302194\",\n" +
"\"15474134\",\n" +
"\"16125590\",\n" +
"\"15555666\",\n" +
"\"16168781\",\n" +
"\"15234855\",\n" +
"\"15850623\",\n" +
"\"15337403\",\n" +
"\"16125580\",\n" +
"\"15993234\",\n" +
"\"16154017\",\n" +
"\"15325833\",\n" +
"\"16154019\",\n" +
"\"15767001\",\n" +
"\"15500895\",\n" +
"\"15639293\",\n" +
"\"15325834\",\n" +
"\"15752529\",\n" +
"\"15766995\",\n" +
"\"16168780\",\n" +
"\"15364185\",\n" +
"\"15823381\",\n" +
"\"15781104\",\n" +
"\"15910943\",\n" +
"\"15936419\",\n" +
"\"15262092\",\n" +
"\"16054937\",\n" +
"\"15351193\",\n" +
"\"15364186\",\n" +
"\"15936423\",\n" +
"\"15643700\",\n" +
"\"16039339\",\n" +
"\"16139655\",\n" +
"\"15500885\",\n" +
"\"15752534\",\n" +
"\"15451211\",\n" +
"\"15541448\",\n" +
"\"15464184\",\n" +
"\"15794974\",\n" +
"\"15364184\",\n" +
"\"15276393\",\n" +
"\"15978928\",\n" +
"\"15351191\",\n" +
"\"15885294\",\n" +
"\"16226616\",\n" +
"\"15234856\",\n" +
"\"15639668\",\n" +
"\"15936421\",\n" +
"\"16182882\",\n" +
"\"8541765\",\n" +
"\"12709466\",\n" +
"\"12709455\",\n" +
"\"12387655\",\n" +
"\"6374178\",\n" +
"\"11368733\",\n" +
"\"11798370\",\n" +
"\"12020303\",\n" +
"\"11086366\",\n" +
"\"12709465\",\n" +
"\"11368732\",\n" +
"\"11667934\",\n" +
"\"12504395\",\n" +
"\"12504397\",\n" +
"\"11784622\",\n" +
"\"74731\",\n" +
"\"11784627\",\n" +
"\"12504396\",\n" +
"\"11784631\",\n" +
"\"30167679\",\n" +
"\"30167682\",\n" +
"\"30102163\",\n" +
"\"29900867\",\n" +
"\"30017138\",\n" +
"\"30191818\",\n" +
"\"29900871\",\n" +
"\"29900870\",\n" +
"\"29976467\",\n" +
"\"29327834\",\n" +
"\"11652360\",\n" +
"\"11653066\",\n" +
"\"25803347\",\n" +
"\"27218648\",\n" +
"\"27552630\",\n" +
"\"25803343\",\n" +
"\"27218644\",\n" +
"\"26720038\",\n" +
"\"26103040\",\n" +
"\"27218642\",\n" +
"\"25335163\",\n" +
"\"27552613\",\n" +
"\"24756520\",\n" +
"\"25038361\",\n" +
"\"24756521\",\n" +
"\"27552627\",\n" +
"\"25803359\",\n" +
"\"26717028\",\n" +
"\"24449317\",\n" +
"\"25420013\",\n" +
"\"27218635\",\n" +
"\"25803358\",\n" +
"\"25803332\",\n" +
"\"24449302\",\n" +
"\"25038351\",\n" +
"\"27552620\",\n" +
"\"24449312\",\n" +
"\"25335164\",\n" +
"\"25335151\",\n" +
"\"26103041\",\n" +
"\"27552625\",\n" +
"\"25335142\",\n" +
"\"25803331\",\n" +
"\"27552614\",\n" +
"\"25803330\",\n" +
"\"24449330\",\n" +
"\"24756505\",\n" +
"\"26103012\",\n" +
"\"27367226\",\n" +
"\"27002462\",\n" +
"\"25536262\",\n" +
"\"24756492\",\n" +
"\"26039283\",\n" +
"\"24756490\",\n" +
"\"26594834\",\n" +
"\"26103025\",\n" +
"\"25006756\",\n" +
"\"25536270\",\n" +
"\"24756530\",\n" +
"\"26720037\",\n" +
"\"24394945\",\n" +
"\"25742306\",\n" +
"\"26660329\",\n" +
"\"26103044\",\n" +
"\"25335141\",\n" +
"\"27552633\",\n" +
"\"24449303\",\n" +
"\"25335144\",\n" +
"\"25038368\",\n" +
"\"25335129\",\n" +
"\"25803344\",\n" +
"\"27218633\",\n" +
"\"27464338\",\n" +
"\"25536252\",\n" +
"\"25705993\",\n" +
"\"24449296\",\n" +
"\"27002432\",\n" +
"\"26103031\",\n" +
"\"24756491\",\n" +
"\"24449298\",\n" +
"\"25536241\",\n" +
"\"26720034\",\n" +
"\"25279433\",\n" +
"\"25038331\",\n" +
"\"26720013\",\n" +
"\"24756518\",\n" +
"\"24756509\",\n" +
"\"25038373\",\n" +
"\"27552629\",\n" +
"\"25335128\",\n" +
"\"25038353\",\n" +
"\"27218615\",\n" +
"\"25536239\",\n" +
"\"26942769\",\n" +
"\"15474129\",\n" +
"\"15705448\",\n" +
"\"15589291\",\n" +
"\"16121410\",\n" +
"\"15999402\",\n" +
"\"15866299\",\n" +
"\"15652601\",\n" +
"\"15351168\",\n" +
"\"15652598\",\n" +
"\"15841564\",\n" +
"\"15555646\",\n" +
"\"15924974\",\n" +
"\"16084248\",\n" +
"\"15541435\",\n" +
"\"15856541\",\n" +
"\"16178073\",\n" +
"\"15799094\",\n" +
"\"15936404\",\n" +
"\"16005317\",\n" +
"\"15530610\",\n" +
"\"16189867\",\n" +
"\"16054943\",\n" +
"\"15364191\",\n" +
"\"15733720\",\n" +
"\"15936408\",\n" +
"\"15262078\",\n" +
"\"15639301\",\n" +
"\"15811437\",\n" +
"\"15582050\",\n" +
"\"15712387\",\n" +
"\"15382363\",\n" +
"\"15517699\",\n" +
"\"15856540\",\n" +
"\"16089000\",\n" +
"\"15672484\",\n" +
"\"15313336\",\n" +
"\"15864858\",\n" +
"\"15451201\",\n" +
"\"16112279\",\n" +
"\"15664218\",\n" +
"\"15781079\",\n" +
"\"15279001\",\n" +
"\"15488223\",\n" +
"\"15451218\",\n" +
"\"15589296\",\n" +
"\"15474114\",\n" +
"\"15889459\",\n" +
"\"15582048\",\n" +
"\"15530636\",\n" +
"\"15237533\",\n" +
"\"15290840\",\n" +
"\"16139637\",\n" +
"\"15234844\",\n" +
"\"15290838\",\n" +
"\"15464167\",\n" +
"\"15971299\",\n" +
"\"16127806\",\n" +
"\"15993227\",\n" +
"\"15954216\",\n" +
"\"15978922\",\n" +
"\"15680445\",\n" +
"\"15672482\",\n" +
"\"15380946\",\n" +
"\"16182892\",\n" +
"\"15288725\",\n" +
"\"16028310\",\n" +
"\"16099277\",\n" +
"\"16226597\",\n" +
"\"15856547\",\n" +
"\"15885291\",\n" +
"\"15639657\",\n" +
"\"15534945\",\n" +
"\"16154009\",\n" +
"\"16257327\",\n" +
"\"15954217\",\n" +
"\"15288746\",\n" +
"\"15752525\",\n" +
"\"15276399\",\n" +
"\"15752510\",\n" +
"\"15325811\",\n" +
"\"15288724\",\n" +
"\"16168755\",\n" +
"\"15705441\",\n" +
"\"16084239\",\n" +
"\"15302170\",\n" +
"\"16168763\",\n" +
"\"16118902\",\n" +
"\"15978910\",\n" +
"\"15262095\",\n" +
"\"15781082\",\n" +
"\"15836877\",\n" +
"\"16243080\",\n" +
"\"15866290\",\n" +
"\"16112292\",\n" +
"\"15823367\",\n" +
"\"16182891\",\n" +
"\"15313351\",\n" +
"\"15850619\",\n" +
"\"15964432\",\n" +
"\"15794953\",\n" +
"\"15555655\",\n" +
"\"16099269\",\n" +
"\"15664215\",\n" +
"\"15288716\",\n" +
"\"15610781\",\n" +
"\"15500883\",\n" +
"\"15724276\",\n" +
"\"15781097\",\n" +
"\"15566993\",\n" +
"\"15993215\",\n" +
"\"15799097\",\n" +
"\"15841559\",\n" +
"\"15954219\",\n" +
"\"15541429\",\n" +
"\"15639300\",\n" +
"\"16257332\",\n" +
"\"15464162\",\n" +
"\"15811455\",\n" +
"\"15799095\",\n" +
"\"15328601\",\n" +
"\"15288726\",\n" +
"\"15794960\",\n" +
"\"16153999\",\n" +
"\"15964428\",\n" +
"\"15380952\",\n" +
"\"15262097\",\n" +
"\"16010706\",\n" +
"\"15705438\",\n" +
"\"15680448\",\n" +
"\"16257329\",\n" +
"\"15950708\",\n" +
"\"15500889\",\n" +
"\"15823385\",\n" +
"\"15978912\",\n" +
"\"15924989\",\n" +
"\"15451229\",\n" +
"\"15567016\",\n" +
"\"16168775\",\n" +
"\"15915563\",\n" +
"\"15288718\",\n" +
"\"15262086\",\n" +
"\"16118904\",\n" +
"\"16243084\",\n" +
"\"15384207\",\n" +
"\"16112307\",\n" +
"\"15705445\",\n" +
"\"15302175\",\n" +
"\"15733702\",\n" +
"\"16247887\",\n" +
"\"15593404\",\n" +
"\"16182877\",\n" +
"\"16054926\",\n" +
"\"15781087\",\n" +
"\"15470807\",\n" +
"\"16154005\",\n" +
"\"16112287\",\n" +
"\"15993223\",\n" +
"\"15915564\",\n" +
"\"15726696\",\n" +
"\"15464181\",\n" +
"\"15652590\",\n" +
"\"15868654\",\n" +
"\"15589313\",\n" +
"\"15794961\",\n" +
"\"15772999\",\n" +
"\"15500868\",\n" +
"\"15643696\",\n" +
"\"15589303\",\n" +
"\"15657983\",\n" +
"\"15464173\",\n" +
"\"15325827\",\n" +
"\"15351184\",\n" +
"\"15582053\",\n" +
"\"15234831\",\n" +
"\"16226612\",\n" +
"\"15451207\",\n" +
"\"15954218\",\n" +
"\"15313340\",\n" +
"\"15337383\",\n" +
"\"15364168\",\n" +
"\"15614938\",\n" +
"\"15313365\",\n" +
"\"15822167\",\n" +
"\"15672483\",\n" +
"\"15530618\",\n" +
"\"15325810\",\n" +
"\"15885279\",\n" +
"\"16084245\",\n" +
"\"15546170\",\n" +
"\"16231412\",\n" +
"\"15262079\",\n" +
"\"16084260\",\n" +
"\"15519630\",\n" +
"\"16005316\",\n" +
"\"15451203\",\n" +
"\"16125577\",\n" +
"\"15680458\",\n" +
"\"16257346\",\n" +
"\"15978908\",\n" +
"\"15978907\",\n" +
"\"15978925\",\n" +
"\"15639272\",\n" +
"\"15264361\",\n" +
"\"16193615\",\n" +
"\"15968748\",\n" +
"\"15276366\",\n" +
"\"15565745\",\n" +
"\"16139643\",\n" +
"\"15519610\",\n" +
"\"16173117\",\n" +
"\"15338565\",\n" +
"\"16084242\",\n" +
"\"15281216\",\n" +
"\"15781089\",\n" +
"\"15500887\",\n" +
"\"15570702\",\n" +
"\"15464169\",\n" +
"\"15664217\",\n" +
"\"15488197\",\n" +
"\"15610782\",\n" +
"\"15752517\",\n" +
"\"16161214\",\n" +
"\"16243079\",\n" +
"\"15325825\",\n" +
"\"15570696\",\n" +
"\"16243085\",\n" +
"\"16005330\",\n" +
"\"15246722\",\n" +
"\"16054927\",\n" +
"\"16060049\",\n" +
"\"15766983\",\n" +
"\"16178121\",\n" +
"\"15366222\",\n" +
"\"15993217\",\n" +
"\"15639676\",\n" +
"\"16153993\",\n" +
"\"15709233\",\n" +
"\"15610783\",\n" +
"\"16182876\",\n" +
"\"15993222\",\n" +
"\"15262110\",\n" +
"\"15652583\",\n" +
"\"15999401\",\n" +
"\"15836872\",\n" +
"\"15643703\",\n" +
"\"15910942\",\n" +
"\"15351196\",\n" +
"\"15337382\",\n" +
"\"16084234\",\n" +
"\"15288719\",\n" +
"\"15781105\",\n" +
"\"15246714\",\n" +
"\"16154000\",\n" +
"\"16154024\",\n" +
"\"15936427\",\n" +
"\"16023516\",\n" +
"\"15451231\",\n" +
"\"16257331\",\n" +
"\"15721459\",\n" +
"\"16054932\",\n" +
"\"16112289\",\n" +
"\"15885298\",\n" +
"\"15470806\",\n" +
"\"15325815\",\n" +
"\"15733723\",\n" +
"\"16145749\",\n" +
"\"15337408\",\n" +
"\"15276368\",\n" +
"\"15841558\",\n" +
"\"16039315\",\n" +
"\"15488214\",\n" +
"\"15721476\",\n" +
"\"15816074\",\n" +
"\"15519620\",\n" +
"\"15570695\",\n" +
"\"15752526\",\n" +
"\"15610803\",\n" +
"\"15351179\",\n" +
"\"15500873\",\n" +
"\"15828079\",\n" +
"\"15864827\",\n" +
"\"16104070\",\n" +
"\"15595195\",\n" +
"\"15541431\",\n" +
"\"16168770\",\n" +
"\"15773002\",\n" +
"\"15288727\",\n" +
"\"15337380\",\n" +
"\"15276376\",\n" +
"\"15451228\",\n" +
"\"16005341\",\n" +
"\"15664219\",\n" +
"\"15530614\",\n" +
"\"15246737\",\n" +
"\"15828082\",\n" +
"\"15664223\",\n" +
"\"15733696\",\n" +
"\"15978914\",\n" +
"\"15541427\",\n" +
"\"15570694\",\n" +
"\"15305438\",\n" +
"\"15555653\",\n" +
"\"15685723\",\n" +
"\"15276401\",\n" +
"\"15639284\",\n" +
"\"15816071\",\n" +
"\"15276370\",\n" +
"\"15451208\",\n" +
"\"15313338\",\n" +
"\"16189868\",\n" +
"\"15962458\",\n" +
"\"15500876\",\n" +
"\"16261671\",\n" +
"\"15262090\",\n" +
"\"15712388\",\n" +
"\"15971298\",\n" +
"\"15246708\",\n" +
"\"16084235\",\n" +
"\"15940811\",\n" +
"\"15889460\",\n" +
"\"15752514\",\n" +
"\"15993219\",\n" +
"\"15794966\",\n" +
"\"15864835\",\n" +
"\"15519618\",\n" +
"\"15325816\",\n" +
"\"15936405\",\n" +
"\"15889463\",\n" +
"\"16257328\",\n" +
"\"15680442\",\n" +
"\"15850616\",\n" +
"\"15589305\",\n" +
"\"15589304\",\n" +
"\"15589292\",\n" +
"\"15519616\",\n" +
"\"15940816\",\n" +
"\"15380970\",\n" +
"\"15680435\",\n" +
"\"15652584\",\n" +
"\"15752522\",\n" +
"\"15823364\",\n" +
"\"15850614\",\n" +
"\"15246725\",\n" +
"\"15519619\",\n" +
"\"15811447\",\n" +
"\"15664233\",\n" +
"\"15936416\",\n" +
"\"15313352\",\n" +
"\"15766979\",\n" +
"\"15364193\",\n" +
"\"16168761\",\n" +
"\"16099279\",\n" +
"\"15329944\",\n" +
"\"15950700\",\n" +
"\"15488207\",\n" +
"\"15639292\",\n" +
"\"15288732\",\n" +
"\"15836885\",\n" +
"\"15325821\",\n" +
"\"15889458\",\n" +
"\"15246709\",\n" +
"\"16226595\",\n" +
"\"16047407\",\n" +
"\"16168777\",\n" +
"\"15364170\",\n" +
"\"15555648\",\n" +
"\"15493073\",\n" +
"\"15337390\",\n" +
"\"15451212\",\n" +
"\"15705443\",\n" +
"\"15481104\",\n" +
"\"15325813\",\n" +
"\"15380968\",\n" +
"\"15936417\",\n" +
"\"16139660\",\n" +
"\"16168766\",\n" +
"\"15366227\",\n" +
"\"16154013\",\n" +
"\"15841557\",\n" +
"\"15915560\",\n" +
"\"15302186\",\n" +
"\"15950703\",\n" +
"\"15811450\",\n" +
"\"16243071\",\n" +
"\"15766994\",\n" +
"\"15836892\",\n" +
"\"15451202\",\n" +
"\"15382362\",\n" +
"\"16226610\",\n" +
"\"15337381\",\n" +
"\"15894097\",\n" +
"\"16139636\",\n" +
"\"15481120\",\n" +
"\"16023491\",\n" +
"\"15680437\",\n" +
"\"15351200\",\n" +
"\"15262100\",\n" +
"\"15836870\",\n" +
"\"15262084\",\n" +
"\"16054924\",\n" +
"\"15721456\",\n" +
"\"15325826\",\n" +
"\"15978923\",\n" +
"\"15894101\",\n" +
"\"15781094\",\n" +
"\"16023499\",\n" +
"\"16005324\",\n" +
"\"15351189\",\n" +
"\"15915559\",\n" +
"\"15652599\",\n" +
"\"15936429\",\n" +
"\"15610790\",\n" +
"\"16168768\",\n" +
"\"15325814\",\n" +
"\"15341018\",\n" +
"\"15302173\",\n" +
"\"15234848\",\n" +
"\"15589293\",\n" +
"\"15721462\",\n" +
"\"15742472\",\n" +
"\"15455486\",\n" +
"\"15639278\",\n" +
"\"16261672\",\n" +
"\"16028312\",\n" +
"\"15566994\",\n" +
"\"15993214\",\n" +
"\"15519624\",\n" +
"\"15733712\",\n" +
"\"15742473\",\n" +
"\"16226601\",\n" +
"\"16173116\",\n" +
"\"15910956\",\n" +
"\"15786567\",\n" +
"\"15752523\",\n" +
"\"15541440\",\n" +
"\"15844226\",\n" +
"\"15823363\",\n" +
"\"16028309\",\n" +
"\"16112282\",\n" +
"\"15351177\",\n" +
"\"15964430\",\n" +
"\"15313348\",\n" +
"\"15639661\",\n" +
"\"15773000\",\n" +
"\"15664200\",\n" +
"\"15288739\",\n" +
"\"16089004\",\n" +
"\"15500903\",\n" +
"\"16075477\",\n" +
"\"15823362\",\n" +
"\"16261673\",\n" +
"\"15593403\",\n" +
"\"16010710\",\n" +
"\"15894083\",\n" +
"\"15936403\",\n" +
"\"15610787\",\n" +
"\"15474119\",\n" +
"\"15664206\",\n" +
"\"15264355\",\n" +
"\"16084261\",\n" +
"\"15451204\",\n" +
"\"15721461\",\n" +
"\"15733704\",\n" +
"\"16257324\",\n" +
"\"15639683\",\n" +
"\"15968750\",\n" +
"\"15639672\",\n" +
"\"15910947\",\n" +
"\"15823369\",\n" +
"\"15302181\",\n" +
"\"16168753\",\n" +
"\"15643702\",\n" +
"\"16168760\",\n" +
"\"16023498\",\n" +
"\"15313356\",\n" +
"\"15474128\",\n" +
"\"15978926\",\n" +
"\"15816069\",\n" +
"\"16084233\",\n" +
"\"15337384\",\n" +
"\"15680450\",\n" +
"\"15366221\",\n" +
"\"15866314\",\n" +
"\"15530603\",\n" +
"\"16005338\",\n" +
"\"16112280\",\n" +
"\"15898141\",\n" +
"\"15337391\",\n" +
"\"16257341\",\n" +
"\"15664231\",\n" +
"\"15555661\",\n" +
"\"15305439\",\n" +
"\"15566997\",\n" +
"\"15610788\",\n" +
"\"16060055\",\n" +
"\"15264353\",\n" +
"\"15582041\",\n" +
"\"15639291\",\n" +
"\"16060053\",\n" +
"\"16125565\",\n" +
"\"15672480\",\n" +
"\"15276389\",\n" +
"\"15351169\",\n" +
"\"15910945\",\n" +
"\"16039313\",\n" +
"\"15234847\",\n" +
"\"15567002\",\n" +
"\"16099280\",\n" +
"\"16168754\",\n" +
"\"15811449\",\n" +
"\"16257338\",\n" +
"\"15639273\",\n" +
"\"15630763\",\n" +
"\"16089003\",\n" +
"\"15614941\",\n" +
"\"15643704\",\n" +
"\"15530625\",\n" +
"\"15898139\",\n" +
"\"15733722\",\n" +
"\"15752519\",\n" +
"\"15452952\",\n" +
"\"15530615\",\n" +
"\"16084240\",\n" +
"\"16125572\",\n" +
"\"16226611\",\n" +
"\"15773001\",\n" +
"\"15530629\",\n" +
"\"15314835\",\n" +
"\"16112295\",\n" +
"\"15664216\",\n" +
"\"15555664\",\n" +
"\"15680449\",\n" +
"\"15582039\",\n" +
"\"15451200\",\n" +
"\"15536676\",\n" +
"\"15366225\",\n" +
"\"15885288\",\n" +
"\"15364169\",\n" +
"\"16054931\",\n" +
"\"15766990\",\n" +
"\"15811460\",\n" +
"\"15940817\",\n" +
"\"15246715\",\n" +
"\"16168784\",\n" +
"\"16257325\",\n" +
"\"16005313\",\n" +
"\"15889462\",\n" +
"\"16044533\",\n" +
"\"15566988\",\n" +
"\"15828084\",\n" +
"\"15500872\",\n" +
"\"15898137\",\n" +
"\"15779108\",\n" +
"\"15910944\",\n" +
"\"16168757\",\n" +
"\"15582047\",\n" +
"\"15464182\",\n" +
"\"16139662\",\n" +
"\"15380948\",\n" +
"\"15302178\",\n" +
"\"15500870\",\n" +
"\"15705439\",\n" +
"\"15794972\",\n" +
"\"15380950\",\n" +
"\"15451230\",\n" +
"\"16084259\",\n" +
"\"15451227\",\n" +
"\"15850617\",\n" +
"\"15380951\",\n" +
"\"15302174\",\n" +
"\"16112281\",\n" +
"\"15505894\",\n" +
"\"16243072\",\n" +
"\"15724277\",\n" +
"\"15898140\",\n" +
"\"15488196\",\n" +
"\"15262103\",\n" +
"\"15237532\",\n" +
"\"15811440\",\n" +
"\"15964427\",\n" +
"\"16099282\",\n" +
"\"15789452\",\n" +
"\"15239174\",\n" +
"\"16054928\",\n" +
"\"16226620\",\n" +
"\"15652603\",\n" +
"\"15639659\",\n" +
"\"15452951\",\n" +
"\"15672481\",\n" +
"\"16125570\",\n" +
"\"15530624\",\n" +
"\"15664212\",\n" +
"\"16089001\",\n" +
"\"16168767\",\n" +
"\"15555645\",\n" +
"\"16130228\",\n" +
"\"16116668\",\n" +
"\"15337410\",\n" +
"\"15451214\",\n" +
"\"16112285\",\n" +
"\"15924968\",\n" +
"\"15811453\",\n" +
"\"15281218\",\n" +
"\"16182893\",\n" +
"\"15936411\",\n" +
"\"15530633\",\n" +
"\"15680444\",\n" +
"\"16112297\",\n" +
"\"16139647\",\n" +
"\"15337405\",\n" +
"\"15940813\",\n" +
"\"16039327\",\n" +
"\"16226592\",\n" +
"\"16168759\",\n" +
"\"16182894\",\n" +
"\"15234846\",\n" +
"\"15999400\",\n" +
"\"15262101\",\n" +
"\"15709234\",\n" +
"\"16044532\",\n" +
"\"15364177\",\n" +
"\"15364171\",\n" +
"\"16243073\",\n" +
"\"16139635\",\n" +
"\"15470815\",\n" +
"\"15534944\",\n" +
"\"15351167\",\n" +
"\"16005319\",\n" +
"\"15505895\",\n" +
"\"15264352\",\n" +
"\"15794955\",\n" +
"\"15823379\",\n" +
"\"15380956\",\n" +
"\"15589299\",\n" +
"\"15841563\",\n" +
"\"15288715\",\n" +
"\"15823368\",\n" +
"\"16153997\",\n" +
"\"16168776\",\n" +
"\"15464171\",\n" +
"\"15816070\",\n" +
"\"15993212\",\n" +
"\"16121448\",\n" +
"\"15364180\",\n" +
"\"15262094\",\n" +
"\"15836868\",\n" +
"\"15639665\",\n" +
"\"16208779\",\n" +
"\"15993235\",\n" +
"\"15325839\",\n" +
"\"15288738\",\n" +
"\"15733697\",\n" +
"\"16116667\",\n" +
"\"15519612\",\n" +
"\"15555647\",\n" +
"\"16168765\",\n" +
"\"16116666\",\n" +
"\"15766988\",\n" +
"\"15752536\",\n" +
"\"15325807\",\n" +
"\"15924981\",\n" +
"\"15290839\",\n" +
"\"15302192\",\n" +
"\"15680434\",\n" +
"\"15850625\",\n" +
"\"15500900\",\n" +
"\"16226603\",\n" +
"\"15566987\",\n" +
"\"15721466\",\n" +
"\"15464180\",\n" +
"\"15276367\",\n" +
"\"15752518\",\n" +
"\"15685722\",\n" +
"\"15639276\",\n" +
"\"15823387\",\n" +
"\"16125567\",\n" +
"\"15856548\",\n" +
"\"15680438\",\n" +
"\"15234864\",\n" +
"\"16039318\",\n" +
"\"15488202\",\n" +
"\"15530608\",\n" +
"\"15351173\",\n" +
"\"15850638\",\n" +
"\"15302201\",\n" +
"\"15464165\",\n" +
"\"15474140\",\n" +
"\"16182883\",\n" +
"\"16182884\",\n" +
"\"16145750\",\n" +
"\"15320337\",\n" +
"\"15359481\",\n" +
"\"15555651\",\n" +
"\"15657982\",\n" +
"\"15664201\",\n" +
"\"15364175\",\n" +
"\"15451217\",\n" +
"\"15239173\",\n" +
"\"16226593\",\n" +
"\"15652596\",\n" +
"\"15530602\",\n" +
"\"16189851\",\n" +
"\"16039323\",\n" +
"\"16099271\",\n" +
"\"15337395\",\n" +
"\"15276369\",\n" +
"\"15767004\",\n" +
"\"16023506\",\n" +
"\"15836878\",\n" +
"\"15964434\",\n" +
"\"15288729\",\n" +
"\"16112286\",\n" +
"\"16023503\",\n" +
"\"15246739\",\n" +
"\"15705458\",\n" +
"\"15338567\",\n" +
"\"16125579\",\n" +
"\"15766982\",\n" +
"\"15978911\",\n" +
"\"15565744\",\n" +
"\"15993209\",\n" +
"\"15680440\",\n" +
"\"15993225\",\n" +
"\"15781092\",\n" +
"\"15721478\",\n" +
"\"15850636\",\n" +
"\"15582040\",\n" +
"\"15936413\",\n" +
"\"15889461\",\n" +
"\"15276391\",\n" +
"\"15384206\",\n" +
"\"15924987\",\n" +
"\"16168778\",\n" +
"\"15519611\",\n" +
"\"15488200\",\n" +
"\"15313362\",\n" +
"\"15999403\",\n" +
"\"16028311\",\n" +
"\"15999404\",\n" +
"\"15898136\",\n" +
"\"15856542\",\n" +
"\"15789450\",\n" +
"\"15752512\",\n" +
"\"15380945\",\n" +
"\"15850613\",\n" +
"\"16023493\",\n" +
"\"16084243\",\n" +
"\"16168762\",\n" +
"\"15664220\",\n" +
"\"15756723\",\n" +
"\"16054934\",\n" +
"\"15614940\",\n" +
"\"15328604\",\n" +
"\"15488209\",\n" +
"\"16130229\",\n" +
"\"15276383\",\n" +
"\"15313347\",\n" +
"\"15313335\",\n" +
"\"15500869\",\n" +
"\"16125566\",\n" +
"\"15680441\",\n" +
"\"15328605\",\n" +
"\"15541454\",\n" +
"\"15766976\",\n" +
"\"16154002\",\n" +
"\"15652600\",\n" +
"\"16182875\",\n" +
"\"16044531\",\n" +
"\"15789451\",\n" +
"\"16226594\",\n" +
"\"15709235\",\n" +
"\"15794962\",\n" +
"\"16023502\",\n" +
"\"15639274\",\n" +
"\"15639302\",\n" +
"\"15924965\",\n" +
"\"15570693\",\n" +
"\"15364179\",\n" +
"\"15940815\",\n" +
"\"15836884\",\n" +
"\"15794958\",\n" +
"\"15351180\",\n" +
"\"16039337\",\n" +
"\"15455485\",\n" +
"\"15779117\",\n" +
"\"15500894\",\n" +
"\"15799093\",\n" +
"\"16005332\",\n" +
"\"15541433\",\n" +
"\"15589306\",\n" +
"\"16247886\",\n" +
"\"16099295\",\n" +
"\"15799096\",\n" +
"\"15688459\",\n" +
"\"15850621\",\n" +
"\"15721453\",\n" +
"\"16044534\",\n" +
"\"15885289\",\n" +
"\"16154001\",\n" +
"\"15337386\",\n" +
"\"15325822\",\n" +
"\"16196128\",\n" +
"\"15823366\",\n" +
"\"16099284\",\n" +
"\"15262085\",\n" +
"\"15733716\",\n" +
"\"16145748\",\n" +
"\"15866300\",\n" +
"\"16060048\",\n" +
"\"15313339\",\n" +
"\"15652585\",\n" +
"\"15610795\",\n" +
"\"15288737\",\n" +
"\"15325808\",\n" +
"\"15351197\",\n" +
"\"15567005\",\n" +
"\"16039319\",\n" +
"\"15276384\",\n" +
"\"16023490\",\n" +
"\"15639658\",\n" +
"\"15582063\",\n" +
"\"15688458\",\n" +
"\"15836869\",\n" +
"\"15993229\",\n" +
"\"15680462\",\n" +
"\"15337397\",\n" +
"\"16005329\",\n" +
"\"16010705\",\n" +
"\"15500888\",\n" +
"\"15993224\",\n" +
"\"15978916\",\n" +
"\"15500882\",\n" +
"\"15836876\",\n" +
"\"16139638\",\n" +
"\"16112291\",\n" +
"\"15915561\",\n" +
"\"15541428\",\n" +
"\"16099275\",\n" +
"\"15950707\",\n" +
"\"15474123\",\n" +
"\"15836881\",\n" +
"\"16139648\",\n" +
"\"15630764\",\n" +
"\"15993228\",\n" +
"\"16010708\",\n" +
"\"15756725\",\n" +
"\"16168769\",\n" +
"\"15364181\",\n" +
"\"16243074\",\n" +
"\"15464164\",\n" +
"\"15589294\",\n" +
"\"15664221\",\n" +
"\"16182878\",\n" +
"\"15276380\",\n" +
"\"16154006\",\n" +
"\"15936426\",\n" +
"\"15451210\",\n" +
"\"15595196\",\n" +
"\"15828081\",\n" +
"\"15500891\",\n" +
"\"16039321\",\n" +
"\"15302171\",\n" +
"\"16005331\",\n" +
"\"16139652\",\n" +
"\"15639671\",\n" +
"\"15885299\",\n" +
"\"16054944\",\n" +
"\"16023492\",\n" +
"\"15351175\",\n" +
"\"15338566\",\n" +
"\"15337388\",\n" +
"\"15721454\",\n" +
"\"16089002\",\n" +
"\"15246721\",\n" +
"\"15652586\",\n" +
"\"16255085\",\n" +
"\"15314836\",\n" +
"\"15664234\",\n" +
"\"15530611\",\n" +
"\"15816072\",\n" +
"\"15566990\",\n" +
"\"15474115\",\n" +
"\"15954215\",\n" +
"\"15464176\",\n" +
"\"15936430\",\n" +
"\"15657981\",\n" +
"\"16118903\",\n" +
"\"15924970\",\n" +
"\"16125568\",\n" +
"\"16121409\",\n" +
"\"15464179\",\n" +
"\"15474127\",\n" +
"\"15680443\",\n" +
"\"15828083\",\n" +
"\"15639279\",\n" +
"\"15481121\",\n" +
"\"15823383\",\n" +
"\"16243087\",\n" +
"\"15493074\",\n" +
"\"15451220\",\n" +
"\"16257330\",\n" +
"\"15566995\",\n" +
"\"15836875\",\n" +
"\"15721474\",\n" +
"\"15262091\",\n" +
"\"15313357\",\n" +
"\"15993218\",\n" +
"\"16039328\",\n" +
"\"16005322\",\n" +
"\"15733703\",\n" +
"\"15464161\",\n" +
"\"16099270\",\n" +
"\"15288728\",\n" +
"\"15639673\",\n" +
"\"15519637\",\n" +
"\"16005333\",\n" +
"\"16154015\",\n" +
"\"15912596\",\n" +
"\"15364176\",\n" +
"\"15313344\",\n" +
"\"15610784\",\n" +
"\"15898138\",\n" +
"\"15530616\",\n" +
"\"15811463\",\n" +
"\"15733710\",\n" +
"\"15519625\",\n" +
"\"15993220\",\n" +
"\"16023504\",\n" +
"\"15290841\",\n" +
"\"15530619\",\n" +
"\"15950720\",\n" +
"\"15950701\",\n" +
"\"16023494\",\n" +
"\"15866313\",\n" +
"\"15680459\",\n" +
"\"16153998\",\n" +
"\"15488205\",\n" +
"\"15978931\",\n" +
"\"15302172\",\n" +
"\"16054922\",\n" +
"\"15752513\",\n" +
"\"15733699\",\n" +
"\"16099297\",\n" +
"\"15733726\",\n" +
"\"15643701\",\n" +
"\"15779124\",\n" +
"\"15836883\",\n" +
"\"15314834\",\n" +
"\"16139634\",\n" +
"\"15721458\",\n" +
"\"15380971\",\n" +
"\"15246713\",\n" +
"\"15584105\",\n" +
"\"15924969\",\n" +
"\"16104071\",\n" +
"\"16023509\",\n" +
"\"15705437\",\n" +
"\"15517695\",\n" +
"\"15351181\",\n" +
"\"15351170\",\n" +
"\"16028308\",\n" +
"\"15546169\",\n" +
"\"15968749\",\n" +
"\"16154022\",\n" +
"\"15756722\",\n" +
"\"16099286\",\n" +
"\"16125586\",\n" +
"\"15978906\",\n" +
"\"15752538\",\n" +
"\"15325838\",\n" +
"\"15380955\",\n" +
"\"16182879\",\n" +
"\"16039314\",\n" +
"\"15589290\",\n" +
"\"16084244\",\n" +
"\"16153994\",\n" +
"\"15351185\",\n" +
"\"15936428\",\n" +
"\"15451209\",\n" +
"\"15652594\",\n" +
"\"15313354\",\n" +
"\"15811444\",\n" +
"\"16005327\",\n" +
"\"15664208\",\n" +
"\"16257326\",\n" +
"\"16099283\",\n" +
"\"15302176\",\n" +
"\"15488208\",\n" +
"\"15811445\",\n" +
"\"15234833\",\n" +
"\"16125569\",\n" +
"\"15380969\",\n" +
"\"16084236\",\n" +
"\"15756724\",\n" +
"\"15936409\",\n" +
"\"15582042\",\n" +
"\"15894094\",\n" +
"\"15940814\",\n" +
"\"15541436\",\n" +
"\"11751346\",\n" +
"\"11644476\",\n" +
"\"11124195\",\n" +
"\"11124198\",\n" +
"\"11751359\",\n" +
"\"10948045\",\n" +
"\"10600970\",\n" +
"\"11751349\",\n" +
"\"11124188\",\n" +
"\"10600947\",\n" +
"\"10948008\",\n" +
"\"11012255\",\n" +
"\"11124183\",\n" +
"\"11012262\",\n" +
"\"10660326\",\n" +
"\"11124191\",\n" +
"\"10600974\",\n" +
"\"11124190\",\n" +
"\"10600957\",\n" +
"\"11751350\",\n" +
"\"11751368\",\n" +
"\"11012259\",\n" +
"\"10948028\",\n" +
"\"11124178\",\n" +
"\"10600975\",\n" +
"\"10948041\",\n" +
"\"10948011\",\n" +
"\"11124165\",\n" +
"\"10600971\",\n" +
"\"10600977\",\n" +
"\"11124205\",\n" +
"\"10948044\",\n" +
"\"11751356\",\n" +
"\"11751343\",\n" +
"\"11751353\",\n" +
"\"10948046\",\n" +
"\"10600980\",\n" +
"\"10600983\",\n" +
"\"11124184\",\n" +
"\"10660324\",\n" +
"\"10600948\",\n" +
"\"10600968\",\n" +
"\"10948027\",\n" +
"\"10600981\",\n" +
"\"10948033\",\n" +
"\"11124204\",\n" +
"\"11124189\",\n" +
"\"11124201\",\n" +
"\"11124182\",\n" +
"\"10600985\",\n" +
"\"10660325\",\n" +
"\"10948017\",\n" +
"\"11124172\",\n" +
"\"10600986\",\n" +
"\"10948023\",\n" +
"\"11124179\",\n" +
"\"11751369\",\n" +
"\"11124202\",\n" +
"\"11751361\",\n" +
"\"11751358\",\n" +
"\"11751354\",\n" +
"\"11751352\",\n" +
"\"11124193\",\n" +
"\"11124177\",\n" +
"\"10948040\",\n" +
"\"11644582\",\n" +
"\"11124192\",\n" +
"\"10600979\",\n" +
"\"11751362\",\n" +
"\"10948016\",\n" +
"\"10948022\",\n" +
"\"11012257\",\n" +
"\"11124200\",\n" +
"\"10600956\",\n" +
"\"11124171\",\n" +
"\"10600946\",\n" +
"\"11751360\",\n" +
"\"10948019\",\n" +
"\"10600969\",\n" +
"\"10600973\",\n" +
"\"11124185\",\n" +
"\"10948009\",\n" +
"\"11751363\",\n" +
"\"10948055\",\n" +
"\"11086368\",\n" +
"\"12141317\",\n" +
"\"11368716\",\n" +
"\"10386550\",\n" +
"\"9417003\",\n" +
"\"10188650\",\n" +
"\"10386552\",\n" +
"\"10847804\",\n" +
"\"10735381\",\n" +
"\"10501109\",\n" +
"\"12400536\",\n" +
"\"12132951\",\n" +
"\"10819928\",\n" +
"\"12387637\",\n" +
"\"11086346\",\n" +
"\"12709464\",\n" +
"\"10612327\",\n" +
"\"12387649\",\n" +
"\"12132983\",\n" +
"\"10735384\",\n" +
"\"12020302\",\n" +
"\"9416994\",\n" +
"\"11509036\",\n" +
"\"11688440\",\n" +
"\"10501115\",\n" +
"\"10501110\",\n" +
"\"11798356\",\n" +
"\"11368737\",\n" +
"\"10944631\",\n" +
"\"10819941\",\n" +
"\"10979761\",\n" +
"\"11396469\",\n" +
"\"12020294\",\n" +
"\"10944637\",\n" +
"\"10386557\",\n" +
"\"11645142\",\n" +
"\"12035789\",\n" +
"\"10501120\",\n" +
"\"10188648\",\n" +
"\"10501108\",\n" +
"\"10188666\",\n" +
"\"11086347\",\n" +
"\"10735382\",\n" +
"\"12533126\",\n" +
"\"10386539\",\n" +
"\"10944619\",\n" +
"\"11185517\",\n" +
"\"12533109\",\n" +
"\"10188644\",\n" +
"\"10735402\",\n" +
"\"10944620\",\n" +
"\"10612315\",\n" +
"\"10819958\",\n" +
"\"12533103\",\n" +
"\"11086348\",\n" +
"\"10819935\",\n" +
"\"12533102\",\n" +
"\"10735401\",\n" +
"\"9417001\",\n" +
"\"9416998\",\n" +
"\"10819930\",\n" +
"\"11798373\",\n" +
"\"10501101\",\n" +
"\"10819929\",\n" +
"\"10188665\",\n" +
"\"11368740\",\n" +
"\"11798375\",\n" +
"\"12709452\",\n" +
"\"10819927\",\n" +
"\"12533114\",\n" +
"\"11509049\",\n" +
"\"10819940\",\n" +
"\"12387636\",\n" +
"\"10819945\",\n" +
"\"10386543\",\n" +
"\"12387641\",\n" +
"\"11396467\",\n" +
"\"10979758\",\n" +
"\"12387634\",\n" +
"\"12387654\",\n" +
"\"12132962\",\n" +
"\"10386560\",\n" +
"\"10188652\",\n" +
"\"10819939\",\n" +
"\"12533115\",\n" +
"\"11368713\",\n" +
"\"10847805\",\n" +
"\"10735403\",\n" +
"\"12141318\",\n" +
"\"10979760\",\n" +
"\"12132980\",\n" +
"\"10847806\",\n" +
"\"10501105\",\n" +
"\"11185516\",\n" +
"\"10501098\",\n" +
"\"10188646\",\n" +
"\"11667922\",\n" +
"\"11396470\",\n" +
"\"12020285\",\n" +
"\"11798346\",\n" +
"\"9416992\",\n" +
"\"12132954\",\n" +
"\"10501123\",\n" +
"\"11798345\",\n" +
"\"9417004\",\n" +
"\"10944648\",\n" +
"\"10819953\",\n" +
"\"10735399\",\n" +
"\"12035788\",\n" +
"\"11529241\",\n" +
"\"12709456\",\n" +
"\"11824387\",\n" +
"\"12400538\",\n" +
"\"12709447\",\n" +
"\"10979759\",\n" +
"\"12709461\",\n" +
"\"12549461\",\n" +
"\"11368725\",\n" +
"\"9416995\",\n" +
"\"12533113\",\n" +
"\"10735387\",\n" +
"\"11509047\",\n" +
"\"10944635\",\n" +
"\"10735379\",\n" +
"\"10612310\",\n" +
"\"11798371\",\n" +
"\"10819937\",\n" +
"\"12400537\",\n" +
"\"10501121\",\n" +
"\"11509060\",\n" +
"\"12709459\",\n" +
"\"11368722\",\n" +
"\"10386563\",\n" +
"\"12709451\",\n" +
"\"10944618\",\n" +
"\"9417002\",\n" +
"\"10188655\",\n" +
"\"10612308\",\n" +
"\"12020288\",\n" +
"\"11693148\",\n" +
"\"10386542\",\n" +
"\"11652512\",\n" +
"\"11368734\",\n" +
"\"9416997\",\n" +
"\"11185515\",\n" +
"\"11645079\",\n" +
"\"10735374\",\n" +
"\"10944622\",\n" +
"\"12709472\",\n" +
"\"12709453\",\n" +
"\"12387635\",\n" +
"\"10612309\",\n" +
"\"10501100\",\n" +
"\"11509057\",\n" +
"\"11368717\",\n" +
"\"12020287\",\n" +
"\"12400535\",\n" +
"\"10735377\",\n" +
"\"12035787\",\n" +
"\"12533116\",\n" +
"\"9416993\",\n" +
"\"11185514\",\n" +
"\"11652640\",\n" +
"\"11667915\",\n" +
"\"11368736\",\n" +
"\"11086354\",\n" +
"\"10386544\",\n" +
"\"10386548\",\n" +
"\"11368738\",\n" +
"\"10735386\",\n" +
"\"12132972\",\n" +
"\"11368723\",\n" +
"\"12387656\",\n" +
"\"11529245\",\n" +
"\"12020286\",\n" +
"\"12387666\",\n" +
"\"12549487\",\n" +
"\"12709457\",\n" +
"\"12387658\",\n" +
"\"12132955\",\n" +
"\"10612326\",\n" +
"\"10944628\",\n" +
"\"12035791\",\n" +
"\"11667930\",\n" +
"\"10188649\",\n" +
"\"12709449\",\n" +
"\"10188667\",\n" +
"\"12533105\",\n" +
"\"10944649\",\n" +
"\"12533124\",\n" +
"\"10735400\",\n" +
"\"12549486\",\n" +
"\"10735385\",\n" +
"\"10501111\",\n" +
"\"10501106\",\n" +
"\"10944621\",\n" +
"\"11693145\",\n" +
"\"10612324\",\n" +
"\"12387638\",\n" +
"\"10944623\",\n" +
"\"12020282\",\n" +
"\"10188647\",\n" +
"\"10501112\",\n" +
"\"11509035\",\n" +
"\"10612323\",\n" +
"\"12709473\",\n" +
"\"11396466\",\n" +
"\"10612328\",\n" +
"\"11824388\",\n" +
"\"12549485\",\n" +
"\"12533104\",\n" +
"\"11693146\",\n" +
"\"12533107\",\n" +
"\"12709445\",\n" +
"\"12709471\",\n" +
"\"10188645\",\n" +
"\"10612312\",\n" +
"\"10819954\",\n" +
"\"11529242\",\n" +
"\"11798347\",\n" +
"\"12132963\",\n" +
"\"10944632\",\n" +
"\"11086357\",\n" +
"\"10847808\",\n" +
"\"11798342\",\n" +
"\"11798365\",\n" +
"\"10188641\",\n" +
"\"11368714\",\n" +
"\"11798353\",\n" +
"\"12132982\",\n" +
"\"10735390\",\n" +
"\"12709448\",\n" +
"\"11368739\",\n" +
"\"9417013\",\n" +
"\"12020307\",\n" +
"\"10501125\",\n" +
"\"10735376\",\n" +
"\"11368715\",\n" +
"\"11509037\",\n" +
"\"10847807\",\n" +
"\"11185518\",\n" +
"\"11368729\",\n" +
"\"11086349\",\n" +
"\"10501124\",\n" +
"\"12709446\",\n" +
"\"10735383\",\n" +
"\"10612313\",\n" +
"\"10735375\",\n" +
"\"11509043\",\n" +
"\"10188653\",\n" +
"\"10819923\",\n" +
"\"12709458\",\n" +
"\"10386545\",\n" +
"\"12709460\",\n" +
"\"11693147\",\n" +
"\"11086372\",\n" +
"\"10386549\",\n" +
"\"11798352\",\n" +
"\"11529244\",\n" +
"\"11529243\",\n" +
"\"12709462\",\n" +
"\"10735391\",\n" +
"\"11798344\",\n" +
"\"11086373\",\n" +
"\"10501104\",\n" +
"\"10188643\",\n" +
"\"10386561\",\n" +
"\"11368731\",\n" +
"\"10386554\",\n" +
"\"10386541\",\n" +
"\"11086344\",\n" +
"\"10188664\",\n" +
"\"11086355\",\n" +
"\"11396468\",\n" +
"\"12132956\",\n" +
"\"12387647\",\n" +
"\"11509061\",\n" +
"\"11667914\",\n" +
"\"10735378\",\n" +
"\"10386540\",\n" +
"\"12132981\",\n" +
"\"11784645\",\n" +
"\"11656957\",\n" +
"\"12504407\",\n" +
"\"10609812\",\n" +
"\"12504406\",\n" +
"\"10609851\",\n" +
"\"11784621\",\n" +
"\"12504408\",\n" +
"\"11784664\",\n" +
"\"11784636\",\n" +
"\"12504413\",\n" +
"\"11784652\",\n" +
"\"12504405\",\n" +
"\"10609829\",\n" +
"\"11191553\",\n" +
"\"10609807\",\n" +
"\"12504415\",\n" +
"\"11656959\",\n" +
"\"11191575\",\n" +
"\"12504421\",\n" +
"\"11191556\",\n" +
"\"11784656\",\n" +
"\"12504388\",\n" +
"\"11191565\",\n" +
"\"12504417\",\n" +
"\"12504457\",\n" +
"\"11656958\",\n" +
"\"11191550\",\n" +
"\"11784646\",\n" +
"\"11657825\",\n" +
"\"10609831\",\n" +
"\"12504412\",\n" +
"\"11191531\",\n" +
"\"10609859\",\n" +
"\"10609836\",\n" +
"\"11191577\",\n" +
"\"10609842\",\n" +
"\"11191555\",\n" +
"\"11657826\",\n" +
"\"11659182\",\n" +
"\"11784643\",\n" +
"\"11191557\",\n" +
"\"11784616\",\n" +
"\"10609823\",\n" +
"\"10609810\",\n" +
"\"11191536\",\n" +
"\"12504436\",\n" +
"\"11784633\",\n" +
"\"12504398\",\n" +
"\"11654535\",\n" +
"\"11784641\",\n" +
"\"11191574\",\n" +
"\"11191551\",\n" +
"\"11191560\",\n" +
"\"11784672\",\n" +
"\"11784653\",\n" +
"\"10609854\",\n" +
"\"11191552\",\n" +
"\"10609809\",\n" +
"\"10609860\",\n" +
"\"11657827\",\n" +
"\"11191534\",\n" +
"\"10609856\",\n" +
"\"10609830\",\n" +
"\"12504414\",\n" +
"\"12504449\",\n" +
"\"10609832\",\n" +
"\"11191559\",\n" +
"\"11784651\",\n" +
"\"11784673\",\n" +
"\"11663311\",\n" +
"\"12504416\",\n" +
"\"12504441\",\n" +
"\"12504389\",\n" +
"\"11784620\",\n" +
"\"11784644\",\n" +
"\"11784642\",\n" +
"\"12504427\",\n" +
"\"12504409\",\n" +
"\"12504393\",\n" +
"\"11663310\",\n" +
"\"12504391\",\n" +
"\"12504460\",\n" +
"\"11191576\",\n" +
"\"11784639\",\n" +
"\"11191530\",\n" +
"\"11784640\",\n" +
"\"11191563\",\n" +
"\"11784650\",\n" +
"\"12504420\",\n" +
"\"11784671\",\n" +
"\"11784654\",\n" +
"\"11784638\",\n" +
"\"11784618\",\n" +
"\"10609837\",\n" +
"\"12504410\",\n" +
"\"11653929\",\n" +
"\"11191562\",\n" +
"\"11784617\",\n" +
"\"11784649\",\n" +
"\"11191532\",\n" +
"\"12504448\",\n" +
"\"12504432\",\n" +
"\"10609833\",\n" +
"\"11191554\"\n" +
" ]\n" +
" }\n" +
" }\n" +
"}");
readEsMap.put("es.resource","dm_map_literature_1");
// readEsMap.put("es.read.field.include","expiry_date");
JavaPairRDD<String, String> returnRDD = JavaEsSpark.esJsonRDD(jsc, readEsMap);
JavaPairRDD<String, Map<String, Object>> newRDD = returnRDD.mapToPair(new PairFunction<Tuple2<String, String>, String, Map<String, Object>>() {
@Override
public Tuple2<String, Map<String, Object>> call(Tuple2<String, String> stringStringTuple2) throws Exception {
String key_id = stringStringTuple2._1;
String s = stringStringTuple2._2;
Map<String, Object> innerMap = JSON.parseObject(s).getInnerMap();
// Object expiry_date = innerMap.get("expiry_date");
// Object expiry_date_new = EFFECTIVE_DATE_RANGE_CHECK(expiry_date, "1995-04-01", "1");
// innerMap.put("expiry_date",expiry_date_new);
return new Tuple2<>(key_id,innerMap);
}
});
newRDD.foreach(new VoidFunction<Tuple2<String, Map<String, Object>>>() {
@Override
public void call(Tuple2<String, Map<String, Object>> stringMapTuple2) throws Exception {
System.out.println(stringMapTuple2._2.get("author") + "," + stringMapTuple2._2.get("journal") + "," + stringMapTuple2._2.get("title"));
// File writename = new File("E:\\公司\\学习\\output.txt"); // 相对路径,如果没有则要建立一个新的output。txt文件
// writename.createNewFile(); // 创建新文件
//// BufferedWriter out = new BufferedWriter(new FileWriter(writename));
// BufferedWriter out = null;
// out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(writename, true)));
// out.write(stringMapTuple2._2.get("publish_year") + "\r\n"); // \r\n即为换行
// out.flush(); // 把缓存区内容压入文件
// out.close(); // 最后记得关闭文件
}
});
}
public static Object EFFECTIVE_DATE_RANGE_CHECK(Object date, Object year,Object last_year) throws ParseException {
/*int yearInt = 50;
if (year instanceof String) {
try {
yearInt = Integer.parseInt((String) year);
} catch (NumberFormatException e) {
e.printStackTrace();
}
}*/
String str_last_year = String.valueOf(last_year);
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date max_date = null;
if(str_last_year.equals("1")){
max_date = new Date();
System.out.println(df.format(max_date));
}else if (str_last_year.contains("+")){
// yearInt * 365 * 24 * 60 * 60 * 1000
int later_int = Integer.valueOf(StringUtils.split(str_last_year,"+")[1]);
Date date1 = new Date();
max_date = new Date(date1.getTime() + (long)later_int * 365 * 24 * 60 * 60 * 1000);
String format = df.format(max_date);
System.out.println(format);
} else{
max_date = df.parse(String.valueOf(last_year));
}
// new Date()为获取当前系统时间
Date min_date = df.parse(String.valueOf(year));
// Date today = new Date();
if (date instanceof String) {
if ("".equals(date) || "".equals(((String) date).trim())) {
return null;
} else if (FORMATE_YMD(date) == null) {
return null;
} else {
String date_string = (String) FORMATE_YMD(date);
if (df.parse(date_string).getTime() < min_date.getTime() || df.parse(date_string).getTime() > max_date.getTime()) {
return null;
}
/*else if (df.parse(date_string).getTime() > today.getTime()) {
return null;
}*/
}
}
return date;
}
public static Object FORMATE_YMD(Object obj) {
if (obj instanceof String) {
if ("".equals(obj) || "".equals(((String) obj).trim())) {
return null;
}
try {
String parsestr = FunndingUtils.format_date((String) obj);
// System.out.println(parsestr);
if (parsestr != null && parsestr.length() > 10) parsestr = parsestr.substring(0, 10);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
format.setLenient(false);
format.parse(parsestr);
} catch (Exception e) {
return null;
}
if (!"-".equals(parsestr.substring(4, 5)) || !"-".equals(parsestr.substring(7, 8))) return null;
if ("1000-01-01".equals(parsestr)) return null;
return parsestr;
} catch (Exception e) {
return null;
}
} else return null;
}
private static void readNestedAndWrite(JavaSparkContext jsc) {
Map<String, String> readEsMap = new HashMap<>();
// readEsMap.put("es.query","{\"query\":{\"match_all\":{}}}");
readEsMap.put("es.query","{\"query\":{\"term\":{\"certification_number\":{\"value\":\"429\"}}}}");
readEsMap.put("es.resource","dm_map_drug_clinica_trials_institute");
JavaPairRDD<String, String> returnRDD = JavaEsSpark.esJsonRDD(jsc, readEsMap);
JavaPairRDD<String, Map<String, Object>> newRDD = returnRDD.mapToPair(new PairFunction<Tuple2<String, String>, String, Map<String, Object>>() {
@Override
public Tuple2<String, Map<String, Object>> call(Tuple2<String, String> stringStringTuple2) throws Exception {
String key = stringStringTuple2._1;
String dataJSONStr = stringStringTuple2._2;
Map<String, Object> innerMap = JSON.parseObject(dataJSONStr).getInnerMap();
String major = (String) innerMap.get("major");
Object o = enrich_major_list(major);
innerMap.put("major_list",o);
// item.put("main_investigator_new", investNameToNew((String) item.get("main_investigator")));
// item.put("organisation_name_new", organisationToNew((String) item.get("organisation_name")));
return new Tuple2<>(key, innerMap);
}
});
newRDD.foreach(new VoidFunction<Tuple2<String, Map<String, Object>>>() {
@Override
public void call(Tuple2<String, Map<String, Object>> stringMapTuple2) throws Exception {
System.out.println(new Gson().toJson(stringMapTuple2._2));
}
});
// String target = "dm_map_drug_clinica_trials_institute/index"; //"{table}/{SYS_source_id}";
// Map<String, String> flagConf = new HashMap<>();
// flagConf.put("es.write.operation", "upsert");
// flagConf.put("es.batch.size.bytes", "20mb");
// flagConf.put("es.batch.size.entries", "6000");
// flagConf.put("es.nodes", "192.168.100.100");
//
// JavaEsSpark.saveToEsWithMeta(newRDD,target,flagConf);
}
public static Object enrich_major_list(String major){
if (TextUtils.isVoidString(major)) {
return null;
}
/*if (major.contains("(") || major.contains("(")){
String regex_ = "(?<=\\()(\\S+)(?=\\))";
Pattern pattern = Pattern.compile(regex_);
Matcher matcher = pattern.matcher(major);
if (matcher.find()) {
int groupCount = matcher.groupCount();
System.out.println(groupCount);
}
return null;
}*/
// String regex_str = "[^、\t]+((.*))?";
String regex_1 = "[^()()\t、]+([((][^()()]+[))])?";
// String regex_str = "(\\([^\\)]+\\))";
Pattern pattern = Pattern.compile(regex_1);
ArrayList<String> arrayList = new ArrayList<>();
Matcher matcher = pattern.matcher(major);
while (matcher.find()){
arrayList.add(matcher.group());
}
return arrayList.stream()
.map(unit -> {
Map<String, Object> map = Maps.newHashMapWithExpectedSize(1);
map.put("major_name", unit);
return map;
}).collect(Collectors.toList());
}
}
打赏作者