diff --git a/.version b/.version index 1b87bcd..314c3d7 100755 --- a/.version +++ b/.version @@ -1 +1 @@ -1.1.4 \ No newline at end of file +1.1.5 \ No newline at end of file diff --git a/lib/.version b/lib/.version index 65087b4..e25d8d9 100755 --- a/lib/.version +++ b/lib/.version @@ -1 +1 @@ -1.1.4 +1.1.5 diff --git a/lib/Lineages_UPDATER.py b/lib/Lineages_UPDATER.py index 02acc8c..f3990b0 100755 --- a/lib/Lineages_UPDATER.py +++ b/lib/Lineages_UPDATER.py @@ -82,6 +82,18 @@ def download_source(tmp_dir): def process_lineage(alias_key_path, lineages_path, output): print('Calculate all lineages') + # handle duplicate values + with open(alias_key_path) as f: + # load json objects to dictionaries + data_dict = json.load(f) + + for k, v in data_dict.items(): + if type(v) is list: + data_dict[k] = list(set(v)) + # rewrite the json + with open(alias_key_path ,'w') as nf: + json.dump(data_dict, nf) + aliasor = Aliasor(alias_key_path) df_lineages = pd.read_csv(lineages_path) lineages = df_lineages.lineage.unique() diff --git a/lib/lineage.all.tsv b/lib/lineage.all.tsv index 9f21c16..a55e30e 100644 --- a/lib/lineage.all.tsv +++ b/lib/lineage.all.tsv @@ -71,7 +71,7 @@ AQ.2 none AS.1 none AS.2 none B.1 none -B B.1,B.1.1,B.1.1.1,B.1.1.3,B.1.1.4,B.1.1.5,B.1.1.7,B.1.1.8,B.1.1.10,B.1.1.12,B.1.1.13,B.1.1.14,B.1.1.15,B.1.1.16,B.1.1.17,B.1.1.25,B.1.1.26,B.1.1.27,B.1.1.28,B.1.1.29,B.1.1.30,B.1.1.31,B.1.1.33,B.1.1.34,B.1.1.37,B.1.1.38,B.1.1.39,B.1.1.40,B.1.1.41,B.1.1.43,B.1.1.44,B.1.1.45,B.1.1.46,B.1.1.47,B.1.1.48,B.1.1.49,B.1.1.50,B.1.1.51,B.1.1.52,B.1.1.53,B.1.1.54,B.1.1.55,B.1.1.56,B.1.1.57,B.1.1.58,B.1.1.59,B.1.1.61,B.1.1.62,B.1.1.63,B.1.1.67,B.1.1.70,B.1.1.71,B.1.1.72,B.1.1.74,B.1.1.75,B.1.1.77,B.1.1.82,B.1.1.83,B.1.1.84,B.1.1.86,B.1.1.87,B.1.1.88,B.1.1.89,B.1.1.90,B.1.1.91,B.1.1.92,B.1.1.93,B.1.1.95,B.1.1.97,B.1.1.98,B.1.1.99,B.1.1.100,B.1.1.101,B.1.1.107,B.1.1.109,B.1.1.110,B.1.1.111,B.1.1.112,B.1.1.113,B.1.1.114,B.1.1.115,B.1.1.116,B.1.1.117,B.1.1.118,B.1.1.119,B.1.1.120,B.1.1.121,B.1.1.122,B.1.1.123,B.1.1.125,B.1.1.127,B.1.1.128,B.1.1.129,B.1.1.130,B.1.1.132,B.1.1.133,B.1.1.134,B.1.1.135,B.1.1.136,B.1.1.137,B.1.1.138,B.1.1.139,B.1.1.141,B.1.1.142,B.1.1.144,B.1.1.145,B.1.1.147,B.1.1.148,B.1.1.149,B.1.1.152,B.1.1.153,B.1.1.154,B.1.1.155,B.1.1.157,B.1.1.158,B.1.1.159,B.1.1.160,B.1.1.161,B.1.1.162,B.1.1.163,B.1.1.164,B.1.1.165,B.1.1.166,B.1.1.168,B.1.1.169,B.1.1.170,B.1.1.171,B.1.1.172,B.1.1.174,B.1.1.175,B.1.1.176,B.1.1.177,B.1.1.178,B.1.1.180,B.1.1.181,B.1.1.182,B.1.1.184,B.1.1.185,B.1.1.186,B.1.1.187,B.1.1.189,B.1.1.190,B.1.1.191,B.1.1.192,B.1.1.193,B.1.1.194,B.1.1.196,B.1.1.197,B.1.1.198,B.1.1.200,B.1.1.201,B.1.1.202,B.1.1.203,B.1.1.204,B.1.1.205,B.1.1.207,B.1.1.208,B.1.1.209,B.1.1.210,B.1.1.213,B.1.1.214,B.1.1.216,B.1.1.217,B.1.1.218,B.1.1.219,B.1.1.220,B.1.1.221,B.1.1.222,B.1.1.224,B.1.1.225,B.1.1.226,B.1.1.227,B.1.1.228,B.1.1.229,B.1.1.230,B.1.1.231,B.1.1.232,B.1.1.234,B.1.1.236,B.1.1.237,B.1.1.239,B.1.1.240,B.1.1.241,B.1.1.242,B.1.1.243,B.1.1.244,B.1.1.249,B.1.1.251,B.1.1.253,B.1.1.254,B.1.1.255,B.1.1.256,B.1.1.257,B.1.1.258,B.1.1.261,B.1.1.262,B.1.1.263,B.1.1.265,B.1.1.266,B.1.1.267,B.1.1.268,B.1.1.269,B.1.1.270,B.1.1.271,B.1.1.272,B.1.1.273,B.1.1.274,B.1.1.275,B.1.1.277,B.1.1.279,B.1.1.280,B.1.1.282,B.1.1.283,B.1.1.284,B.1.1.285,B.1.1.286,B.1.1.288,B.1.1.289,B.1.1.290,B.1.1.291,B.1.1.294,B.1.1.296,B.1.1.297,B.1.1.298,B.1.1.299,B.1.1.300,B.1.1.301,B.1.1.302,B.1.1.303,B.1.1.304,B.1.1.305,B.1.1.306,B.1.1.307,B.1.1.308,B.1.1.309,B.1.1.310,B.1.1.311,B.1.1.312,B.1.1.315,B.1.1.316,B.1.1.317,B.1.1.318,B.1.1.319,B.1.1.320,B.1.1.322,B.1.1.323,B.1.1.324,B.1.1.325,B.1.1.326,B.1.1.327,B.1.1.328,B.1.1.329,B.1.1.330,B.1.1.331,B.1.1.332,B.1.1.333,B.1.1.334,B.1.1.335,B.1.1.336,B.1.1.337,B.1.1.338,B.1.1.339,B.1.1.340,B.1.1.341,B.1.1.342,B.1.1.343,B.1.1.344,B.1.1.345,B.1.1.346,B.1.1.347,B.1.1.348,B.1.1.349,B.1.1.350,B.1.1.351,B.1.1.352,B.1.1.353,B.1.1.354,B.1.1.355,B.1.1.356,B.1.1.357,B.1.1.358,B.1.1.359,B.1.1.360,B.1.1.361,B.1.1.362,B.1.1.363,B.1.1.364,B.1.1.365,B.1.1.366,B.1.1.367,B.1.1.368,B.1.1.369,B.1.1.370,B.1.1.371,B.1.1.372,B.1.1.373,B.1.1.374,B.1.1.375,B.1.1.376,B.1.1.377,B.1.1.378,B.1.1.379,B.1.1.380,B.1.1.381,B.1.1.382,B.1.1.383,B.1.1.384,B.1.1.385,B.1.1.386,B.1.1.387,B.1.1.388,B.1.1.389,B.1.1.391,B.1.1.392,B.1.1.393,B.1.1.394,B.1.1.395,B.1.1.396,B.1.1.397,B.1.1.398,B.1.1.399,B.1.1.400,B.1.1.401,B.1.1.402,B.1.1.403,B.1.1.404,B.1.1.405,B.1.1.406,B.1.1.407,B.1.1.408,B.1.1.409,B.1.1.410,B.1.1.411,B.1.1.412,B.1.1.413,B.1.1.414,B.1.1.415,B.1.1.416,B.1.1.417,B.1.1.418,B.1.1.419,B.1.1.420,B.1.1.421,B.1.1.422,B.1.1.423,B.1.1.424,B.1.1.425,B.1.1.426,B.1.1.427,B.1.1.428,B.1.1.429,B.1.1.430,B.1.1.431,B.1.1.432,B.1.1.433,B.1.1.434,B.1.1.435,B.1.1.436,B.1.1.437,B.1.1.438,B.1.1.440,B.1.1.441,B.1.1.442,B.1.1.444,B.1.1.445,B.1.1.446,B.1.1.447,B.1.1.448,B.1.1.449,B.1.1.450,B.1.1.451,B.1.1.452,B.1.1.453,B.1.1.456,B.1.1.458,B.1.1.459,B.1.1.461,B.1.1.462,B.1.1.463,B.1.1.464,B.1.1.465,B.1.1.466,B.1.1.467,B.1.1.480,B.1.1.481,B.1.1.482,B.1.1.483,B.1.1.484,B.1.1.485,B.1.1.486,B.1.1.487,B.1.1.500,B.1.1.506,B.1.1.507,B.1.1.512,B.1.1.513,B.1.1.514,B.1.1.515,B.1.1.516,B.1.1.517,B.1.1.518,B.1.1.519,B.1.1.521,B.1.1.522,B.1.1.523,B.1.1.524,B.1.1.525,B.1.1.526,B.1.1.528,B.1.2,B.1.3,B.1.6,B.1.8,B.1.9,B.1.9.1,B.1.9.2,B.1.9.3,B.1.9.4,B.1.9.5,B.1.12,B.1.13,B.1.14,B.1.22,B.1.22.1,B.1.23,B.1.35,B.1.36,B.1.36.1,B.1.36.2,B.1.36.7,B.1.36.8,B.1.36.9,B.1.36.10,B.1.36.12,B.1.36.16,B.1.36.17,B.1.36.18,B.1.36.19,B.1.36.20,B.1.36.21,B.1.36.22,B.1.36.23,B.1.36.24,B.1.36.25,B.1.36.26,B.1.36.27,B.1.36.28,B.1.36.29,B.1.36.31,B.1.36.33,B.1.36.34,B.1.36.35,B.1.36.36,B.1.36.37,B.1.36.38,B.1.36.39,B.1.37,B.1.38,B.1.39,B.1.40,B.1.44,B.1.67,B.1.69,B.1.70,B.1.76,B.1.77,B.1.78,B.1.81,B.1.83,B.1.84,B.1.88.1,B.1.91,B.1.93,B.1.94,B.1.96,B.1.97,B.1.103,B.1.104,B.1.105,B.1.106,B.1.108,B.1.110,B.1.110.1,B.1.110.2,B.1.110.3,B.1.111,B.1.112,B.1.113,B.1.115,B.1.116,B.1.117,B.1.118,B.1.119,B.1.120,B.1.124,B.1.126,B.1.127,B.1.128,B.1.131,B.1.134,B.1.137,B.1.139,B.1.140,B.1.142,B.1.143,B.1.145,B.1.146,B.1.147,B.1.149,B.1.151,B.1.153,B.1.157,B.1.158,B.1.159,B.1.160,B.1.160.7,B.1.160.8,B.1.160.9,B.1.160.10,B.1.160.11,B.1.160.12,B.1.160.13,B.1.160.14,B.1.160.15,B.1.160.16,B.1.160.17,B.1.160.18,B.1.160.19,B.1.160.20,B.1.160.21,B.1.160.22,B.1.160.23,B.1.160.24,B.1.160.25,B.1.160.26,B.1.160.27,B.1.160.28,B.1.160.29,B.1.160.30,B.1.160.31,B.1.160.32,B.1.160.33,B.1.161,B.1.162,B.1.163,B.1.164,B.1.165,B.1.166,B.1.167,B.1.168,B.1.169,B.1.170,B.1.173,B.1.177,B.1.177.2,B.1.177.3,B.1.177.4,B.1.177.5,B.1.177.6,B.1.177.7,B.1.177.8,B.1.177.9,B.1.177.10,B.1.177.11,B.1.177.12,B.1.177.14,B.1.177.15,B.1.177.16,B.1.177.17,B.1.177.18,B.1.177.19,B.1.177.20,B.1.177.21,B.1.177.23,B.1.177.24,B.1.177.25,B.1.177.26,B.1.177.27,B.1.177.28,B.1.177.29,B.1.177.30,B.1.177.31,B.1.177.32,B.1.177.33,B.1.177.34,B.1.177.35,B.1.177.36,B.1.177.37,B.1.177.38,B.1.177.39,B.1.177.40,B.1.177.41,B.1.177.42,B.1.177.43,B.1.177.44,B.1.177.45,B.1.177.46,B.1.177.47,B.1.177.48,B.1.177.49,B.1.177.50,B.1.177.51,B.1.177.52,B.1.177.53,B.1.177.54,B.1.177.55,B.1.177.56,B.1.177.57,B.1.177.58,B.1.177.59,B.1.177.60,B.1.177.61,B.1.177.62,B.1.177.63,B.1.177.64,B.1.177.65,B.1.177.66,B.1.177.67,B.1.177.68,B.1.177.69,B.1.177.70,B.1.177.71,B.1.177.72,B.1.177.73,B.1.177.74,B.1.177.75,B.1.177.76,B.1.177.77,B.1.177.78,B.1.177.80,B.1.177.81,B.1.177.82,B.1.177.83,B.1.177.84,B.1.177.85,B.1.177.86,B.1.177.87,B.1.177.88,B.1.177.89,B.1.178,B.1.179,B.1.180,B.1.181,B.1.182,B.1.184,B.1.187,B.1.188,B.1.189,B.1.190,B.1.192,B.1.194,B.1.195,B.1.198,B.1.199,B.1.201,B.1.203,B.1.205,B.1.206,B.1.208,B.1.210,B.1.211,B.1.212,B.1.213,B.1.214,B.1.214.1,B.1.214.2,B.1.214.3,B.1.214.4,B.1.215,B.1.218,B.1.219,B.1.220,B.1.221,B.1.221.1,B.1.221.2,B.1.221.3,B.1.221.4,B.1.222,B.1.223,B.1.224,B.1.225,B.1.227,B.1.229,B.1.231,B.1.232,B.1.233,B.1.234,B.1.235,B.1.236,B.1.237,B.1.238,B.1.239,B.1.240,B.1.240.1,B.1.240.2,B.1.241,B.1.242,B.1.243,B.1.243.1,B.1.243.2,B.1.245,B.1.247,B.1.248,B.1.249,B.1.250,B.1.251,B.1.252,B.1.254,B.1.256,B.1.258,B.1.258.2,B.1.258.3,B.1.258.4,B.1.258.5,B.1.258.6,B.1.258.7,B.1.258.9,B.1.258.10,B.1.258.11,B.1.258.12,B.1.258.14,B.1.258.15,B.1.258.16,B.1.258.17,B.1.258.18,B.1.258.19,B.1.258.20,B.1.258.21,B.1.258.22,B.1.258.23,B.1.258.24,B.1.260,B.1.263,B.1.264,B.1.264.1,B.1.265,B.1.267,B.1.268,B.1.270,B.1.273,B.1.274,B.1.276,B.1.277,B.1.279,B.1.280,B.1.281,B.1.282,B.1.284,B.1.285,B.1.287,B.1.289,B.1.291,B.1.292,B.1.293,B.1.294,B.1.298,B.1.301,B.1.302,B.1.304,B.1.305,B.1.306,B.1.308,B.1.309,B.1.310,B.1.311,B.1.313,B.1.314,B.1.315,B.1.316,B.1.318,B.1.319,B.1.320,B.1.321,B.1.323,B.1.324,B.1.325,B.1.326,B.1.328,B.1.329,B.1.330,B.1.332,B.1.333,B.1.334,B.1.335,B.1.336,B.1.337,B.1.338,B.1.340,B.1.341,B.1.342,B.1.343,B.1.344,B.1.346,B.1.348,B.1.349,B.1.350,B.1.350.1,B.1.351,B.1.351.1,B.1.351.2,B.1.351.3,B.1.351.5,B.1.354,B.1.355,B.1.356,B.1.357,B.1.358,B.1.359,B.1.360,B.1.361,B.1.362,B.1.362.1,B.1.362.2,B.1.363,B.1.366,B.1.367,B.1.369,B.1.369.1,B.1.370,B.1.371,B.1.372,B.1.375,B.1.377,B.1.378,B.1.379,B.1.380,B.1.381,B.1.382,B.1.383,B.1.384,B.1.385,B.1.387,B.1.388,B.1.389,B.1.390,B.1.391,B.1.393,B.1.395,B.1.396,B.1.397,B.1.398,B.1.399,B.1.400,B.1.400.1,B.1.401,B.1.402,B.1.403,B.1.404,B.1.405,B.1.406,B.1.407,B.1.408,B.1.409,B.1.411,B.1.413,B.1.415,B.1.415.1,B.1.416,B.1.416.1,B.1.417,B.1.418,B.1.420,B.1.421,B.1.422,B.1.423,B.1.424,B.1.425,B.1.426,B.1.427,B.1.428,B.1.428.1,B.1.428.2,B.1.428.3,B.1.429,B.1.429.1,B.1.431,B.1.432,B.1.433,B.1.434,B.1.435,B.1.436,B.1.437,B.1.438,B.1.438.1,B.1.438.2,B.1.438.3,B.1.438.4,B.1.439,B.1.441,B.1.442,B.1.443,B.1.444,B.1.445,B.1.446,B.1.448,B.1.450,B.1.451,B.1.452,B.1.453,B.1.456,B.1.458,B.1.459,B.1.460,B.1.462,B.1.463,B.1.465,B.1.466,B.1.466.1,B.1.466.2,B.1.467,B.1.468,B.1.469,B.1.470,B.1.471,B.1.473,B.1.474,B.1.475,B.1.476,B.1.478,B.1.479,B.1.480,B.1.482,B.1.483,B.1.485,B.1.486,B.1.487,B.1.488,B.1.489,B.1.490,B.1.491,B.1.492,B.1.493,B.1.494,B.1.495,B.1.496,B.1.497,B.1.498,B.1.499,B.1.499.1,B.1.500,B.1.501,B.1.502,B.1.503,B.1.504,B.1.505,B.1.506,B.1.507,B.1.508,B.1.509,B.1.510,B.1.511,B.1.513,B.1.515,B.1.516,B.1.517,B.1.517.1,B.1.518,B.1.520,B.1.521,B.1.523,B.1.524,B.1.525,B.1.526,B.1.527,B.1.528,B.1.529,B.1.530,B.1.531,B.1.532,B.1.533,B.1.534,B.1.535,B.1.536,B.1.537,B.1.538,B.1.539,B.1.540,B.1.541,B.1.542,B.1.543,B.1.544,B.1.545,B.1.546,B.1.547,B.1.548,B.1.549,B.1.550,B.1.551,B.1.552,B.1.554,B.1.555,B.1.556,B.1.557,B.1.558,B.1.559,B.1.560,B.1.561,B.1.562,B.1.563,B.1.564,B.1.564.1,B.1.565,B.1.566,B.1.567,B.1.568,B.1.569,B.1.570,B.1.571,B.1.572,B.1.573,B.1.574,B.1.575,B.1.575.1,B.1.575.2,B.1.576,B.1.577,B.1.578,B.1.579,B.1.580,B.1.581,B.1.582,B.1.585,B.1.586,B.1.587,B.1.588,B.1.588.1,B.1.589,B.1.590,B.1.591,B.1.592,B.1.593,B.1.594,B.1.595,B.1.595.1,B.1.595.2,B.1.595.3,B.1.595.4,B.1.596,B.1.596.1,B.1.597,B.1.598,B.1.599,B.1.600,B.1.601,B.1.602,B.1.603,B.1.604,B.1.605,B.1.606,B.1.607,B.1.609,B.1.610,B.1.611,B.1.612,B.1.613,B.1.614,B.1.615,B.1.616,B.1.617,B.1.617.1,B.1.617.2,B.1.617.3,B.1.618,B.1.619,B.1.619.1,B.1.620,B.1.621,B.1.621.1,B.1.621.2,B.1.622,B.1.623,B.1.625,B.1.626,B.1.627,B.1.629,B.1.630,B.1.631,B.1.632,B.1.633,B.1.634,B.1.635,B.1.636,B.1.637,B.1.637.1,B.1.638,B.1.639,B.1.640.1,B.1.640.2,B.3,B.3.1,B.4,B.4.1,B.4.2,B.4.4,B.4.5,B.4.6,B.4.7,B.4.8,B.5,B.6,B.6.1,B.6.2,B.6.3,B.6.4,B.6.5,B.6.6,B.6.8,B.10,B.11,B.12,B.13,B.15,B.18,B.19,B.20,B.23,B.26,B.27,B.28,B.29,B.30,B.31,B.32,B.33,B.34,B.35,B.36,B.37,B.38,B.39,B.40,B.41,B.42,B.43,B.44,B.45,B.46,B.47,B.49,B.50,B.51,B.52,B.53,B.55,B.56,B.57,B.58,B.60,B.61 +B B.1,B.1.1,B.1.1.1,B.1.1.3,B.1.1.4,B.1.1.5,B.1.1.7,B.1.1.8,B.1.1.10,B.1.1.12,B.1.1.13,B.1.1.14,B.1.1.15,B.1.1.16,B.1.1.17,B.1.1.25,B.1.1.26,B.1.1.27,B.1.1.28,B.1.1.29,B.1.1.30,B.1.1.31,B.1.1.33,B.1.1.34,B.1.1.37,B.1.1.38,B.1.1.39,B.1.1.40,B.1.1.41,B.1.1.43,B.1.1.44,B.1.1.45,B.1.1.46,B.1.1.47,B.1.1.48,B.1.1.49,B.1.1.50,B.1.1.51,B.1.1.52,B.1.1.53,B.1.1.54,B.1.1.55,B.1.1.56,B.1.1.57,B.1.1.58,B.1.1.59,B.1.1.61,B.1.1.62,B.1.1.63,B.1.1.67,B.1.1.70,B.1.1.71,B.1.1.72,B.1.1.74,B.1.1.75,B.1.1.77,B.1.1.82,B.1.1.83,B.1.1.84,B.1.1.86,B.1.1.87,B.1.1.88,B.1.1.89,B.1.1.90,B.1.1.91,B.1.1.92,B.1.1.93,B.1.1.95,B.1.1.97,B.1.1.98,B.1.1.99,B.1.1.100,B.1.1.101,B.1.1.107,B.1.1.109,B.1.1.110,B.1.1.111,B.1.1.112,B.1.1.113,B.1.1.114,B.1.1.115,B.1.1.116,B.1.1.117,B.1.1.118,B.1.1.119,B.1.1.120,B.1.1.121,B.1.1.122,B.1.1.123,B.1.1.125,B.1.1.127,B.1.1.128,B.1.1.129,B.1.1.130,B.1.1.132,B.1.1.133,B.1.1.134,B.1.1.135,B.1.1.136,B.1.1.137,B.1.1.138,B.1.1.139,B.1.1.141,B.1.1.142,B.1.1.144,B.1.1.145,B.1.1.147,B.1.1.148,B.1.1.149,B.1.1.152,B.1.1.153,B.1.1.154,B.1.1.155,B.1.1.157,B.1.1.158,B.1.1.159,B.1.1.160,B.1.1.161,B.1.1.162,B.1.1.163,B.1.1.164,B.1.1.165,B.1.1.166,B.1.1.168,B.1.1.169,B.1.1.170,B.1.1.171,B.1.1.172,B.1.1.174,B.1.1.175,B.1.1.176,B.1.1.177,B.1.1.178,B.1.1.180,B.1.1.181,B.1.1.182,B.1.1.184,B.1.1.185,B.1.1.186,B.1.1.187,B.1.1.189,B.1.1.190,B.1.1.191,B.1.1.192,B.1.1.193,B.1.1.194,B.1.1.196,B.1.1.197,B.1.1.198,B.1.1.200,B.1.1.201,B.1.1.202,B.1.1.203,B.1.1.204,B.1.1.205,B.1.1.207,B.1.1.208,B.1.1.209,B.1.1.210,B.1.1.213,B.1.1.214,B.1.1.216,B.1.1.217,B.1.1.218,B.1.1.219,B.1.1.220,B.1.1.221,B.1.1.222,B.1.1.224,B.1.1.225,B.1.1.226,B.1.1.227,B.1.1.228,B.1.1.229,B.1.1.230,B.1.1.231,B.1.1.232,B.1.1.234,B.1.1.236,B.1.1.237,B.1.1.239,B.1.1.240,B.1.1.241,B.1.1.242,B.1.1.243,B.1.1.244,B.1.1.249,B.1.1.251,B.1.1.253,B.1.1.254,B.1.1.255,B.1.1.256,B.1.1.257,B.1.1.258,B.1.1.261,B.1.1.262,B.1.1.263,B.1.1.265,B.1.1.266,B.1.1.267,B.1.1.268,B.1.1.269,B.1.1.270,B.1.1.271,B.1.1.272,B.1.1.273,B.1.1.274,B.1.1.275,B.1.1.277,B.1.1.279,B.1.1.280,B.1.1.282,B.1.1.283,B.1.1.284,B.1.1.285,B.1.1.286,B.1.1.288,B.1.1.289,B.1.1.290,B.1.1.291,B.1.1.294,B.1.1.296,B.1.1.297,B.1.1.298,B.1.1.299,B.1.1.300,B.1.1.301,B.1.1.302,B.1.1.303,B.1.1.304,B.1.1.305,B.1.1.306,B.1.1.307,B.1.1.308,B.1.1.309,B.1.1.310,B.1.1.311,B.1.1.312,B.1.1.315,B.1.1.316,B.1.1.317,B.1.1.318,B.1.1.319,B.1.1.320,B.1.1.322,B.1.1.323,B.1.1.324,B.1.1.325,B.1.1.326,B.1.1.327,B.1.1.328,B.1.1.329,B.1.1.330,B.1.1.331,B.1.1.332,B.1.1.333,B.1.1.334,B.1.1.335,B.1.1.336,B.1.1.337,B.1.1.338,B.1.1.339,B.1.1.340,B.1.1.341,B.1.1.342,B.1.1.343,B.1.1.344,B.1.1.345,B.1.1.346,B.1.1.347,B.1.1.348,B.1.1.349,B.1.1.350,B.1.1.351,B.1.1.352,B.1.1.353,B.1.1.354,B.1.1.355,B.1.1.356,B.1.1.357,B.1.1.358,B.1.1.359,B.1.1.360,B.1.1.361,B.1.1.362,B.1.1.363,B.1.1.364,B.1.1.365,B.1.1.366,B.1.1.367,B.1.1.368,B.1.1.369,B.1.1.370,B.1.1.371,B.1.1.372,B.1.1.373,B.1.1.374,B.1.1.375,B.1.1.376,B.1.1.377,B.1.1.378,B.1.1.379,B.1.1.380,B.1.1.381,B.1.1.382,B.1.1.383,B.1.1.384,B.1.1.385,B.1.1.386,B.1.1.387,B.1.1.388,B.1.1.389,B.1.1.391,B.1.1.392,B.1.1.393,B.1.1.394,B.1.1.395,B.1.1.396,B.1.1.397,B.1.1.398,B.1.1.399,B.1.1.400,B.1.1.401,B.1.1.402,B.1.1.403,B.1.1.404,B.1.1.405,B.1.1.406,B.1.1.407,B.1.1.408,B.1.1.409,B.1.1.410,B.1.1.411,B.1.1.412,B.1.1.413,B.1.1.414,B.1.1.415,B.1.1.416,B.1.1.417,B.1.1.418,B.1.1.419,B.1.1.420,B.1.1.421,B.1.1.422,B.1.1.423,B.1.1.424,B.1.1.425,B.1.1.426,B.1.1.427,B.1.1.428,B.1.1.429,B.1.1.430,B.1.1.431,B.1.1.432,B.1.1.433,B.1.1.434,B.1.1.435,B.1.1.436,B.1.1.437,B.1.1.438,B.1.1.440,B.1.1.441,B.1.1.442,B.1.1.444,B.1.1.445,B.1.1.446,B.1.1.447,B.1.1.448,B.1.1.449,B.1.1.450,B.1.1.451,B.1.1.452,B.1.1.453,B.1.1.456,B.1.1.458,B.1.1.459,B.1.1.461,B.1.1.462,B.1.1.463,B.1.1.464,B.1.1.465,B.1.1.466,B.1.1.467,B.1.1.480,B.1.1.481,B.1.1.482,B.1.1.483,B.1.1.484,B.1.1.485,B.1.1.486,B.1.1.487,B.1.1.500,B.1.1.506,B.1.1.507,B.1.1.512,B.1.1.513,B.1.1.514,B.1.1.515,B.1.1.516,B.1.1.517,B.1.1.518,B.1.1.519,B.1.1.521,B.1.1.522,B.1.1.523,B.1.1.524,B.1.1.525,B.1.1.526,B.1.1.528,B.1.2,B.1.3,B.1.6,B.1.8,B.1.9,B.1.9.1,B.1.9.2,B.1.9.3,B.1.9.4,B.1.9.5,B.1.12,B.1.13,B.1.14,B.1.22,B.1.22.1,B.1.23,B.1.35,B.1.36,B.1.36.1,B.1.36.2,B.1.36.7,B.1.36.8,B.1.36.9,B.1.36.10,B.1.36.12,B.1.36.16,B.1.36.17,B.1.36.18,B.1.36.19,B.1.36.20,B.1.36.21,B.1.36.22,B.1.36.23,B.1.36.24,B.1.36.25,B.1.36.26,B.1.36.27,B.1.36.28,B.1.36.29,B.1.36.31,B.1.36.33,B.1.36.34,B.1.36.35,B.1.36.36,B.1.36.37,B.1.36.38,B.1.36.39,B.1.37,B.1.38,B.1.39,B.1.40,B.1.44,B.1.67,B.1.69,B.1.70,B.1.76,B.1.77,B.1.78,B.1.81,B.1.83,B.1.84,B.1.91,B.1.93,B.1.94,B.1.96,B.1.97,B.1.103,B.1.104,B.1.105,B.1.106,B.1.108,B.1.110,B.1.110.1,B.1.110.2,B.1.110.3,B.1.111,B.1.112,B.1.113,B.1.115,B.1.116,B.1.117,B.1.118,B.1.119,B.1.120,B.1.124,B.1.126,B.1.127,B.1.128,B.1.131,B.1.134,B.1.137,B.1.139,B.1.140,B.1.142,B.1.143,B.1.145,B.1.146,B.1.147,B.1.149,B.1.151,B.1.153,B.1.157,B.1.158,B.1.159,B.1.160,B.1.160.7,B.1.160.8,B.1.160.9,B.1.160.10,B.1.160.11,B.1.160.12,B.1.160.13,B.1.160.14,B.1.160.15,B.1.160.16,B.1.160.17,B.1.160.18,B.1.160.19,B.1.160.20,B.1.160.21,B.1.160.22,B.1.160.23,B.1.160.24,B.1.160.25,B.1.160.26,B.1.160.27,B.1.160.28,B.1.160.29,B.1.160.30,B.1.160.31,B.1.160.32,B.1.160.33,B.1.161,B.1.162,B.1.163,B.1.164,B.1.165,B.1.166,B.1.167,B.1.168,B.1.169,B.1.170,B.1.173,B.1.177,B.1.177.2,B.1.177.3,B.1.177.4,B.1.177.5,B.1.177.6,B.1.177.7,B.1.177.8,B.1.177.9,B.1.177.10,B.1.177.11,B.1.177.12,B.1.177.14,B.1.177.15,B.1.177.16,B.1.177.17,B.1.177.18,B.1.177.19,B.1.177.20,B.1.177.21,B.1.177.23,B.1.177.24,B.1.177.25,B.1.177.26,B.1.177.27,B.1.177.28,B.1.177.29,B.1.177.30,B.1.177.31,B.1.177.32,B.1.177.33,B.1.177.34,B.1.177.35,B.1.177.36,B.1.177.37,B.1.177.38,B.1.177.39,B.1.177.40,B.1.177.41,B.1.177.42,B.1.177.43,B.1.177.44,B.1.177.45,B.1.177.46,B.1.177.47,B.1.177.48,B.1.177.49,B.1.177.50,B.1.177.51,B.1.177.52,B.1.177.53,B.1.177.54,B.1.177.55,B.1.177.56,B.1.177.57,B.1.177.58,B.1.177.59,B.1.177.60,B.1.177.61,B.1.177.62,B.1.177.63,B.1.177.64,B.1.177.65,B.1.177.66,B.1.177.67,B.1.177.68,B.1.177.69,B.1.177.70,B.1.177.71,B.1.177.72,B.1.177.73,B.1.177.74,B.1.177.75,B.1.177.76,B.1.177.77,B.1.177.78,B.1.177.80,B.1.177.81,B.1.177.82,B.1.177.83,B.1.177.84,B.1.177.85,B.1.177.86,B.1.177.87,B.1.177.88,B.1.177.89,B.1.178,B.1.179,B.1.180,B.1.181,B.1.182,B.1.184,B.1.187,B.1.188,B.1.189,B.1.190,B.1.192,B.1.194,B.1.195,B.1.198,B.1.199,B.1.201,B.1.203,B.1.205,B.1.206,B.1.208,B.1.210,B.1.211,B.1.212,B.1.213,B.1.214,B.1.214.1,B.1.214.2,B.1.214.3,B.1.214.4,B.1.215,B.1.218,B.1.219,B.1.220,B.1.221,B.1.221.1,B.1.221.2,B.1.221.3,B.1.221.4,B.1.222,B.1.223,B.1.224,B.1.225,B.1.227,B.1.229,B.1.231,B.1.232,B.1.233,B.1.234,B.1.235,B.1.236,B.1.237,B.1.238,B.1.239,B.1.240,B.1.240.1,B.1.240.2,B.1.241,B.1.242,B.1.243,B.1.243.1,B.1.243.2,B.1.245,B.1.247,B.1.248,B.1.249,B.1.250,B.1.251,B.1.252,B.1.254,B.1.256,B.1.258,B.1.258.2,B.1.258.3,B.1.258.4,B.1.258.5,B.1.258.6,B.1.258.7,B.1.258.9,B.1.258.10,B.1.258.11,B.1.258.12,B.1.258.14,B.1.258.15,B.1.258.16,B.1.258.17,B.1.258.18,B.1.258.19,B.1.258.20,B.1.258.21,B.1.258.22,B.1.258.23,B.1.258.24,B.1.260,B.1.263,B.1.264,B.1.264.1,B.1.265,B.1.267,B.1.268,B.1.270,B.1.273,B.1.274,B.1.276,B.1.277,B.1.279,B.1.280,B.1.281,B.1.282,B.1.284,B.1.285,B.1.287,B.1.289,B.1.291,B.1.292,B.1.293,B.1.294,B.1.298,B.1.301,B.1.302,B.1.304,B.1.305,B.1.306,B.1.308,B.1.309,B.1.310,B.1.311,B.1.313,B.1.314,B.1.315,B.1.316,B.1.318,B.1.319,B.1.320,B.1.321,B.1.323,B.1.324,B.1.325,B.1.326,B.1.328,B.1.329,B.1.330,B.1.332,B.1.333,B.1.334,B.1.335,B.1.336,B.1.337,B.1.338,B.1.340,B.1.341,B.1.342,B.1.343,B.1.344,B.1.346,B.1.348,B.1.349,B.1.350,B.1.350.1,B.1.351,B.1.351.1,B.1.351.2,B.1.351.3,B.1.351.5,B.1.354,B.1.355,B.1.356,B.1.357,B.1.358,B.1.359,B.1.360,B.1.361,B.1.362,B.1.362.1,B.1.362.2,B.1.363,B.1.366,B.1.367,B.1.369,B.1.369.1,B.1.370,B.1.371,B.1.372,B.1.375,B.1.377,B.1.378,B.1.379,B.1.380,B.1.381,B.1.382,B.1.383,B.1.384,B.1.385,B.1.387,B.1.388,B.1.389,B.1.390,B.1.391,B.1.393,B.1.395,B.1.396,B.1.397,B.1.398,B.1.399,B.1.400,B.1.400.1,B.1.401,B.1.402,B.1.403,B.1.404,B.1.405,B.1.406,B.1.407,B.1.408,B.1.409,B.1.411,B.1.413,B.1.415,B.1.415.1,B.1.416,B.1.416.1,B.1.417,B.1.418,B.1.420,B.1.421,B.1.422,B.1.423,B.1.424,B.1.425,B.1.426,B.1.427,B.1.428,B.1.428.1,B.1.428.2,B.1.428.3,B.1.429,B.1.429.1,B.1.431,B.1.432,B.1.433,B.1.434,B.1.435,B.1.436,B.1.437,B.1.438,B.1.438.1,B.1.438.2,B.1.438.3,B.1.438.4,B.1.439,B.1.441,B.1.442,B.1.443,B.1.444,B.1.445,B.1.446,B.1.448,B.1.450,B.1.451,B.1.452,B.1.453,B.1.456,B.1.458,B.1.459,B.1.460,B.1.462,B.1.463,B.1.465,B.1.466,B.1.466.1,B.1.466.2,B.1.467,B.1.468,B.1.469,B.1.470,B.1.471,B.1.473,B.1.474,B.1.475,B.1.476,B.1.478,B.1.479,B.1.480,B.1.482,B.1.483,B.1.485,B.1.486,B.1.487,B.1.488,B.1.489,B.1.490,B.1.491,B.1.492,B.1.493,B.1.494,B.1.495,B.1.496,B.1.497,B.1.498,B.1.499,B.1.499.1,B.1.500,B.1.501,B.1.502,B.1.503,B.1.504,B.1.505,B.1.506,B.1.507,B.1.508,B.1.509,B.1.510,B.1.511,B.1.513,B.1.515,B.1.516,B.1.517,B.1.517.1,B.1.518,B.1.520,B.1.521,B.1.523,B.1.524,B.1.525,B.1.526,B.1.527,B.1.528,B.1.529,B.1.530,B.1.531,B.1.532,B.1.533,B.1.534,B.1.535,B.1.536,B.1.537,B.1.538,B.1.539,B.1.540,B.1.541,B.1.542,B.1.543,B.1.544,B.1.545,B.1.546,B.1.547,B.1.548,B.1.549,B.1.550,B.1.551,B.1.552,B.1.554,B.1.555,B.1.556,B.1.557,B.1.558,B.1.559,B.1.560,B.1.561,B.1.562,B.1.563,B.1.564,B.1.564.1,B.1.565,B.1.566,B.1.567,B.1.568,B.1.569,B.1.570,B.1.571,B.1.572,B.1.573,B.1.574,B.1.575,B.1.575.1,B.1.575.2,B.1.576,B.1.577,B.1.578,B.1.579,B.1.580,B.1.581,B.1.582,B.1.585,B.1.586,B.1.587,B.1.588,B.1.588.1,B.1.589,B.1.590,B.1.591,B.1.592,B.1.593,B.1.594,B.1.595,B.1.595.1,B.1.595.2,B.1.595.3,B.1.595.4,B.1.596,B.1.596.1,B.1.597,B.1.598,B.1.599,B.1.600,B.1.601,B.1.602,B.1.603,B.1.604,B.1.605,B.1.606,B.1.607,B.1.609,B.1.610,B.1.611,B.1.612,B.1.613,B.1.614,B.1.615,B.1.616,B.1.617,B.1.617.1,B.1.617.2,B.1.617.3,B.1.618,B.1.619,B.1.619.1,B.1.620,B.1.621,B.1.621.1,B.1.621.2,B.1.622,B.1.623,B.1.625,B.1.626,B.1.627,B.1.629,B.1.630,B.1.631,B.1.632,B.1.633,B.1.634,B.1.635,B.1.636,B.1.637,B.1.637.1,B.1.638,B.1.639,B.1.640.1,B.1.640.2,B.1.641,B.3,B.3.1,B.4,B.4.1,B.4.2,B.4.4,B.4.5,B.4.6,B.4.7,B.4.8,B.5,B.6,B.6.1,B.6.2,B.6.3,B.6.4,B.6.5,B.6.6,B.6.8,B.10,B.11,B.12,B.13,B.15,B.18,B.19,B.20,B.23,B.26,B.27,B.28,B.29,B.30,B.31,B.32,B.33,B.34,B.35,B.36,B.37,B.38,B.39,B.40,B.41,B.42,B.43,B.44,B.45,B.46,B.47,B.49,B.50,B.51,B.52,B.53,B.55,B.56,B.57,B.58,B.60,B.61 B.1.1 none B.1.636 none B.1.635 none @@ -1112,7 +1112,6 @@ B.1.8 none B.1.81 none B.1.83 none B.1.84 none -B.1.88.1 none B.1.9 none B.1.9.1 none B.1.9.2 none @@ -1274,7 +1273,7 @@ B.1.619 none B.1.620 none B.1.438.3 none B.1.617.1 none -B.1.617.2 AY.1,AY.2,AY.3,AY.3.1,AY.3.2,AY.3.3,AY.4,AY.4.1,AY.4.2,AY.4.2.1,AY.4.2.2,AY.4.2.3,AY.4.3,AY.4.4,AY.4.5,AY.4.6,AY.4.7,AY.4.8,AY.4.9,AY.4.10,AY.5,AY.5.1,AY.5.2,AY.5.3,AY.5.4,AY.5.5,AY.6,AY.7,AY.7.1,AY.7.2,AY.8,AY.9,AY.9.2,AY.9.2.1,AY.9.2.2,AY.10,AY.11,AY.13,AY.14,AY.15,AY.16,AY.16.1,AY.17,AY.18,AY.19,AY.20,AY.20.1,AY.21,AY.22,AY.23,AY.23.1,AY.23.2,AY.24,AY.25,AY.25.1,AY.25.1.1,AY.26,AY.26.1,AY.27,AY.28,AY.29,AY.29.1,AY.30,AY.31,AY.32,AY.33,AY.33.1,AY.34,AY.34.1,AY.34.1.1,AY.34.2,AY.35,AY.36,AY.37,AY.38,AY.39,AY.39.1,AY.39.1.1,AY.39.1.2,AY.39.1.3,AY.39.2,AY.40,AY.41,AY.42,AY.42.1,AY.43,AY.43.1,AY.43.2,AY.43.3,AY.43.4,AY.43.5,AY.43.6,AY.43.7,AY.44,AY.45,AY.46,AY.46.1,AY.46.2,AY.46.3,AY.46.4,AY.46.5,AY.46.6,AY.46.6.1,AY.47,AY.48,AY.49,AY.50,AY.51,AY.52,AY.53,AY.54,AY.55,AY.56,AY.57,AY.58,AY.59,AY.60,AY.61,AY.62,AY.63,AY.64,AY.65,AY.66,AY.67,AY.68,AY.69,AY.70,AY.71,AY.72,AY.73,AY.74,AY.75,AY.75.2,AY.75.3,AY.76,AY.77,AY.78,AY.79,AY.80,AY.81,AY.82,AY.83,AY.84,AY.85,AY.86,AY.87,AY.88,AY.90,AY.91,AY.91.1,AY.92,AY.93,AY.94,AY.95,AY.96,AY.98,AY.98.1,AY.99,AY.99.1,AY.99.2,AY.100,AY.101,AY.102,AY.102.1,AY.102.2,AY.103,AY.104,AY.105,AY.106,AY.107,AY.108,AY.109,AY.110,AY.111,AY.112,AY.112.1,AY.113,AY.114,AY.116,AY.116.1,AY.117,AY.118,AY.119,AY.119.1,AY.119.2,AY.120,AY.120.1,AY.120.2,AY.120.2.1,AY.121,AY.121.1,AY.122,AY.122.1,AY.122.2,AY.122.3,AY.123,AY.123.1,AY.124,AY.124.1,AY.125,AY.126,AY.127,AY.127.1,AY.128,AY.129,AY.130,AY.131,AY.132,AY.133 +B.1.617.2 AY.1,AY.2,AY.3,AY.3.1,AY.3.2,AY.3.3,AY.3.4,AY.4,AY.4.1,AY.4.2,AY.4.2.1,AY.4.2.2,AY.4.2.3,AY.4.2.4,AY.4.2.5,AY.4.3,AY.4.4,AY.4.5,AY.4.6,AY.4.7,AY.4.8,AY.4.9,AY.4.10,AY.4.11,AY.4.12,AY.4.13,AY.4.14,AY.4.15,AY.4.16,AY.4.17,AY.5,AY.5.1,AY.5.2,AY.5.3,AY.5.4,AY.5.5,AY.5.6,AY.5.7,AY.6,AY.7,AY.7.1,AY.7.2,AY.8,AY.9,AY.9.2,AY.9.2.1,AY.9.2.2,AY.10,AY.11,AY.13,AY.14,AY.15,AY.16,AY.16.1,AY.17,AY.18,AY.19,AY.20,AY.20.1,AY.21,AY.22,AY.23,AY.23.1,AY.23.2,AY.24,AY.24.1,AY.25,AY.25.1,AY.25.1.1,AY.25.1.2,AY.25.2,AY.25.3,AY.26,AY.26.1,AY.27,AY.28,AY.29,AY.29.1,AY.29.2,AY.30,AY.31,AY.32,AY.33,AY.33.1,AY.33.2,AY.34,AY.34.1,AY.34.1.1,AY.34.2,AY.35,AY.36,AY.36.1,AY.37,AY.38,AY.39,AY.39.1,AY.39.1.1,AY.39.1.2,AY.39.1.3,AY.39.1.4,AY.39.2,AY.39.3,AY.40,AY.41,AY.42,AY.42.1,AY.43,AY.43.1,AY.43.2,AY.43.3,AY.43.4,AY.43.5,AY.43.6,AY.43.7,AY.43.8,AY.43.9,AY.44,AY.45,AY.46,AY.46.1,AY.46.2,AY.46.3,AY.46.4,AY.46.5,AY.46.6,AY.46.6.1,AY.47,AY.48,AY.49,AY.50,AY.51,AY.52,AY.53,AY.54,AY.55,AY.56,AY.57,AY.58,AY.59,AY.60,AY.61,AY.62,AY.63,AY.64,AY.65,AY.66,AY.67,AY.68,AY.69,AY.70,AY.71,AY.72,AY.73,AY.74,AY.75,AY.75.2,AY.75.3,AY.76,AY.77,AY.78,AY.79,AY.80,AY.81,AY.82,AY.83,AY.84,AY.85,AY.86,AY.87,AY.88,AY.90,AY.91,AY.91.1,AY.92,AY.93,AY.94,AY.95,AY.98,AY.98.1,AY.98.1.1,AY.99,AY.99.1,AY.99.2,AY.100,AY.101,AY.102,AY.102.1,AY.102.2,AY.103,AY.103.1,AY.103.2,AY.104,AY.105,AY.106,AY.107,AY.108,AY.109,AY.110,AY.111,AY.112,AY.112.1,AY.112.2,AY.112.3,AY.113,AY.114,AY.116,AY.116.1,AY.117,AY.118,AY.119,AY.119.1,AY.119.2,AY.120,AY.120.1,AY.120.2,AY.120.2.1,AY.121,AY.121.1,AY.122,AY.122.1,AY.122.2,AY.122.3,AY.122.4,AY.122.5,AY.122.6,AY.123,AY.123.1,AY.124,AY.124.1,AY.124.1.1,AY.125,AY.125.1,AY.126,AY.127,AY.127.1,AY.127.2,AY.127.3,AY.128,AY.129,AY.130,AY.131,AY.132,AY.133,AY.134 AY.9 none AY.5 none AY.44 none @@ -1452,6 +1451,7 @@ AY.18 none AY.23.2 none P.1.11 none C.39 none +AY.25.3 none Q.5 none B.1.1.528 none Q.6 none @@ -1471,6 +1471,7 @@ AY.4.1 none AY.34 none AY.34.1 none AY.34.2 none +AY.33.2 none AY.36 none P.1.13 none P.1.15 none @@ -1491,8 +1492,10 @@ AY.23.1 none AY.41 none AY.4.5 none AY.42.1 none +AY.43.8 none AY.43.2 none AY.43.4 none +AY.43.9 none AY.43.1 none AY.43.6 none AY.46.1 none @@ -1516,6 +1519,7 @@ AY.82 none AY.84 none AY.88 none AY.5.5 none +AY.98.1.1 none AY.99 none AY.99.1 none AY.99.2 none @@ -1524,17 +1528,21 @@ AY.102.2 none AY.102.1 none AY.5.3 none AY.5.4 none +AY.103.2 none +AY.103.1 none AY.104 none AY.108 none AY.109 none AY.112.1 none AY.113 none -AY.96 none AY.116.1 none AY.119.2 none B.1.639 none +AY.122.4 none +AY.122.6 none AY.122.2 none AY.122.3 none +AY.122.5 none AY.122.1 none AY.20.1 none B.1.634 none @@ -1545,8 +1553,10 @@ AY.123 none AY.123.1 none AY.124 none AY.124.1 none +AY.124.1.1 none AY.43.3 none AY.125 none +AY.125.1 none AY.121.1 none AY.34.1.1 none XC none @@ -1555,12 +1565,23 @@ AY.127.1 none AY.119.1 none AY.43.5 none BA.1 none +BA.1.17 none +BA.1.21 none +BA.1.18 none +BA.1.15 none +BA.1.19 none +BA.1.14 none +BA.1.13 none +BA.1.17.2 none BA.2 none B.1.640.1 none B.1.640.2 none B.1.637.1 none +AY.112.2 none +AY.112.3 none AY.4.8 none AY.3.2 none +AY.25.1.2 none AY.25.1.1 none AY.129 none BA.3 none @@ -1576,3 +1597,247 @@ AY.43.7 none AY.132 none AY.133 none BA.1.1 none +BA.1.1.1 none +BA.1.1.11 none +BA.1.1.14 none +BA.1.1.4 none +BA.1.1.15 none +BA.1.1.6 none +BA.1.1.13 none +BA.1.1.18 none +BA.1.1.2 none +BA.1.1.8 none +AY.25.2 none +AY.3.4 none +AY.4.11 none +AY.4.2.4 none +AY.24.1 none +AY.4.12 none +AY.4.13 none +AY.4.14 none +AY.4.15 none +AY.4.16 none +AY.4.17 none +AY.127.2 none +AY.5.6 none +AY.39.3 none +BA.1.2 none +BA.1.3 none +BA.1.4 none +BA.1.5 none +BA.1.6 none +BA.1.7 none +BA.1.8 none +BA.1.9 none +BA.1.10 none +BA.1.12 none +BA.1.13.1 none +BA.1.14.2 none +BA.1.14.1 none +BA.1.15.1 none +BA.1.15.3 none +XAC none +BA.1.15.2 none +BA.1.16 none +BA.1.16.1 none +BA.1.16.2 none +BD.1 none +BA.1.17.1 none +AY.39.1.4 none +BC.2 none +BA.1.1.3 none +BA.1.1.5 none +BA.1.1.7 none +BA.1.1.9 none +BA.1.1.10 none +BA.1.1.12 none +BA.1.1.16 none +BA.2.1 none +BA.2.2 none +BA.2.3 none +BA.2.3.15 none +BA.2.3.11 none +BA.2.3.5 none +AY.36.1 none +XD none +XE none +XF none +AY.29.2 none +XG none +XH none +XJ none +XK none +XL none +BA.2.4 none +BA.2.5 none +BA.2.6 none +BA.2.7 none +BA.2.8 none +B.1.641 none +XM none +BA.2.9 none +BA.2.9.1 none +BA.2.9.2 none +BA.2.9.3 none +BA.2.9.4 none +XN none +BA.2.3.1 none +BA.2.10 none +BA.2.10.1 none +BA.2.10.3 none +BA.2.10.2 none +AY.5.7 none +XP none +XQ none +XR none +XS none +BA.2.3.2 none +BA.4 none +BA.5 none +BA.2.11 none +BA.2.12 none +BA.2.12.2 none +BA.2.37 none +BA.2.12.1 none +AY.127.3 none +BA.2.13 none +BA.1.20 none +BA.1.21.1 none +AY.134 none +BA.1.1.17 none +XT none +AY.4.2.5 none +BA.2.14 none +BA.2.15 none +BA.2.16 none +BA.2.57 none +BA.2.67 none +BA.2.38 none +BA.2.21 none +BA.2.17 none +BA.2.73 none +BA.2.66 none +BA.2.68 none +XU none +BA.2.18 none +BA.1.22 none +BA.2.19 none +BA.2.20 none +BA.2.22 none +BA.2.23 none +BA.2.23.1 none +BA.2.24 none +BA.2.25 none +BA.2.25.1 none +BA.2.26 none +BA.2.27 none +BA.2.28 none +BA.2.29 none +BA.2.30 none +BA.2.31 none +BA.2.32 none +BA.2.33 none +BA.2.3.4 none +BA.2.34 none +BA.3.1 none +BA.2.45 none +BA.2.40.1 none +BA.2.36 none +BA.2.64 none +BA.2.49 none +BA.2.50 none +BA.2.39 none +BA.2.41 none +BA.2.53 none +BA.2.47 none +BA.2.51 none +BA.2.65 none +BA.2.35 none +BA.2.72 none +BA.2.52 none +BA.2.48 none +BA.2.70 none +BA.2.55 none +BA.2.56 none +BA.2.44 none +BA.2.46 none +BA.2.59 none +BA.2.63 none +BA.2.62 none +XAD none +XAH none +BA.5.3 none +BA.5.2.1 none +BA.5.1 none +BA.5.5 none +BF.1 none +BA.5.3.4 none +BA.5.3.2 none +BA.4.1 none +BA.4.1.1 none +BA.2.40 none +BA.1.23 none +XAE none +BA.2.42 none +BA.2.58 none +BA.2.54 none +BA.2.71 none +BA.2.2.1 none +BA.2.3.12 none +BA.2.3.6 none +BA.2.3.17 none +BA.2.3.9 none +BA.2.3.10 none +BA.2.3.16 none +BA.2.3.13 none +BA.2.3.14 none +BA.2.3.18 none +BA.2.3.8 none +XV none +BF.5 none +BE.1 none +BE.3 none +BA.5.2 none +BE.2 none +BA.5.3.1 none +BF.2 none +XW none +XY none +BA.2.43 none +BA.4.1.2 none +BF.1.1 none +BF.3 none +BF.4 none +XZ none +BA.2.3.7 none +XAA none +XAB none +BA.1.24 none +BA.4.4 none +BA.4.2 none +BA.4.5 none +BA.4.3 none +BA.4.1.4 none +BA.4.1.3 none +BA.2.60 none +BA.2.69 none +BG.1 none +BG.2 none +BG.4 none +BG.3 none +BA.5.6 none +BC.1 none +BA.2.61 none +XAF none +BA.2.56.1 none +XAG none +BA.5.2.2 none +BA.5.2.3 none +BA.2.74 none +BA.2.75 none +BE.1.1 none +BA.5.3.3 none +BA.5.1.1 none +BA.5.1.2 none +BA.5.1.3 none +BA.5.2.4 none diff --git a/lib/sonardb.py b/lib/sonardb.py index 1c1a101..c7f4f32 100755 --- a/lib/sonardb.py +++ b/lib/sonardb.py @@ -1717,7 +1717,6 @@ def match(self, profile_clause[-1] = "(" + " AND ".join(profile_clause[-1]) + ")" else: profile_clause[-1] = profile_clause[-1][0] - if len(profile_clause) > 1: where_clause.append("(" + " OR ".join(profile_clause) + ")") else: @@ -2704,7 +2703,25 @@ def make_profile_explicit(self, profile): for var in profile: key = "dna" if self.isdnavar(var) else "aa" extended_profile[key].extend([v for v in self.pinpoint_mutation(var, self.codedict[key]['code'])]) - return extended_profile + return extended_profile + + def _fix_X_N_search(self, _profiles): + temp_include_profiles = [] + for _list_var in _profiles: + for var in _list_var: + if (var[-1].lower() == 'x') and not self.isdnavar(var): + for v in self.pinpoint_mutation(var, self.codedict["aa"]['code']): + temp_include_profiles.append([v]) + + elif(var[-1].lower() == 'n') and self.isdnavar(var): + for v in self.pinpoint_mutation(var, self.codedict["dna"]['code']): + temp_include_profiles.append([v]) + + _profiles.extend(temp_include_profiles) + _profiles = [list(x) for x in set(tuple(x) for x in _profiles)] + #print("After update") + #print(_profiles) + return _profiles def match(self, @@ -2850,13 +2867,14 @@ def match(self, sys.exit("input error: matching a given software version needs a software defined.") # adding conditions of profiles to include to where clause - #print(include_profiles) + # print(include_profiles) if include_profiles: - include_profiles = [ self.make_profile_explicit(x) for x in include_profiles ] + include_profiles = self._fix_X_N_search(include_profiles) + include_profiles = [ self.make_profile_explicit(x) for x in include_profiles ] # Fix here # adding conditions of profiles to exclude to where clause if exclude_profiles: + exclude_profiles = self._fix_X_N_search(exclude_profiles) exclude_profiles = [ self.make_profile_explicit(x) for x in exclude_profiles ] - #print(include_profiles) # adding accession, lineage, zips, and dates based conditions include_acc = [x for x in accessions if not x.startswith("^")] exclude_acc = [x[1:] for x in accessions if x.startswith("^")] @@ -2967,6 +2985,8 @@ def match(self, include_lin = _tmp_include_lin + #print(include_profiles) + #print(include_lin) ######################## rows = dbm.match( diff --git a/sonar.py b/sonar.py index cc5d66d..d1af867 100755 --- a/sonar.py +++ b/sonar.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- #author: Stephan Fuchs (Robert Koch Institute, MF1, fuchss@rki.de) -VERSION = "1.1.4" +VERSION = "1.1.5" import os from posixpath import split import sys @@ -82,7 +82,7 @@ def parse_args(): parser_match_g2 = parser_match.add_mutually_exclusive_group() parser_match_g2.add_argument('--only_frameshifts', help="show only genomes containing one or more frameshift mutations", action="store_true") parser_match_g2.add_argument('--no_frameshifts', help="show only genomes containing no frameshift mutation", action="store_true") - parser_match_g2.add_argument('--tsv', help="use tsv instead of csv output", action="store_true") + parser_match.add_argument('--tsv', help="use tsv instead of csv output", action="store_true") parser_match.add_argument('--debug', help="show database query for debugging", action="store_true") #create the parser for the "restore" command