├── .gitignore
├── Dockerfile
├── FIDDLE.R
├── FIDDLE
├── config-default.yaml
├── config.py
├── helpers.py
├── run.py
└── steps.py
├── LICENSE
├── README.md
├── requirements.txt
└── tests
├── icd_test
├── Run.ipynb
└── input
│ ├── config-0.yaml
│ ├── config-1.yaml
│ ├── config-2.yaml
│ ├── data.csv
│ ├── icd_test_data.csv
│ └── pop.csv
├── icd_time_test
├── Run.ipynb
└── input
│ ├── config-0.yaml
│ ├── config-1.yaml
│ ├── config-2.yaml
│ ├── data.csv
│ ├── icd_test_data.csv
│ └── pop.csv
├── large_test
├── Run.ipynb
└── input
│ ├── config-1-parallel.yaml
│ ├── config-2-parallel.yaml
│ ├── config-3-parallel.yaml
│ ├── data.csv
│ └── pop.csv
└── small_test
├── Run-docker.ipynb
├── Run.ipynb
├── input
├── X_all.discretization.json
├── config-1.yaml
├── config-2-bins.yaml
├── config-2.yaml
├── config-3.yaml
├── data.csv
├── pop.csv
└── s_all.discretization.json
└── reference-1
├── df_S.csv
└── df_X.csv
/.gitignore:
--------------------------------------------------------------------------------
1 | data/*
2 | **output**/
3 | .ipynb_checkpoints
4 | *.png
5 |
6 | # Byte-compiled / optimized / DLL files
7 | __pycache__/
8 | *.py[cod]
9 |
10 |
--------------------------------------------------------------------------------
/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM python:3.8
2 | WORKDIR /workdir
3 |
4 | COPY requirements.txt .
5 | RUN pip install -r requirements.txt
6 |
7 | COPY FIDDLE/ ./FIDDLE/
8 |
--------------------------------------------------------------------------------
/FIDDLE.R:
--------------------------------------------------------------------------------
1 | library(argparse)
2 | parser <- ArgumentParser(description=' ')
3 | parser$add_argument('--data_path', type="character")
4 | parser$add_argument('--population', type="character")
5 | parser$add_argument('--T_', type="double")
6 | parser$add_argument('--dt', type="double")
7 | parser$add_argument('--theta_1', type="double", default='0.001')
8 | parser$add_argument('--theta_2', type="double", default='0.001')
9 | parser$add_argument('--theta_freq', type="double", default='1.0')
10 | parser$add_argument('--stats_functions', nargs='+', type="character", default='min max mean' )
11 | parser$add_argument('--binarize', type="integer", default='1', nargs='?', const=TRUE)
12 | args = parser$parse_args()
13 |
14 | cmd = paste0('python -m FIDDLE.run --data_path=', args$data_path, ' --population=', args$population, ' --T=', args$T_, ' --dt=' , args$dt, ' --theta_1=', args$theta_1, ' --theta_2=', args$theta_2, ' --theta_freq=', args$theta_freq, ' --stats_functions ', args$stats_functions)
15 |
16 | system(cmd)
17 |
--------------------------------------------------------------------------------
/FIDDLE/config-default.yaml:
--------------------------------------------------------------------------------
1 | # Customize table headers
2 | column_names:
3 | ID: ID
4 | t: t
5 | var_name: variable_name
6 | var_value: variable_value
7 |
8 | parallel: yes
9 | n_jobs: 72
10 | batch_size: 100
11 |
12 | hierarchical_sep: ":"
13 | hierarchical_levels: [0, 1, 2]
14 |
15 | discretize: yes
16 | use_ordinal_encoding: no
17 | discretization: ~
18 |
19 | value_types:
20 | # enter the feature type that you would like to override in the following format:
21 | FIRST_WARDID: Categorical
22 | MedA_AMOUNT: Numeric
23 | MedA_ROUTE: Categorical
24 | ICD9_CODE: hierarchical_ICD9
25 |
--------------------------------------------------------------------------------
/FIDDLE/config.py:
--------------------------------------------------------------------------------
1 | import os, yaml
2 | import copy
3 |
4 | with open(os.path.join(os.path.dirname(__file__), 'config-default.yaml')) as f:
5 | config_default = yaml.safe_load(f)
6 |
7 | def load_config(fname):
8 | config = copy.deepcopy(config_default)
9 | if fname:
10 | config_custom = yaml.safe_load(open(fname, 'r'))
11 | for k, v in config_custom.items():
12 | config[k] = v
13 | return config
14 |
15 |
16 | ID_col = 'ID'
17 | t_col = 't'
18 | var_col = 'variable_name'
19 | val_col = 'variable_value'
20 |
21 | if 'column_names' in config_default:
22 | ID_col = config_default['column_names'].get('ID', 'ID')
23 | t_col = config_default['column_names'].get('t', 't')
24 | var_col = config_default['column_names'].get('var_name', 'variable_name')
25 | val_col = config_default['column_names'].get('var_value', 'variable_value')
26 | else:
27 | pass
28 |
--------------------------------------------------------------------------------
/FIDDLE/helpers.py:
--------------------------------------------------------------------------------
1 | import pandas as pd
2 | import numpy as np
3 | import scipy
4 | import sparse
5 | from collections import defaultdict
6 | from tqdm import tqdm
7 |
8 | from sklearn.feature_selection import VarianceThreshold
9 | import sklearn
10 | from collections import defaultdict
11 |
12 | try:
13 | from .config import *
14 | except:
15 | from config import *
16 |
17 | def print_header(*content, char='='):
18 | print()
19 | print(char * 80)
20 | print(*content)
21 | print(char * 80, flush=True)
22 |
23 |
24 | ######
25 | # Hierarchical value type
26 | # - Currently supports parsing/mapping ICD9, ICD10; will add support for CPT, DRG
27 | # - Requires the user to specify which level(s) of the hierarchy to encode
28 | # - Each hierachical variable is mapped to multiple rows with string values after Pre-filter
29 | # as the first step of Transform, and will be treated as categorical variables
30 | ######
31 | from icd9cms import icd9
32 | import icd10
33 |
34 | def map_icd_hierarchy(s, version=9):
35 | s = str(s)
36 | code9 = icd9.search(s)
37 | code10 = icd10.find(s)
38 | if code9 is None and code10 is None:
39 | raise Exception("Invalid ICD code", s)
40 |
41 | if version == 9:
42 | if code9 is not None:
43 | return list(reversed([code9.alt_code] + code9.ancestors()))
44 | else:
45 | raise Exception("Invalid ICD version", s)
46 | elif version == 10:
47 | if code10 is not None:
48 | return [code10.chapter, code10.block, code10.code[:3], code10.code]
49 | else:
50 | try:
51 | # Attempt to convert from version 9 to 10
52 | s_ = convert_icd_9_to_10(code9.alt_code)
53 | code = icd10.find(s_)
54 | if code is None:
55 | # Fall back to version 9
56 | return list(reversed([code9.alt_code] + code9.ancestors()))
57 | else:
58 | return [code.chapter, code.block, code.code[:3], code.code]
59 | except:
60 | warnings.warn('Conversion failed: ' + str(s))
61 | return list(reversed([code9.alt_code] + code9.ancestors()))
62 | # raise Exception('Conversion error: ' + str(s))
63 | else:
64 | raise Exception("Invalid ICD version", s)
65 |
66 | import warnings
67 | _df_icd_mapping = pd.read_csv('https://raw.githubusercontent.com/bhanratt/ICD9CMtoICD10CM/master/icd9to10dictionary.txt', sep='|', header=None, names=['ICD9', 'ICD10', 'Description'])
68 | _icd_mapping_9_to_10 = dict(_df_icd_mapping[['ICD9', 'ICD10']].values)
69 | def convert_icd_9_to_10(s):
70 | try:
71 | return str(
72 | _icd_mapping_9_to_10.get(s) or
73 | _icd_mapping_9_to_10.get(icd9.search(s).parent.alt_code) or
74 | _icd_mapping_9_to_10.get(icd9.search(s).parent.parent.alt_code)
75 | )
76 | except:
77 | warnings.warn('Conversion failed: ' + str(s))
78 | return s
79 |
80 | ######
81 | # Transform
82 | ######
83 |
84 | def get_unique_variables(df):
85 | return sorted(df[var_col].unique())
86 |
87 | def get_frequent_numeric_variables(df_time_series, variables, threshold, args):
88 | output_dir = args.output_dir
89 | df_population = args.df_population
90 | T, dt = args.T, args.dt
91 |
92 | df_types = pd.read_csv(output_dir + 'value_types.csv').set_index(var_col)['value_type']
93 | numeric_vars = [col for col in variables if df_types.get(col) == 'Numeric']
94 | df_num_counts = calculate_variable_counts(df_time_series, df_population)[numeric_vars] #gets the count of each variable for each patient.
95 | variables_num_freq = df_num_counts.columns[df_num_counts.mean() >= threshold * np.floor(T/dt)]
96 | return variables_num_freq
97 |
98 | def calculate_variable_counts(df_data, df_population):
99 | """
100 | df_data in raw format with four columns
101 | """
102 | df = df_data.copy()
103 | df['count'] = 1
104 | df_count = df[[ID_col, var_col, 'count']].groupby([ID_col, var_col]).count().unstack(1, fill_value=0)
105 | df_count.columns = df_count.columns.droplevel()
106 | df_count = df_count.reindex(df_population.index, fill_value=0)
107 | ## Slower version
108 | # df_count = df[['ID', 'variable_name', 'count']].pivot_table(index='ID', columns='variable_name', aggfunc='count', fill_value=0)
109 | return df_count
110 |
111 | def select_dtype(df, dtype, dtypes=None):
112 | if dtypes is None:
113 | ## Need to assert dtypes are not all objects
114 | assert not all(df.dtypes == 'object')
115 | if dtype == 'mask':
116 | return df.select_dtypes('bool')
117 | elif dtype == '~mask':
118 | return df.select_dtypes(exclude='bool')
119 | else:
120 | ## Need to assert df.columns and dtypes.index are the same
121 | if dtype == 'mask':
122 | return df.loc[:, (dtypes == 'bool')].astype(bool)
123 | elif dtype == '~mask':
124 | return df.loc[:, (dtypes != 'bool')]
125 | else:
126 | assert False
127 | return
128 |
129 |
130 | def compute_bin_edges(x, q):
131 | # ignore strings when performing qcut
132 | z = x.copy()
133 | z = z.apply(make_float)
134 | m = z.apply(np.isreal)
135 | bin_edges = None
136 | if z.loc[m].dropna().nunique() > 1: # when more than one numeric values
137 | if z.loc[m].dropna().nunique() == 2:
138 | pass
139 | else:
140 | bin_edges = list(np.unique(np.nanpercentile(z.loc[m].astype(float).values, np.linspace(0, 100, q+1))))
141 | return (x.name, bin_edges)
142 |
143 | def smart_qcut_dummify_parallel(first_arg):
144 | return smart_qcut_dummify(*first_arg)
145 |
146 | def smart_qcut_dummify(x, bin_edges, use_ordinal_encoding=False):
147 | # ignore strings when performing qcut
148 | z = x.copy()
149 | z = z.apply(make_float)
150 | m = z.apply(np.isreal)
151 | if z.loc[m].dropna().nunique() > 1: # when more than one unique numeric values
152 | if z.loc[m].dropna().nunique() == 2: # when only two unique numeric values
153 | out = pd.get_dummies(x, prefix=x.name)
154 | else:
155 | if use_ordinal_encoding:
156 | col_names = ['{}>{}'.format(z.name, bin_edge) for bin_edge in bin_edges[:-1]]
157 | out = pd.DataFrame(0, z.index, col_names)
158 | for i, bin_edge in enumerate(bin_edges[:-1]):
159 | out.loc[m, col_names[i]] = (z.loc[m] > bin_edge).astype(int)
160 | out = pd.concat([out, pd.get_dummies(z.where(~m, np.nan), prefix=z.name)], axis=1)
161 | else:
162 | # bin_edges = np.nanpercentile(z.loc[m].astype(float).to_numpy(), [0, 20, 40, 60, 80, 100])
163 | # bin_edges = np.unique(bin_edges)
164 | # z.loc[m] = pd.cut(z.loc[m].to_numpy(), bin_edges, duplicates='drop')
165 | z.loc[m] = pd.cut(z.loc[m].astype(float).to_numpy(), bin_edges, duplicates='drop', include_lowest=True)
166 | out = pd.get_dummies(z, prefix=z.name)
167 | else:
168 | out = pd.get_dummies(x, prefix=x.name)
169 | return out
170 |
171 | def smart_dummify_impute(x):
172 | x = x.copy()
173 | x = x.apply(make_float)
174 | m = x.apply(np.isreal)
175 | if x.loc[m].dropna().nunique() == 0: # all string values
176 | return pd.get_dummies(x, prefix=x.name, prefix_sep=':')
177 | else:
178 | x = pd.DataFrame(x)
179 | x = x.fillna(x.mean()) # simple mean imputation
180 | return x
181 |
182 | def make_float(v):
183 | if v is None:
184 | return np.nan
185 | try:
186 | return float(v)
187 | except ValueError:
188 | return v
189 | assert False
190 |
191 | def is_numeric(v):
192 | if v is None:
193 | return np.nan
194 | try:
195 | float(v)
196 | return True
197 | except ValueError:
198 | return False
199 | assert False
200 |
201 |
202 | ######
203 | # Time-series internals
204 | ######
205 |
206 | def _get_time_bins(T, dt):
207 | # Defines the boundaries of time bins [0, dt, 2*dt, ..., k*dt]
208 | # where k*dt <= T and (k+1)*dt > T
209 | return np.arange(0, dt*(np.floor(T/dt)+1), dt)
210 |
211 | def _get_time_bins_index(T, dt):
212 | return pd.cut([], _get_time_bins(T, dt), right=False).categories
213 |
214 | def pivot_event_table(df):
215 | df = df.copy()
216 |
217 | # Handle cases where the same variable is recorded multiple times with the same timestamp
218 | # Adjust the timestamps by epsilon so that all timestamps are unique
219 | eps = 1e-6
220 | m_dups = df.duplicated([t_col, var_col], keep=False)
221 | df_dups = df[m_dups].copy()
222 | for v, df_v in df_dups.groupby(var_col):
223 | df_dups.loc[df_v.index, t_col] += eps * np.arange(len(df_v))
224 |
225 | df = pd.concat([df[~m_dups], df_dups])
226 | assert not df.duplicated([t_col, var_col], keep=False).any()
227 |
228 | return pd.pivot_table(df, val_col, t_col, var_col, 'first')
229 |
230 | def presence_mask(df_i, variables, T, dt):
231 | # for each itemid
232 | # for each time bin, whether there is real measurement
233 | if len(df_i) == 0:
234 | mask_i = pd.DataFrame().reindex(index=_get_time_bins_index(T, dt), columns=list(variables), fill_value=False)
235 | else:
236 | mask_i = df_i.groupby(
237 | pd.cut(df_i.index, _get_time_bins(T, dt), right=False)
238 | ).apply(lambda x: x.notnull().any())
239 | mask_i = mask_i.reindex(columns=variables, fill_value=False)
240 |
241 | mask_i.columns = [str(col) + '_mask' for col in mask_i.columns]
242 | return mask_i
243 |
244 | def get_delta_time(mask_i):
245 | a = 1 - mask_i
246 | b = a.cumsum()
247 | c = mask_i.cumsum()
248 | dt_i = b - b.where(~a.astype(bool)).ffill().fillna(0).astype(int)
249 |
250 | # the delta time for itemid's for which there are no measurements must be 0
251 | # or where there's no previous measurement and no imputation
252 | dt_i[c == 0] = 0
253 |
254 | dt_i.columns = [str(col).replace('_mask', '_delta_time') for col in dt_i.columns]
255 | return dt_i
256 |
257 | def impute_ffill(df, columns, T, dt, mask=None):
258 | if len(df) == 0:
259 | return pd.DataFrame().reindex(columns=columns, fill_value=np.nan)
260 |
261 | if mask is None:
262 | mask = presence_mask(df, columns)
263 |
264 | # Calculate time bins, sorted by time
265 | df_bin = df.copy()
266 | df_bin.index = pd.cut(df_bin.index, _get_time_bins(T, dt), right=False)
267 |
268 | # Compute the values used for imputation
269 | ## Collapse duplicate time bins, keeping latest values for each time bin
270 | df_imp = df_bin.ffill()
271 | df_imp = df_imp[~df_imp.index.duplicated(keep='last')]
272 | ## Reindex to make sure every time bin exists
273 | df_imp = df_imp.reindex(_get_time_bins_index(T, dt))
274 | ## Forward fill the missing time bins
275 | df_imp = df_imp.ffill()
276 |
277 | df_ff = df_imp
278 | df_ff[mask.to_numpy()] = np.nan
279 | df_ff.index = df_ff.index.mid ## Imputed values lie at the middle of a time bin
280 | df_ff = pd.concat([df, df_ff]).dropna(how='all')
281 | df_ff.sort_index(inplace=True)
282 | return df_ff
283 |
284 | def most_recent_values(df_i, columns, T, dt):
285 | df_bin = df_i.copy()
286 | df_bin.index = pd.cut(df_bin.index, _get_time_bins(T, dt), right=False)
287 | df_v = df_bin.groupby(level=0).last()
288 | df_v.columns = [str(col) + '_value' for col in df_v.columns]
289 | df_v = df_v.reindex(_get_time_bins_index(T, dt))
290 | return df_v
291 |
292 | def summary_statistics(df_i, columns, stats_functions, T, dt):
293 | # e.g. stats_functions=['mean', 'min', 'max']
294 | if len(columns) == 0:
295 | return pd.DataFrame().reindex(_get_time_bins_index(T, dt))
296 | else:
297 | # Encode statistics for numeric, frequent variables
298 | df_numeric = df_i[columns]
299 | df = df_numeric.copy().astype(float)
300 | df.index = pd.cut(df.index, _get_time_bins(T, dt), right=False)
301 | df_v = df.reset_index().groupby('index').agg(stats_functions)
302 | df_v.columns = list(map('_'.join, df_v.columns.values))
303 | df_v = df_v.reindex(_get_time_bins_index(T, dt))
304 | return df_v
305 |
306 | def check_imputed_output(df_v):
307 | # Check imputation is successful
308 | ## If column is all null -> OK
309 | ## If column is all non-null -> OK
310 | ## If column has some null -> should only occur at the beginning
311 | not_null = df_v.notnull().all()
312 | all_null = df_v.isnull().all()
313 | cols_to_check = list(df_v.columns[~(not_null | all_null)])
314 |
315 | for col in cols_to_check:
316 | x = df_v[col].to_numpy()
317 | last_null_idx = np.argmax(np.where(pd.isnull(x))) # Find index of last nan
318 | assert pd.isnull(x[:(last_null_idx+1)]).all() # all values up to here are nan
319 | assert (~pd.isnull(x[(last_null_idx+1):])).all() # all values after here are not nan
320 | return
321 |
322 |
323 | ######
324 | # Post-filter: feature selection classes
325 | ######
326 | try:
327 | from sklearn.feature_selection._base import SelectorMixin
328 | except:
329 | from sklearn.feature_selection.base import SelectorMixin
330 |
331 | class FrequencyThreshold_temporal(
332 | sklearn.base.BaseEstimator,
333 | SelectorMixin
334 | ):
335 | def __init__(self, threshold=0., L=None):
336 | assert L is not None
337 | self.threshold = threshold
338 | self.L = L
339 |
340 | def fit(self, X, y=None):
341 | # Reshape to be 3-dimensional array
342 | NL, D = X.shape
343 | X = X.reshape((int(NL/self.L), self.L, D))
344 |
345 | # Collapse time dimension, generating NxD matrix
346 | X_notalways0 = X.any(axis=1)
347 | X_notalways1 = (1-X).any(axis=1)
348 |
349 | self.freqs_notalways0 = np.mean(X_notalways0, axis=0)
350 | self.freqs_notalways1 = np.mean(X_notalways1, axis=0)
351 | return self
352 |
353 | def _get_support_mask(self):
354 | mask = np.logical_and(
355 | self.freqs_notalways0 > self.threshold,
356 | self.freqs_notalways1 > self.threshold,
357 | )
358 | if hasattr(mask, "toarray"):
359 | mask = mask.toarray()
360 | if hasattr(mask, "todense"):
361 | mask = mask.todense()
362 | return mask
363 |
364 | # Keep only first feature in a pairwise perfectly correlated feature group
365 | class CorrelationSelector(
366 | sklearn.base.BaseEstimator,
367 | SelectorMixin,
368 | ):
369 | def __init__(self):
370 | super().__init__()
371 |
372 | def fit(self, X, y=None):
373 | if hasattr(X, "to_scipy_sparse"): # sparse matrix
374 | X = X.to_scipy_sparse()
375 |
376 | # Calculate correlation matrix
377 | # Keep only lower triangular matrix
378 | if scipy.sparse.issparse(X):
379 | self.corr_matrix = sparse_corrcoef(X.T)
380 | else:
381 | self.corr_matrix = np.corrcoef(X.T)
382 | np.fill_diagonal(self.corr_matrix, 0)
383 | self.corr_matrix *= np.tri(*self.corr_matrix.shape)
384 |
385 | # get absolute value
386 | corr = abs(self.corr_matrix)
387 |
388 | # coefficient close to 1 means perfectly correlated
389 | # Compare each feature to previous feature (smaller index) to see if they have correlation of 1
390 | to_drop = np.isclose(corr, 1.0).sum(axis=1).astype(bool)
391 | self.to_keep = ~to_drop
392 |
393 | return self
394 |
395 | def _get_support_mask(self):
396 | return self.to_keep
397 |
398 | def get_feature_aliases(self, feature_names):
399 | feature_names = [str(n) for n in feature_names]
400 | corr_matrix = self.corr_matrix
401 | flags = np.isclose(abs(corr_matrix), 1.0)
402 | alias_map = defaultdict(list)
403 | for i in range(1, corr_matrix.shape[0]):
404 | for j in range(i):
405 | if flags[i,j]:
406 | if np.isclose(corr_matrix[i,j], 1.0):
407 | alias_map[feature_names[j]].append(feature_names[i])
408 | elif np.isclose(corr_matrix[i,j], -1.0):
409 | alias_map[feature_names[j]].append('~{' + feature_names[i] + '}')
410 | else:
411 | assert False
412 |
413 | # Only save alias for first in the list
414 | break
415 | return dict(alias_map)
416 |
417 | # https://stackoverflow.com/questions/19231268/correlation-coefficients-for-sparse-matrix-in-python
418 | def sparse_corrcoef(A, B=None):
419 | if B is not None:
420 | A = sparse.vstack((A, B), format='csr')
421 |
422 | A = A.astype(np.float64)
423 | n = A.shape[1]
424 |
425 | # Compute the covariance matrix
426 | rowsum = A.sum(1)
427 | centering = rowsum.dot(rowsum.T.conjugate()) / n
428 | C = (A.dot(A.T.conjugate()) - centering) / (n - 1)
429 |
430 | # The correlation coefficients are given by
431 | # C_{i,j} / sqrt(C_{i} * C_{j})
432 | d = np.diag(C)
433 | coeffs = C / np.sqrt(np.outer(d, d))
434 |
435 | return np.array(coeffs)
436 |
--------------------------------------------------------------------------------
/FIDDLE/run.py:
--------------------------------------------------------------------------------
1 | import pandas as pd
2 | import numpy as np
3 | import pickle
4 | import time
5 | import os
6 | import yaml
7 | import json
8 | import argparse
9 |
10 | import FIDDLE.config as FIDDLE_config
11 | import FIDDLE.steps as FIDDLE_steps
12 |
13 | def main():
14 | ######
15 | # User arguments
16 | ######
17 | parser = argparse.ArgumentParser(description='')
18 |
19 | # Files
20 | parser.add_argument('--data_fname', type=str, required=True)
21 | parser.add_argument('--population_fname',type=str, required=True)
22 | parser.add_argument('--output_dir', type=str, required=True)
23 | parser.add_argument('--config_fname', type=str, required=False)
24 |
25 | # Settings
26 | parser.add_argument('--T', type=float, required=True)
27 | parser.add_argument('--dt', type=float, required=True)
28 | parser.add_argument('--theta_1', type=float, default=0.001)
29 | parser.add_argument('--theta_2', type=float, default=0.001)
30 | parser.add_argument('--theta_freq', type=float, default=1.0)
31 | parser.add_argument('--stats_functions', nargs='+', default=['min', 'max', 'mean'])
32 |
33 | # Debug
34 | parser.add_argument('--N', type=int, required=False)
35 | parser.add_argument('--Ds', nargs='+', type=int)
36 | parser.add_argument('--no_prefilter', dest='prefilter', action='store_false')
37 | parser.add_argument('--no_postfilter', dest='postfilter', action='store_false')
38 | parser.set_defaults(prefilter=True, postfilter=True)
39 |
40 | args = parser.parse_args()
41 |
42 |
43 | ######
44 | # Load files
45 | ######
46 |
47 | data_fname = args.data_fname
48 | if data_fname.endswith('.p' or '.pickle'):
49 | df_data = pd.read_pickle(data_fname)
50 | elif data_fname.endswith('.csv'):
51 | df_data = pd.read_csv(data_fname)
52 | else:
53 | raise NotImplementedError
54 |
55 | df_population = args.df_population = pd.read_csv(args.population_fname).set_index('ID').sort_index()
56 | config = FIDDLE_config.load_config(args.config_fname)
57 |
58 |
59 | ## Arguments settings
60 | output_dir = args.output_dir
61 | if not output_dir.endswith('/'):
62 | output_dir += '/'
63 |
64 | T = args.T
65 | dt = args.dt
66 | theta_1 = args.theta_1
67 | theta_2 = args.theta_2
68 | theta_freq = args.theta_freq
69 | stats_functions = args.stats_functions
70 |
71 | args.hierarchical_sep = config.get('hierarchical_sep', ':')
72 | args.hierarchical_levels = config.get('hierarchical_levels', [])
73 | args.value_type_override = config.get('value_types', {})
74 |
75 | args.discretize = config.get('discretize', True)
76 | args.use_ordinal_encoding = config.get('use_ordinal_encoding', False)
77 |
78 | args.S_discretization_bins = None
79 | args.X_discretization_bins = None
80 | S_discretization_bins = config.get('S_discretization_bins')
81 | X_discretization_bins = config.get('X_discretization_bins')
82 | if S_discretization_bins:
83 | args.S_discretization_bins = json.load(open(S_discretization_bins, 'r'))
84 | if X_discretization_bins:
85 | args.X_discretization_bins = json.load(open(X_discretization_bins, 'r'))
86 |
87 | args.parallel = config.get('parallel', False)
88 | args.n_jobs = config.get('n_jobs', 1)
89 | args.batch_size = config.get('batch_size', 100)
90 |
91 | N = args.N = args.N or len(df_population)
92 | df_population = df_population.iloc[:args.N]
93 | L = args.L = int(np.floor(T/dt))
94 |
95 | print('Input:')
96 | print(' Data :', args.data_fname)
97 | print(' Population:', args.population_fname)
98 | print(' Config :', args.config_fname)
99 | print()
100 | print('Output directory:', args.output_dir)
101 | print()
102 | print('Input arguments:')
103 | print(' {:<6} = {}'.format('T', T))
104 | print(' {:<6} = {}'.format('dt', dt))
105 | print(' {:<6} = {}'.format('\u03B8\u2081', theta_1))
106 | print(' {:<6} = {}'.format('\u03B8\u2082', theta_2))
107 | print(' {:<6} = {}'.format('\u03B8_freq', theta_freq))
108 | print(' {:<6} = {} {}'.format('k', len(stats_functions), stats_functions))
109 | print()
110 | print('{} = {}'.format('discretize', {False: 'no', True: 'yes'}[args.discretize]))
111 | if args.discretize:
112 | print(' S discretization bins:', S_discretization_bins or 'to be computed from data')
113 | print(' X discretization bins:', X_discretization_bins or 'to be computed from data')
114 | print()
115 | print('N = {}'.format(N))
116 | print('L = {}'.format(L))
117 | print('', flush=True)
118 |
119 |
120 | ######
121 | # Main
122 | ######
123 | df_population[[]].to_csv(output_dir + 'IDs.csv')
124 |
125 | if args.prefilter:
126 | FIDDLE_steps.print_header('1) Pre-filter')
127 | df_data = FIDDLE_steps.pre_filter(df_data, theta_1, df_population, args)
128 | df_data.to_csv(output_dir + 'pre-filtered.csv', index=False)
129 |
130 | FIDDLE_steps.print_header('2) Transform; 3) Post-filter')
131 | df_data, df_types = FIDDLE_steps.parse_variable_data_type(df_data, args)
132 | df_time_invariant, df_time_series = FIDDLE_steps.split_by_timestamp_type(df_data)
133 |
134 | # Process time-invariant data
135 | S, S_feature_names, S_feature_aliases = FIDDLE_steps.process_time_invariant(df_time_invariant, args)
136 |
137 | # Process time-dependent data
138 | X, X_feature_names, X_feature_aliases = FIDDLE_steps.process_time_dependent(df_time_series, args)
139 |
140 | if __name__ == '__main__':
141 | main()
142 |
--------------------------------------------------------------------------------
/FIDDLE/steps.py:
--------------------------------------------------------------------------------
1 | """
2 | FIDDLE Preprocessing steps
3 | 1. Pre-filter
4 | 2. Transform
5 | 3. Post-filter
6 | """
7 | try:
8 | from .helpers import *
9 | except:
10 | from helpers import *
11 | import time
12 | import json
13 | import joblib
14 | import multiprocessing
15 |
16 | def pre_filter(df, threshold, df_population, args):
17 | T = int(args.T)
18 | theta_1 = args.theta_1
19 | df_population = args.df_population
20 |
21 | # Remove rows not in population
22 | print('Remove rows not in population')
23 | df = df[df['ID'].isin(df_population.index)]
24 |
25 | # Remove rows with t outside of [0, T)
26 | print('Remove rows with t outside of [0, {}]'.format(T))
27 | df = df[pd.isnull(df[t_col]) | ((0 <= df[t_col]) & (df[t_col] < T))]
28 |
29 | # Data table should not contain duplicate rows with any numerical values
30 | # Check for inconsistencies
31 | var_names = [v for v, ty in args.value_type_override.items() if 'hierarchical' in ty.lower() or 'categorical' in ty.lower()]
32 | df_tmp = df[~df[var_col].isin(var_names)]
33 | dups = df_tmp.duplicated(subset=[ID_col, t_col, var_col], keep=False)
34 | df_dups = df_tmp[dups]
35 | if any(dups) and any(is_numeric(v) for v in df_dups[val_col] if not pd.isnull(v)):
36 | print(df_dups.head())
37 | raise Exception('Inconsistent numerical values recorded')
38 |
39 | # Remove variables that occur too rarely as defined by the threshold
40 | print('Remove rare variables (<= {})'.format(threshold))
41 |
42 | ## Calculate overall occurrence rate of each variable based on IDs
43 | df_count = calculate_variable_counts(df, df_population) # (N x |var|) table of counts
44 | df_bool = df_count.astype(bool) # convert counts to boolean
45 |
46 | ## Keep variables that are recorded for more than threshold fraction of IDs
47 | variables_keep = df_bool.columns[df_bool.mean(axis=0) > threshold]
48 | df_out = df[df[var_col].isin(variables_keep)]
49 | assert set(variables_keep) == set(df_out[var_col].unique())
50 |
51 | variables = sorted(df_bool.columns)
52 | variables_remove = sorted(set(variables) - set(variables_keep))
53 | print('Total variables :', len(variables))
54 | print('Rare variables :', len(variables_remove))
55 | print('Remaining variables :', len(variables_keep))
56 | print('# rows (original) :', len(df))
57 | print('# rows (filtered) :', len(df_out))
58 | return df_out
59 |
60 |
61 | def parse_variable_data_type(df_data, args):
62 | # 1. parse hierarchical values (e.g. ICD codes) into strings
63 | # 2. automatically detect value types, respecting user override, and set dtypes in DataFrames
64 | # 3. pre-map duplicated non-numerical values into multiple categorical variables
65 | output_dir = args.output_dir
66 | df = df_data
67 | assert val_col in df.columns
68 | print_header('*) Detecting and parsing value types', char='-')
69 |
70 | ## 1. Hierarchical values
71 | var_names = [v for v, ty in args.value_type_override.items() if 'hierarchical' in ty.lower()]
72 | if len(var_names) == 0: # No hierarchical values
73 | pass
74 | else:
75 | print('Parsing hierarchical values')
76 | for var_name in var_names:
77 | var_type = args.value_type_override[var_name]
78 | df_var = df.loc[df[var_col] == var_name, val_col]
79 | if var_type.lower() == 'hierarchical_icd':
80 | # need to figure out ICD version
81 | raise NotImplementedError
82 | elif var_type.lower() == 'hierarchical_icd9':
83 | df_var = df_var.apply(lambda s: map_icd_hierarchy(s, version=9))
84 | elif var_type.lower() == 'hierarchical_icd10':
85 | df_var = df_var.apply(lambda s: map_icd_hierarchy(s, version=10))
86 | else:
87 | df_var = df_var.apply(lambda s: s.split(hierarchical_sep))
88 |
89 | # Assign mapped values back to original df
90 | df.loc[df[var_col] == var_name, val_col] = df_var
91 |
92 | # Only encode selected levels
93 | df_nonhier = df[~df[var_col].isin(var_names)]
94 | df_hier = df[df[var_col].isin(var_names)]
95 | df_hier_levels = []
96 | for hier_level in args.hierarchical_levels:
97 | # encode level if available
98 | df_hier_level = df_hier.copy()
99 | df_hier_level[val_col] = df_hier_level[val_col].apply(lambda h: h[min(hier_level, len(h))])
100 | df_hier_levels.append(df_hier_level)
101 | df_hier_levels = pd.concat(df_hier_levels).drop_duplicates()
102 |
103 | # Combine hierarchical and non-hierarchical data
104 | df = pd.concat([df_nonhier, df_hier_levels])
105 |
106 | ## 2. Detect value types
107 | data_types = []
108 |
109 | # Collect the unique values of each variable
110 | # values_by_variable: dict(variable_name -> [value1, value2, ...])
111 | d = df[[var_col, val_col]].drop_duplicates().sort_values(by=[var_col, val_col])
112 | values_by_variable = defaultdict(list)
113 | for n,v in zip(d[var_col], d[val_col]):
114 | values_by_variable[n].append(v)
115 |
116 | # Determine type of each variable
117 | for variable, values in sorted(values_by_variable.items()):
118 | # Manual override type in config
119 | if variable in args.value_type_override:
120 | data_types.append((variable, args.value_type_override[variable]))
121 | # Force categorical values to be a string
122 | if args.value_type_override[variable] == 'Categorical' and \
123 | any(is_numeric(v) for v in values if not pd.isnull(v)):
124 | m_var = df[var_col] == variable
125 | df.loc[m_var, val_col] = df.loc[m_var, val_col].apply(lambda s: '_' + str(s))
126 | else:
127 | if len(values) == 1 and pd.isnull(values[0]):
128 | data_types.append((variable, 'None'))
129 | elif all(is_numeric(v) for v in values if not pd.isnull(v)):
130 | data_types.append((variable, 'Numeric'))
131 | elif any(is_numeric(v) for v in values if not pd.isnull(v)):
132 | data_types.append((variable, 'Numeric + Categorical'))
133 | else:
134 | data_types.append((variable, 'Categorical'))
135 |
136 | df_types = pd.DataFrame(data_types, columns=['variable_name', 'value_type'])
137 | df_types[var_col] = df_types[var_col].astype(str)
138 | df_types = df_types.set_index(var_col)
139 | fpath = output_dir + 'value_types.csv'
140 | df_types.to_csv(fpath, quoting=1)
141 | print('Saved as:', fpath)
142 |
143 | ## 3. Pre-map duplicated non-numerical values to separate variables
144 | var_names = [v for v, ty in data_types if 'numeric' not in ty.lower() and 'none' not in ty.lower()]
145 | df_non_num = df[df[var_col].isin(var_names)].copy()
146 | dup_ = df_non_num.duplicated(subset=[ID_col, t_col, var_col], keep=False)
147 | df_non_num_dup = df_non_num[dup_].copy()
148 | dup_var_names = df_non_num_dup[var_col].unique()
149 | df_non_num_dup[var_col] = df_non_num_dup[var_col].astype(str) + ':' + df_non_num_dup[val_col].astype(str)
150 | df_non_num_dup[val_col] = 1
151 | df_non_num.loc[dup_, :] = df_non_num_dup
152 | df.loc[df[var_col].isin(var_names), :] = df_non_num
153 |
154 | return df, df_types['value_type']
155 |
156 |
157 | def split_by_timestamp_type(df):
158 | print_header('*) Separate time-invariant and time-dependent', char='-')
159 |
160 | variables_inv = df[pd.isnull(df[t_col])][var_col].unique() # Invariant variables have t = NULL
161 | df_time_invariant = df[df[var_col].isin(variables_inv)]
162 | df_time_series = df[~df[var_col].isin(variables_inv)]
163 |
164 | print('Variables (time-invariant):', len(variables_inv))
165 | print('Variables (time-dependent):', df[var_col].nunique() - len(variables_inv))
166 | print('# rows (time-invariant):', len(df_time_invariant))
167 | print('# rows (time-dependent):', len(df_time_series))
168 | return df_time_invariant, df_time_series
169 |
170 |
171 | def process_time_invariant(df_data_time_invariant, args):
172 | if len(df_data_time_invariant) == 0:
173 | return None, None, None
174 |
175 | output_dir = args.output_dir
176 | df_population = args.df_population
177 | theta_2 = args.theta_2
178 |
179 | ##############
180 | print_header('2-A) Transform time-invariant data', char='-')
181 | dir_path = output_dir + '/'
182 | start_time = time.time()
183 |
184 | ## Create Nxd^ table
185 | df_time_invariant = transform_time_invariant_table(df_data_time_invariant, df_population)
186 | df_time_invariant[[]].to_csv(dir_path + 'S.ID.csv')
187 | print('Time elapsed: %f seconds' % (time.time() - start_time))
188 |
189 | ## Discretize
190 | S_all, S_all_feature_names, S_discretization_bins = map_time_invariant_features(df_time_invariant, args)
191 | sparse.save_npz(dir_path + 'S_all.npz', S_all)
192 | json.dump(list(S_all_feature_names), open(dir_path + 'S_all.feature_names.json', 'w'), sort_keys=True)
193 | json.dump(S_discretization_bins, open(dir_path + 'S_all.discretization.json', 'w'))
194 |
195 | print('Time elapsed: %f seconds' % (time.time() - start_time))
196 |
197 | if args.postfilter:
198 | ##############
199 | print_header('3-A) Post-filter time-invariant data', char='-')
200 |
201 | ## Filter
202 | S, S_feature_names, S_feature_aliases = post_filter_time_invariant(S_all, S_all_feature_names, theta_2)
203 | print('Time elapsed: %f seconds' % (time.time() - start_time))
204 |
205 | ## Save output
206 | print()
207 | print('Output')
208 | print('S: shape={}, density={:.3f}'.format(S.shape, S.density))
209 | sparse.save_npz(dir_path + 'S.npz', S)
210 |
211 | with open(dir_path + 'S.feature_names.json', 'w') as f:
212 | json.dump(list(S_feature_names), f, sort_keys=True)
213 | with open(dir_path + 'S.feature_aliases.json', 'w') as f:
214 | json.dump(S_feature_aliases, f, sort_keys=True)
215 |
216 | print('Total time: %f seconds' % (time.time() - start_time))
217 | print('', flush=True)
218 | return S, S_feature_names, S_feature_aliases
219 | else:
220 | return S_all, S_all_feature_names, None
221 |
222 |
223 | def process_time_dependent(df_data_time_series, args):
224 | if len(df_data_time_series) == 0:
225 | return None, None, None
226 |
227 | output_dir = args.output_dir
228 | theta_2 = args.theta_2
229 |
230 | ##############
231 | print_header('2-B) Transform time-dependent data', char='-')
232 | dir_path = output_dir + '/'
233 | start_time = time.time()
234 |
235 | ## Create NxLxD^ table
236 | df_time_series, dtypes_time_series = transform_time_series_table(df_data_time_series, args)
237 | print('Time elapsed: %f seconds' % (time.time() - start_time))
238 |
239 | ## Save intermediate files
240 | joblib.dump(df_time_series, output_dir + 'df_time_series.joblib')
241 | joblib.dump(dtypes_time_series, output_dir + 'dtypes_time_series.joblib')
242 | df_time_series[[]].to_csv(dir_path + 'X.ID,t_range.csv')
243 |
244 | ## Map variables to features
245 | X_all, X_all_feature_names, X_discretization_bins = map_time_series_features(df_time_series, dtypes_time_series, args)
246 | sparse.save_npz(dir_path + 'X_all.npz', X_all)
247 | json.dump(list(X_all_feature_names), open(dir_path + 'X_all.feature_names.json', 'w'), sort_keys=True)
248 | json.dump(X_discretization_bins, open(dir_path + 'X_all.discretization.json', 'w'))
249 |
250 | print('Time elapsed: %f seconds' % (time.time() - start_time))
251 |
252 | if args.postfilter:
253 | ##############
254 | print_header('3-B) Post-filter time-dependent data', char='-')
255 | print(X_all.shape, X_all.density)
256 |
257 | ## Filter features
258 | X, X_feature_names, X_feature_aliases = post_filter_time_series(X_all, X_all_feature_names, theta_2, args)
259 | print(X.shape, X.density)
260 | print('Time elapsed: %f seconds' % (time.time() - start_time))
261 |
262 | ## Save output
263 | print()
264 | print('Output')
265 | print('X: shape={}, density={:.3f}'.format(X.shape, X.density))
266 | sparse.save_npz(dir_path + 'X.npz', X)
267 | with open(dir_path + 'X.feature_names.json', 'w') as f:
268 | json.dump(list(X_feature_names), f, sort_keys=True)
269 | with open(dir_path + 'X.feature_aliases.json', 'w') as f:
270 | json.dump(X_feature_aliases, f, sort_keys=True)
271 |
272 | print('Total time: %f seconds' % (time.time() - start_time))
273 | print('', flush=True)
274 | return X, X_feature_names, X_feature_aliases
275 | else:
276 | return X_all, X_all_feature_names, None
277 |
278 |
279 | ######
280 | # Time-invariant routines
281 | ######
282 | def transform_time_invariant_table(df_in, df_population):
283 | df_in = df_in.copy()
284 |
285 | # Recorded Value (np.nan if not recorded)
286 | df_value = pd.pivot_table(df_in, val_col, ID_col, var_col, 'last', np.nan)
287 | df_value = df_value.reindex(index=df_population.index, fill_value=np.nan)
288 | df_value.columns = [str(col) + '_value' for col in df_value.columns]
289 |
290 | print('(N \u00D7 ^d) table :\t', df_value.shape)
291 | print('number of missing entries :\t', '{} out of {} total'.format(df_value.isna().sum().sum(), df_value.size))
292 | return df_value
293 |
294 | def map_time_invariant_features(df, args):
295 | # Categorical -> binary features
296 | # Numeric -> binary/float-valued features
297 | discretization_bins = None
298 | if args.discretize:
299 | discretization_bins = args.S_discretization_bins
300 | if discretization_bins is None:
301 | discretization_bins = [compute_bin_edges(df[col], q=5) for col in df.columns]
302 | discretization_bins = dict(discretization_bins)
303 |
304 | out = [smart_qcut_dummify(df[col], discretization_bins[col], use_ordinal_encoding=args.use_ordinal_encoding) for col in df.columns]
305 | time_invariant_features = pd.concat(out, axis=1)
306 | feature_names_all = time_invariant_features.columns.values
307 | sdf = time_invariant_features.astype(pd.SparseDtype(int, fill_value=0))
308 | S_ = sparse.COO(sdf.sparse.to_coo())
309 | else:
310 | # Split a mixed column into numeric and string columns
311 | for col in df.columns:
312 | col_data = df[col]
313 | col_is_numeric = [is_numeric(v) for v in col_data if not pd.isnull(v)]
314 | if not all(col_is_numeric) and any(col_is_numeric): # have mixed type values
315 | numeric_mask = col_data.apply(is_numeric)
316 | df[col+'_str'] = df[col].copy()
317 | df.loc[~numeric_mask, col] = np.nan
318 | df.loc[numeric_mask, col+'_str'] = np.nan
319 |
320 | out = [smart_dummify_impute(df[col]) for col in df.columns]
321 | time_invariant_features = pd.concat(out, axis=1)
322 | feature_names_all = time_invariant_features.columns.values
323 | sdf = time_invariant_features.astype(pd.SparseDtype(float, fill_value=0))
324 | S_ = sparse.COO(sdf.sparse.to_coo())
325 |
326 | print()
327 | print('Output')
328 | print('S_all, binary features :\t', S_.shape)
329 | return S_, feature_names_all, discretization_bins
330 |
331 | def post_filter_time_invariant(S_, S_feature_names_all, threshold):
332 | # Filter features (optional)
333 | assert S_.shape[1] == len(S_feature_names_all)
334 | feature_names_0 = S_feature_names_all
335 | S0 = S_.to_scipy_sparse()
336 | print('Original :', len(feature_names_0))
337 |
338 | ## Remove nearly-constant features (with low variance)
339 | ## a binary feature is removed if =0 (or =1) for >th fraction of examples
340 | ## i.e., variance <= (th * (1 - th))
341 | sel_rare = VarianceThreshold(threshold=(threshold * (1 - threshold)))
342 | S1 = sel_rare.fit_transform(S0)
343 | feature_names_1 = feature_names_0[sel_rare.get_support()]
344 | print('Nearly-constant:', len(feature_names_0) - len(feature_names_1))
345 |
346 | ## Keep only first of pairwise perfectly correlated features
347 | sel_corr = CorrelationSelector()
348 | S2 = sel_corr.fit_transform(S1)
349 | feature_names_2 = feature_names_1[sel_corr.get_support()]
350 | feature_aliases = sel_corr.get_feature_aliases(feature_names_1)
351 | print('Correlated :', len(feature_names_1) - len(feature_names_2))
352 |
353 | S = sparse.COO(S2)
354 | feature_names = feature_names_2
355 | assert S.shape[1] == len(feature_names)
356 |
357 | return S, feature_names, feature_aliases
358 |
359 |
360 | ######
361 | # Time-series routines
362 | ######
363 | def func_encode_single_time_series(i, g, variables, variables_num_freq, T, dt, stats_functions, impute=True):
364 | try:
365 | assert g.index.nunique() == 1
366 | assert g.index.unique()[0] == i
367 | # non-frequent
368 | variables_non = sorted(set(variables) - set(variables_num_freq))
369 | if len(variables_non) > 0:
370 | variables_non = sorted(set(variables) - set(variables_num_freq))
371 | df_j = pivot_event_table(g).reindex(columns=variables_non).sort_index()
372 | df_values_j = most_recent_values(df_j, variables, T, dt)
373 | df_out = df_values_j
374 |
375 | if len(variables_num_freq) > 0:
376 | # frequent
377 | # we're only producing mask, ffill, and statistics if the data is measured frequently enough
378 | df_i = pivot_event_table(g).reindex(columns=variables_num_freq).sort_index()
379 | mask_i = presence_mask(df_i, variables_num_freq, T, dt)
380 | delta_t_i = get_delta_time(mask_i)
381 | df_i = impute_ffill(df_i, variables_num_freq, T, dt, mask_i)
382 | df_stats_i = summary_statistics(df_i, variables_num_freq, stats_functions, T, dt)
383 | df_values_i = most_recent_values(df_i, variables, T, dt)
384 | if impute:
385 | check_imputed_output(df_values_i)
386 | check_imputed_output(df_stats_i)
387 |
388 | df_out = df_out.join([mask_i, delta_t_i, df_values_i, df_stats_i])
389 | except:
390 | print(i)
391 | raise Exception(i)
392 | return i, df_out
393 |
394 | def divide_chunks(l, n):
395 | # looping till length l
396 | for i in range(0, len(l), n):
397 | yield l[i:i + n]
398 |
399 | def form_batches_of_examples(df_in, args, batch_size):
400 | grouped = df_in.set_index(ID_col)
401 | IDs = list(grouped.index.unique())
402 | batches_IDs = list(divide_chunks(IDs, batch_size))
403 | batches = [grouped.loc[chunk] for chunk in batches_IDs]
404 | return batches, batches_IDs
405 |
406 | def process_batch_time_series(first_arg):
407 | batch, batch_IDs, args = first_arg
408 | variables, variables_num_freq = args.variables, args.variables_num_freq
409 | out = dict(
410 | func_encode_single_time_series(i, batch.loc[i:i], variables, variables_num_freq, args.T, args.dt, args.stats_functions)
411 | for i in batch_IDs
412 | )
413 | return out
414 |
415 | def transform_time_series_table(df_in, args):
416 | output_dir = args.output_dir
417 | theta_freq = args.theta_freq
418 | stats_functions = args.stats_functions
419 | N, L = args.N, args.L
420 | df_population = args.df_population
421 | parallel = args.parallel
422 |
423 | ## TODO: asserts shape of df_in
424 |
425 | # Determine all unique variable names
426 | variables = get_unique_variables(df_in)
427 | assert df_in[var_col].nunique() == len(variables)
428 | print('Total variables :', len(variables))
429 |
430 | # Determine frequent variables -> we'll calculate statistics, mask, and delta_time only on these
431 | variables_num_freq = get_frequent_numeric_variables(df_in, variables, theta_freq, args)
432 | print('Frequent variables :', list(variables_num_freq))
433 | print('{} = {}'.format('M\u2081', len(variables_num_freq)))
434 | print('{} = {}'.format('M\u2082', len(variables) - len(variables_num_freq)))
435 | print('{} = {} {}'.format('k ', len(stats_functions), stats_functions))
436 |
437 | print()
438 | print('Transforming each example...')
439 | args.variables = variables
440 | args.variables_num_freq = variables_num_freq
441 |
442 | # Encode time series table for each patient
443 | if args.parallel:
444 | batches, batches_IDs = form_batches_of_examples(df_in, args, batch_size=args.batch_size)
445 | print('Batches of size {}: '.format(args.batch_size), len(batches))
446 | pool = multiprocessing.Pool(args.n_jobs)
447 | out = list(tqdm(pool.imap_unordered(
448 | process_batch_time_series,
449 | zip(batches, batches_IDs, [args]*len(batches))), total=len(batches)
450 | ))
451 | pool.close()
452 | pool.join()
453 |
454 | out = dict((key, d[key]) for d in out for key in d)
455 | print()
456 | print('Parallel processing done', flush=True)
457 |
458 | else:
459 | grouped = list(df_in.groupby(ID_col))
460 | out = dict(
461 | func_encode_single_time_series(i, g.set_index(ID_col), variables, variables_num_freq, args.T, args.dt, args.stats_functions)
462 | for i, g in tqdm(grouped[:N])
463 | )
464 |
465 | # Handle IDs not in the table
466 | df_original = list(out.values())[0]
467 | df_copy = pd.DataFrame().reindex_like(df_original)
468 | for i, j in df_original.dtypes.iteritems():
469 | if i.endswith('_mask'):
470 | assert j == bool
471 | df_copy[i] = False
472 | df_copy[i] = df_copy[i].astype(bool)
473 | if i.endswith('_delta_time'):
474 | df_copy[i] = 0
475 | df_copy[i] = df_copy[i].astype(int)
476 | if j == 'object':
477 | df_copy[i] = df_copy[i].astype('object')
478 |
479 | for ID in df_population.index.values[:N]:
480 | if ID not in out:
481 | out[ID] = df_copy.copy()
482 |
483 | out = {ID: out[ID] for ID in df_population.index.values[:N]}
484 | assert len(out) == N
485 | D_timeseries = out
486 |
487 | # check each example have identical LxD table structure
488 | ID0 = sorted(D_timeseries.keys())[0]
489 | df0 = D_timeseries[ID0]
490 | for ID, df_i in D_timeseries.items():
491 | pd.testing.assert_index_equal(df_i.index, df0.index)
492 | pd.testing.assert_index_equal(df_i.columns, df0.columns)
493 |
494 | D_timeseries = out
495 | D_ = len(list(D_timeseries.values())[0].columns)
496 |
497 | # (N*L)xD^ table
498 | ## Create MultiIndex of (ID, time_bin)
499 | index = sum([
500 | [(ID, t_) for t_ in list(df_.index)]
501 | for ID, df_ in sorted(D_timeseries.items())
502 | ], [])
503 | index = pd.Index(index, names=['ID', 't_range'])
504 | assert len(index) == N * L
505 |
506 | ## Assume all dataframes have the same columns, used after concatenation
507 | columns = list(sorted(D_timeseries.items())[0][1].columns)
508 | columns = np.array(columns)
509 | dtypes = sorted(D_timeseries.items())[0][1].dtypes
510 |
511 | ## Convert each df to a numpy array
512 | ## Concatenate **sorted** numpy arrays (faster than calling pd.concat)
513 | feature_values = [(ID, df_.to_numpy()) for ID, df_ in sorted(D_timeseries.items())]
514 | time_series = np.concatenate([feat_val[1] for feat_val in feature_values])
515 | assert time_series.shape == (len(index), len(columns))
516 |
517 | df_time_series = pd.DataFrame(data=time_series, index=index, columns=columns)
518 |
519 | # Print metadata
520 | print('DONE: Transforming each example...')
521 | ## Freq: Count missing entries using mask
522 | ts_mask = df_time_series[[col for col in df_time_series if col.endswith('_mask')]]
523 | ts_mask.columns = [col.replace('_mask', '') for col in ts_mask.columns]
524 | print('(freq) number of missing entries :\t',
525 | '{} out of {}={} total'.format(
526 | (1-ts_mask).astype(int).sum().sum(),
527 | '\u00D7'.join(str(i) for i in [N,L,ts_mask.shape[1]]), ts_mask.size))
528 |
529 | ## Freq: Count imputed entries using mask and dt
530 | ts_delta_time = df_time_series[[col for col in df_time_series if col.endswith('_delta_time')]]
531 | ts_delta_time.columns = [col.replace('_delta_time', '') for col in ts_delta_time.columns]
532 |
533 | imputed = (1-ts_mask).astype(bool) & (ts_delta_time > 0)
534 | print('(freq) number of imputed entries :\t',
535 | '{}'.format(imputed.sum().sum(), ts_delta_time.size))
536 | imputed.sum().rename('count').to_csv(output_dir + '/' + 'freq_imputed.csv')
537 |
538 | not_imputed = (1-ts_mask).astype(bool) & (ts_delta_time == 0)
539 | print('(freq) number of not imputed entries :\t',
540 | '{}'.format(not_imputed.sum().sum(), ts_delta_time.size))
541 | not_imputed.sum().rename('count').to_csv(output_dir + '/' + 'freq_not_imputed.csv')
542 |
543 | ## Non-Freq: Count missing entries
544 | non_freq_cols = sorted([c + '_value' for c in set(variables) - set(variables_num_freq)])
545 | non_freqs = df_time_series[non_freq_cols]
546 | print('(non-freq) number of missing entries :\t',
547 | '{} out of {}={} total'.format(
548 | non_freqs.isna().sum().sum(),
549 | '\u00D7'.join(str(i) for i in [N,L,non_freqs.shape[1]]), non_freqs.size))
550 |
551 | print()
552 | print('(N \u00D7 L \u00D7 ^D) table :\t', (N, L, len(columns)))
553 | return df_time_series, dtypes
554 |
555 | def map_time_series_features(df_time_series, dtypes, args):
556 | N, L = args.N, args.L
557 |
558 | df_time_series = df_time_series.dropna(axis='columns', how='all').sort_index()
559 |
560 | print('Discretizing features...')
561 | ts_mask = select_dtype(df_time_series, 'mask', dtypes)
562 | ts_mixed = select_dtype(df_time_series, '~mask', dtypes)
563 | assert len(ts_mixed.columns) + len(ts_mask.columns) == len(df_time_series.columns)
564 | ts_feature_mask = ts_mask.astype(int)
565 | ts_mixed_cols = [ts_mixed[col] for col in ts_mixed.columns]
566 |
567 | print()
568 | discretization_bins = None
569 | if args.discretize:
570 | dtype = int
571 | print('Processing', len(ts_mixed_cols), 'non-boolean variable columns...')
572 |
573 | discretization_bins = args.X_discretization_bins
574 | if discretization_bins is None:
575 | print(' Computing bin edges for numeric variables...')
576 | discretization_bins = [compute_bin_edges(col_data, q=5) for col_data in tqdm(ts_mixed_cols)]
577 | discretization_bins = dict(discretization_bins)
578 | else:
579 | print(' Usng predetermined bin edges for numeric variables...')
580 |
581 | print(' Discretizing variables to binary features')
582 | if args.parallel:
583 | pool = multiprocessing.Pool(args.n_jobs)
584 | out = list(tqdm(pool.imap_unordered(
585 | smart_qcut_dummify_parallel,
586 | [(col_data, discretization_bins[col_data.name], args.use_ordinal_encoding) for col_data in ts_mixed_cols]), total=len(ts_mixed_cols)
587 | ))
588 | pool.close()
589 | pool.join()
590 | else:
591 | out = [smart_qcut_dummify(col_data, discretization_bins[col_data.name], use_ordinal_encoding=args.use_ordinal_encoding) for col_data in tqdm(ts_mixed_cols)]
592 | else:
593 | dtype = float
594 | df = ts_mixed.copy()
595 |
596 | # Split a mixed column into numeric and string columns
597 | for col in df.columns:
598 | col_data = df[col]
599 | col_is_numeric = [is_numeric(v) for v in col_data if not pd.isnull(v)]
600 | if not all(col_is_numeric) and any(col_is_numeric): # have mixed type values
601 | numeric_mask = col_data.apply(is_numeric)
602 | df[col+'_str'] = df[col].copy()
603 | df.loc[~numeric_mask, col] = np.nan
604 | df.loc[numeric_mask, col+'_str'] = np.nan
605 |
606 | ts_mixed_cols = [df[col] for col in df.columns]
607 |
608 | print('Discretizing categorical features...')
609 | if args.parallel:
610 | pool = multiprocessing.Pool(args.n_jobs)
611 | out = list(tqdm(pool.imap_unordered(
612 | smart_dummify_impute, [(col_data) for col_data in ts_mixed_cols]), total=len(ts_mixed_cols)
613 | ))
614 | pool.close()
615 | pool.join()
616 | else:
617 | out = [smart_dummify_impute(col_data) for col_data in tqdm(ts_mixed_cols)]
618 |
619 | out = [ts_feature_mask, *out]
620 | D_all = sum(len(df_i.columns) for df_i in out)
621 | X_all_feature_names = np.asarray(sum([list(df_i.columns) for df_i in out], []))
622 | X_dense = np.concatenate([df_i.values for df_i in out], axis=1).astype(dtype)
623 | X_all = sparse.COO(X_dense)
624 |
625 | print('Finished discretizing features')
626 | assert X_all.shape[0] == N * L
627 | X_all = X_all.reshape((N, L, D_all))
628 |
629 | print()
630 | print('Output')
631 | print('X_all: shape={}, density={:.3f}'.format(X_all.shape, X_all.density))
632 | return X_all, X_all_feature_names, discretization_bins
633 |
634 | def post_filter_time_series(X_all, feature_names_all, threshold, args):
635 | N, L = args.N, args.L
636 | assert X_all.shape[0] == N
637 | assert X_all.shape[1] == L
638 | # assert X_all.dtype == int
639 | start_time = time.time()
640 |
641 | X0 = X_all
642 | feature_names_0 = feature_names_all
643 | print('Original :', len(feature_names_0))
644 |
645 | ## Remove nearly-constant features (with low variance)
646 | sel_const = FrequencyThreshold_temporal(threshold=threshold, L=L)
647 | sel_const.fit(X0.reshape((N*L, -1)))
648 | m_ts_const = sel_const.get_support()
649 | assert len(m_ts_const) == X0.shape[-1]
650 | X1 = X0[:, :, m_ts_const]
651 | feature_names_1 = feature_names_0[m_ts_const]
652 | print('Nearly-constant:', len(feature_names_0) - len(feature_names_1))
653 | print('*** time: ', time.time() - start_time)
654 |
655 | ## Keep only first of pairwise perfectly correlated features
656 | sel_ts_corr = CorrelationSelector()
657 | sel_ts_corr.fit(X1.reshape((N*L, -1)))
658 | m_ts_corr = sel_ts_corr.get_support()
659 | assert len(m_ts_corr) == X1.shape[-1]
660 | X2 = X1[:, :, m_ts_corr]
661 | feature_names_2 = feature_names_1[m_ts_corr]
662 | feature_aliases = sel_ts_corr.get_feature_aliases(feature_names_1)
663 | print('Correlated :', len(feature_names_1) - len(feature_names_2))
664 | print('*** time: ', time.time() - start_time)
665 |
666 | X = sparse.COO(X2)
667 | feature_names = feature_names_2
668 | assert X.shape == (N, L, len(feature_names))
669 |
670 | ## Save output
671 | print()
672 | print('Output')
673 | print('X: shape={}, density={:.3f}'.format(X.shape, X.density))
674 |
675 | return X, feature_names, feature_aliases
676 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 MLD3
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # FIDDLE
2 |
3 | FIDDLE – FlexIble Data-Driven pipeLinE – is a preprocessing pipeline that transforms structured EHR data into feature vectors that can be used with ML algorithms, relying on only a small number of user-defined arguments.
4 |
5 | Try a quick demo here: [tiny.cc/FIDDLE-demo](https://tiny.cc/FIDDLE-demo)
6 |
7 | Contributions and feedback are welcome; please submit issues on the GitHub site: https://github.com/MLD3/FIDDLE/issues.
8 |
9 | To enhance reproducibility, we have released [preprocessed features for MIMIC-III and eICU](https://physionet.org/content/mimic-eicu-fiddle-feature/1.0.0/) and [accompanying code](https://github.com/MLD3/FIDDLE-experiments/tree/jamia-replication) for the experiments in the paper. Refer to more details on these linked websites.
10 |
11 | If you use FIDDLE in your research, please cite the following publication:
12 |
13 | ```
14 | @article{FIDDLE,
15 | author = {Tang, Shengpu and Davarmanesh, Parmida and Song, Yanmeng and Koutra, Danai and Sjoding, Michael W and Wiens, Jenna},
16 | title = "{Democratizing EHR analyses with FIDDLE: a flexible data-driven preprocessing pipeline for structured clinical data}",
17 | journal = {Journal of the American Medical Informatics Association},
18 | year = {2020},
19 | month = {10},
20 | doi = {10.1093/jamia/ocaa139},
21 | }
22 | ```
23 |
24 | ## System Requirements
25 |
26 | ### Pip
27 | Requires python 3.7 or above (older versions may still work but have not been tested). Required packages and versions are listed in `requirements.txt`. Run the following command to install the required packages.
28 | ```bash
29 | pip install -r requirements.txt
30 | ```
31 |
32 | ### Docker
33 | To build the docker image, run the following command:
34 | ```bash
35 | docker build -t fiddle-v020 .
36 | ```
37 | Refer to the notebook `tests/small_test/Run-docker.ipynb` for an example to run FIDDLE in docker.
38 |
39 |
40 | ## Usage Notes
41 | FIDDLE generates feature vectors based on data within the observation period $t\in[0,T]$. This feature representation can be used to make predictions of adverse outcomes at t=T. More specifically, FIDDLE outputs a set of binary feature vectors for each example $i$, $\{(s_i,x_i)\ \text{for}\ i=1 \dots N\}$ where $s_i \in \mathbb{R}^d$ contains time-invariant features and $x_i \in \mathbb{R}^{L \times D}$ contains time-dependent features.
42 |
43 | Input:
44 | - formatted EHR data: `.csv` or `.p`/`.pickle` file, a table with 4 columns \[`ID`, `t`, `variable_name`, `variable_value`\]
45 | - population file: a list of unique `ID`s you want processed
46 | - the output feature matrix will correspond to IDs in lexicographically sorted order
47 | - config file:
48 | - specifies additional settings by providing a custom `config.yaml` file
49 | - a default config file is located at `FIDDLE/config-default.yaml`
50 | - arguments:
51 | - T: The time of prediction; time-dependent features will be generated using data in $t\in[0,T]$.
52 | - dt: the temporal granularity at which to "window" time-dependent data.
53 | - theta_1: The threshold for Pre-filter.
54 | - theta_2: The threshold for Post-filter.
55 | - theta_freq: The threshold at which we deem a variable “frequent” (for which summary statistics will be calculated).
56 | - stats_functions: A set of 𝐾 statistics functions (e.g., min, max, mean). Each function is used to calculate a summary value using all recordings within a single time bin. These functions are only applicable to “frequent” variables as determined by theta_freq.
57 |
58 | Output: The generated features and associated metadata are located in `{data_path}/`:
59 |
60 | - `s.npz`: a sparse array of shape (N, d)
61 | - `X.npz`: a sparse tensor of shape (N, L, D)
62 | - `s.feature_names.json`: names of _d_ time-invariant features
63 | - `X.feature_names.json`: names of _D_ time-series features
64 | - `x.feature_aliases.json`: aliases of duplicated time-invariant features
65 | - `X.feature_aliases.json`: aliases of duplicated time-series features
66 |
67 |
68 | To load the generated features:
69 | ```python
70 | X = sparse.load_npz('{data_path}/X.npz'.format(data_path=...)).todense()
71 | s = sparse.load_npz('{data_path}/s.npz'.format(data_path=...)).todense()
72 | ```
73 |
74 |
75 | Example usage:
76 | ```bash
77 | python -m FIDDLE.run \
78 | --data_path='./tests/small_test/' \
79 | --population='./tests/small_test/pop.csv' \
80 | --T=24 --dt=5 \
81 | --theta_1=0.001 --theta_2=0.001 --theta_freq=1 \
82 | --stats_functions 'min' 'max' 'mean'
83 | ```
84 |
85 | ## Guidelines on argument settings
86 | The user-defined arguments of FIDDLE include: T, dt, theta_1, theta_2, theta_freq, and K statistics functions. The settings of these arguments could affect the features and how they can be used. We provided reasonable default values in the implementation, and here list some practical considerations: (i) prediction time and frequency, (ii) temporal density of data, and (iii) class balance.
87 |
88 | (i) The prediction time and frequency determine the appropriate settings for T and dt. The risk stratification tasks we considered all involve a single prediction at the end of a fixed prediction window. It is thus most reasonable to set T to be the length of prediction window. Another possible formulation is to make multiple predictions where each prediction depends on only data from the past (not the future), using models like LSTM or fully convolutional networks. In that case, for example, if a prediction needs to be made every 4 hours over a 48-hour period, then T should be 48 hours, whereas dt should be at most 4 hours.
89 |
90 | (ii) The temporal density of data, that is, how often the variables are usually measured, also affects the setting of dt. This can be achieved by plotting a histogram of recording frequency. In our case, we observed that the maximum hourly frequency is ~1.2 times, which suggests dt should not be smaller than 1 hour. While most variables are recorded on average <0.1 time per hour (most of the time not recorded), the 6 vital signs are recorded slightly >1 time per hour. Thus, given that in the ICU, vital signs are usually collected once per hour, we set dt=1. This also implies the setting of θ_freq to be 1. Besides determining the value for dt from context (how granular we want to encode the data), we can also sweep the range (if there are sufficient computational resources and time) given the prediction frequency and the temporal density of data.
91 |
92 | (iii) We recommend setting θ1=θ2=θ and be conservative to avoid removing information that could be potentially useful. For binary classification, the rule-of-the-thumb we suggest is to set θ to be about 1/100 of the minority class. For example, our cohorts consist of ~10% positive cases, so setting θ=0.001 is appropriate, whereas for a cohort with only 1% positive cases, then θ=0.0001 is more appropriate. Given sufficient computational resources and time, the value of θ can also be swept and optimized.
93 |
94 | Finally, for the summary statistics functions, we included by default the most basic statistics functions are minimum, maximum, and mean. If on average, we expect more than one value per time bin, then we can also include higher order statistics such as standard deviation and linear slope.
95 |
96 |
97 | ## Experiments
98 |
99 | In this repository, we release FIDDLE as a standalone software. In order to show the flexibility and utility of FIDDLE, we conducted several experiments using data from MIMIC-III and eICU. The code to reproduce the results are located at https://github.com/MLD3/FIDDLE-experiments. The experiments were performed using FIDDLE v0.1.0 and reported in the JAMIA paper; bug fixes and new functionalities have since been implemented and may affect the numerical results.
100 |
101 |
102 | ## Publications & Resources
103 | - Title: Democratizing EHR analyses with FIDDLE: a flexible data-driven preprocessing pipeline for structured clinical data.
104 | - Authors: Shengpu Tang, Parmida Davarmanesh, Yanmeng Song, Danai Koutra, Michael W. Sjoding, and Jenna Wiens.
105 | - Published in JAMIA (Journal of the American Medical Informatics Association), October 2020: [article link](https://doi.org/10.1093/jamia/ocaa139)
106 | - Previously presented at MLHC 2019 ([Machine Learning for Healthcare](https://www.mlforhc.org/)) as a [clinical abstract](https://www.mlforhc.org/s/Sjoding-jete.pdf)
107 | - News coverage on HealthcareITNews: [link](https://www.healthcareitnews.com/news/new-framework-helps-streamline-ehr-data-extraction)
108 | - [Poster](https://www.dropbox.com/s/5rid9x12w6f8u50/MLHC%202019%20-%20FIDDLE%20poster.pdf?dl=0) | [Slides](https://www.dropbox.com/s/e6e1tfen2ae85hn/FIDDLE%20-%20MiCHAMP%2020200110%20final.pptx?dl=0)
109 |
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | pyyaml>=5.3
2 | numpy>=1.19
3 | pandas>=1.1
4 | sparse>=0.11
5 | scikit-learn>=0.23
6 | tqdm>=4.50
7 | joblib>=0.16
8 | icd9cms==0.2.1
9 | icd10-cm==0.0.4
10 |
--------------------------------------------------------------------------------
/tests/icd_test/input/config-0.yaml:
--------------------------------------------------------------------------------
1 | hierarchical_sep: ':'
2 | hierarchical_levels: [0]
3 |
--------------------------------------------------------------------------------
/tests/icd_test/input/config-1.yaml:
--------------------------------------------------------------------------------
1 | hierarchical_sep: ':'
2 | hierarchical_levels: [0,1]
3 |
--------------------------------------------------------------------------------
/tests/icd_test/input/config-2.yaml:
--------------------------------------------------------------------------------
1 | hierarchical_sep: ':'
2 | hierarchical_levels: [0,1,2]
3 |
--------------------------------------------------------------------------------
/tests/icd_test/input/data.csv:
--------------------------------------------------------------------------------
1 | ID,t,variable_name,variable_value
2 | 172335,,ICD9_CODE,40301
3 | 172335,,ICD9_CODE,486
4 | 172335,,ICD9_CODE,58281
5 | 172335,,ICD9_CODE,5855
6 | 172335,,ICD9_CODE,4254
7 | 172335,,ICD9_CODE,2762
8 | 172335,,ICD9_CODE,7100
9 | 172335,,ICD9_CODE,2767
10 | 172335,,ICD9_CODE,7243
11 | 172335,,ICD9_CODE,45829
12 | 172335,,ICD9_CODE,2875
13 | 172335,,ICD9_CODE,28521
14 | 172335,,ICD9_CODE,28529
15 | 172335,,ICD9_CODE,27541
16 | 173633,,ICD9_CODE,40301
17 | 173633,,ICD9_CODE,5856
18 | 173633,,ICD9_CODE,58381
19 | 173633,,ICD9_CODE,7100
20 | 173633,,ICD9_CODE,5589
21 | 173633,,ICD9_CODE,2875
22 | 173633,,ICD9_CODE,28521
23 | 173633,,ICD9_CODE,45829
24 | 173633,,ICD9_CODE,32723
25 | 173633,,ICD9_CODE,22804
26 | 173633,,ICD9_CODE,33829
27 | 173633,,ICD9_CODE,78900
28 | 173633,,ICD9_CODE,79092
29 | 173633,,ICD9_CODE,V4511
30 | 174105,,ICD9_CODE,53100
31 | 174105,,ICD9_CODE,41071
32 | 174105,,ICD9_CODE,2859
33 | 174105,,ICD9_CODE,41401
34 | 174105,,ICD9_CODE,725
35 | 109976,,ICD9_CODE,1915
36 | 109976,,ICD9_CODE,3314
37 | 109976,,ICD9_CODE,53081
38 | 178393,,ICD9_CODE,41401
39 | 178393,,ICD9_CODE,4111
40 | 178393,,ICD9_CODE,48283
41 | 178393,,ICD9_CODE,2859
42 | 178393,,ICD9_CODE,2720
43 | 178393,,ICD9_CODE,3051
44 | 114585,,ICD9_CODE,1940
45 | 114585,,ICD9_CODE,1977
46 | 114585,,ICD9_CODE,2553
47 | 114585,,ICD9_CODE,4240
48 | 114585,,ICD9_CODE,5845
49 | 114585,,ICD9_CODE,99859
50 | 114585,,ICD9_CODE,6822
51 | 114585,,ICD9_CODE,5119
52 | 114585,,ICD9_CODE,5990
53 | 114585,,ICD9_CODE,4280
54 | 114585,,ICD9_CODE,34982
55 | 114585,,ICD9_CODE,4019
56 | 114585,,ICD9_CODE,V1000
57 | 114585,,ICD9_CODE,V453
58 | 114585,,ICD9_CODE,V5865
59 | 114585,,ICD9_CODE,0413
60 | 114585,,ICD9_CODE,2518
61 | 114585,,ICD9_CODE,E9320
62 | 127203,,ICD9_CODE,V3001
63 | 127203,,ICD9_CODE,V053
64 | 127203,,ICD9_CODE,V290
65 | 140784,,ICD9_CODE,5715
66 | 140784,,ICD9_CODE,7895
67 | 140784,,ICD9_CODE,07054
68 | 140784,,ICD9_CODE,2875
69 | 140784,,ICD9_CODE,4280
70 | 140784,,ICD9_CODE,2851
71 | 140784,,ICD9_CODE,2765
72 | 140784,,ICD9_CODE,4019
73 | 140784,,ICD9_CODE,25000
74 | 164853,,ICD9_CODE,570
75 | 164853,,ICD9_CODE,07044
76 | 164853,,ICD9_CODE,5712
77 | 164853,,ICD9_CODE,5849
78 | 164853,,ICD9_CODE,5724
79 | 164853,,ICD9_CODE,5118
80 | 164853,,ICD9_CODE,2867
81 | 164853,,ICD9_CODE,51882
82 | 164853,,ICD9_CODE,2875
83 | 164853,,ICD9_CODE,0389
84 | 164853,,ICD9_CODE,486
85 | 164853,,ICD9_CODE,2800
86 | 164853,,ICD9_CODE,2639
87 | 164853,,ICD9_CODE,2761
88 | 164853,,ICD9_CODE,2767
89 | 164853,,ICD9_CODE,99592
90 | 164853,,ICD9_CODE,30393
91 | 164853,,ICD9_CODE,4019
92 | 164853,,ICD9_CODE,5723
93 | 164853,,ICD9_CODE,25000
94 | 164853,,ICD9_CODE,2449
95 | 164853,,ICD9_CODE,1122
96 | 147035,,ICD9_CODE,V3000
97 | 147035,,ICD9_CODE,V053
98 | 135738,,ICD9_CODE,88122
99 | 135738,,ICD9_CODE,9032
100 | 135738,,ICD9_CODE,9033
101 | 135738,,ICD9_CODE,9551
102 | 135738,,ICD9_CODE,9555
103 | 135738,,ICD9_CODE,9552
104 | 135738,,ICD9_CODE,E956
105 | 135738,,ICD9_CODE,30590
106 | 188923,,ICD9_CODE,V3000
107 | 188923,,ICD9_CODE,V053
108 | 188923,,ICD9_CODE,V290
109 | 135750,,ICD9_CODE,V3000
110 | 135750,,ICD9_CODE,7452
111 | 135750,,ICD9_CODE,7622
112 | 195632,,ICD9_CODE,41011
113 | 195632,,ICD9_CODE,41401
114 | 195632,,ICD9_CODE,4019
115 | 195632,,ICD9_CODE,25000
116 | 195632,,ICD9_CODE,3051
117 | 112906,,ICD9_CODE,4412
118 | 112906,,ICD9_CODE,486
119 | 112906,,ICD9_CODE,496
120 | 112906,,ICD9_CODE,07070
121 | 112906,,ICD9_CODE,4478
122 | 112906,,ICD9_CODE,41402
123 | 112906,,ICD9_CODE,41401
124 | 112906,,ICD9_CODE,4019
125 | 112906,,ICD9_CODE,2720
126 | 134369,,ICD9_CODE,44021
127 | 134369,,ICD9_CODE,5849
128 | 134369,,ICD9_CODE,5854
129 | 134369,,ICD9_CODE,5990
130 | 134369,,ICD9_CODE,9971
131 | 134369,,ICD9_CODE,4400
132 | 134369,,ICD9_CODE,40390
133 | 134369,,ICD9_CODE,2749
134 | 134369,,ICD9_CODE,496
135 | 134369,,ICD9_CODE,45829
136 | 134369,,ICD9_CODE,42731
137 | 134369,,ICD9_CODE,V1046
138 | 134369,,ICD9_CODE,V1011
139 | 134369,,ICD9_CODE,V1209
140 | 134369,,ICD9_CODE,V090
141 | 138376,,ICD9_CODE,56983
142 | 138376,,ICD9_CODE,56089
143 | 138376,,ICD9_CODE,49121
144 | 138376,,ICD9_CODE,99859
145 | 138376,,ICD9_CODE,0389
146 | 138376,,ICD9_CODE,99592
147 | 138376,,ICD9_CODE,99831
148 | 138376,,ICD9_CODE,486
149 | 138376,,ICD9_CODE,5849
150 | 138376,,ICD9_CODE,5854
151 | 138376,,ICD9_CODE,2639
152 | 138376,,ICD9_CODE,42833
153 | 138376,,ICD9_CODE,40390
154 | 138376,,ICD9_CODE,42731
155 | 138376,,ICD9_CODE,4280
156 | 138376,,ICD9_CODE,41400
157 | 138376,,ICD9_CODE,V4581
158 | 138376,,ICD9_CODE,V1046
159 | 138376,,ICD9_CODE,V1011
160 | 172461,,ICD9_CODE,43331
161 | 172461,,ICD9_CODE,99812
162 | 172461,,ICD9_CODE,436
163 | 172461,,ICD9_CODE,43320
164 | 172461,,ICD9_CODE,4019
165 | 172461,,ICD9_CODE,2720
166 | 172461,,ICD9_CODE,49390
167 | 172461,,ICD9_CODE,41401
168 | 172461,,ICD9_CODE,V4581
169 | 157348,,ICD9_CODE,99671
170 | 157348,,ICD9_CODE,4241
171 | 157348,,ICD9_CODE,42731
172 | 157348,,ICD9_CODE,4168
173 | 157348,,ICD9_CODE,2449
174 | 176860,,ICD9_CODE,V3101
175 | 176860,,ICD9_CODE,76503
176 | 176860,,ICD9_CODE,769
177 | 176860,,ICD9_CODE,7793
178 | 176860,,ICD9_CODE,7742
179 | 176860,,ICD9_CODE,7707
180 | 176860,,ICD9_CODE,76524
181 | 176860,,ICD9_CODE,77081
182 | 176860,,ICD9_CODE,77981
183 | 176860,,ICD9_CODE,7470
184 | 176860,,ICD9_CODE,7766
185 | 176860,,ICD9_CODE,7726
186 | 176860,,ICD9_CODE,77989
187 | 176860,,ICD9_CODE,36221
188 | 176860,,ICD9_CODE,V290
189 | 176860,,ICD9_CODE,V053
190 | 141647,,ICD9_CODE,19889
191 | 141647,,ICD9_CODE,1972
192 | 141647,,ICD9_CODE,V103
193 | 180872,,ICD9_CODE,V3001
194 | 180872,,ICD9_CODE,74689
195 | 180872,,ICD9_CODE,7661
196 | 180872,,ICD9_CODE,V053
197 | 180872,,ICD9_CODE,V290
198 | 180872,,ICD9_CODE,V293
199 | 164174,,ICD9_CODE,85300
200 | 164174,,ICD9_CODE,78039
201 | 164174,,ICD9_CODE,E8889
202 | 113323,,ICD9_CODE,99859
203 | 113323,,ICD9_CODE,99831
204 | 113323,,ICD9_CODE,5185
205 | 113323,,ICD9_CODE,9971
206 | 113323,,ICD9_CODE,42731
207 | 113323,,ICD9_CODE,73028
208 | 113323,,ICD9_CODE,25000
209 | 113323,,ICD9_CODE,53081
210 | 113323,,ICD9_CODE,41400
211 | 113323,,ICD9_CODE,V4581
212 | 198214,,ICD9_CODE,41071
213 | 198214,,ICD9_CODE,4280
214 | 198214,,ICD9_CODE,2851
215 | 198214,,ICD9_CODE,41401
216 | 198214,,ICD9_CODE,25060
217 | 198214,,ICD9_CODE,3572
218 | 198214,,ICD9_CODE,2720
219 | 198214,,ICD9_CODE,53081
220 | 171781,,ICD9_CODE,V3001
221 | 171781,,ICD9_CODE,77214
222 | 171781,,ICD9_CODE,76518
223 | 171781,,ICD9_CODE,76528
224 | 171781,,ICD9_CODE,V053
225 | 160192,,ICD9_CODE,430
226 | 160192,,ICD9_CODE,78039
227 | 160192,,ICD9_CODE,2761
228 | 160192,,ICD9_CODE,3051
229 | 191817,,ICD9_CODE,41071
230 | 191817,,ICD9_CODE,41401
231 | 191817,,ICD9_CODE,496
232 | 191817,,ICD9_CODE,5990
233 | 191817,,ICD9_CODE,4400
234 | 191817,,ICD9_CODE,2939
235 | 191817,,ICD9_CODE,2749
236 | 191817,,ICD9_CODE,4439
237 | 191817,,ICD9_CODE,4019
238 | 191817,,ICD9_CODE,2720
239 | 191817,,ICD9_CODE,V1582
240 | 167887,,ICD9_CODE,3963
241 | 167887,,ICD9_CODE,41401
242 | 167887,,ICD9_CODE,4019
243 | 167887,,ICD9_CODE,53081
244 | 167887,,ICD9_CODE,3659
245 | 167887,,ICD9_CODE,2449
246 | 167887,,ICD9_CODE,4439
247 | 192180,,ICD9_CODE,135
248 | 192180,,ICD9_CODE,34982
249 | 192180,,ICD9_CODE,5990
250 | 192180,,ICD9_CODE,311
251 | 192180,,ICD9_CODE,E9352
252 | 199634,,ICD9_CODE,72141
253 | 199634,,ICD9_CODE,135
254 | 199634,,ICD9_CODE,496
255 | 199634,,ICD9_CODE,2148
256 | 199634,,ICD9_CODE,V5865
257 | 199634,,ICD9_CODE,72401
258 | 199634,,ICD9_CODE,53081
259 | 199634,,ICD9_CODE,4019
260 | 199634,,ICD9_CODE,25000
261 | 184644,,ICD9_CODE,4375
262 | 184644,,ICD9_CODE,486
263 | 184644,,ICD9_CODE,2720
264 | 184644,,ICD9_CODE,4019
265 | 151583,,ICD9_CODE,41401
266 | 151583,,ICD9_CODE,5185
267 | 151583,,ICD9_CODE,42731
268 | 151583,,ICD9_CODE,42732
269 | 151583,,ICD9_CODE,25060
270 | 151583,,ICD9_CODE,3572
271 | 151583,,ICD9_CODE,24290
272 | 151583,,ICD9_CODE,2720
273 | 151583,,ICD9_CODE,60000
274 | 151583,,ICD9_CODE,V4582
275 | 151583,,ICD9_CODE,V1582
276 | 105764,,ICD9_CODE,1890
277 | 172056,,ICD9_CODE,03811
278 | 172056,,ICD9_CODE,99591
279 | 172056,,ICD9_CODE,30400
280 | 172056,,ICD9_CODE,1120
281 | 172056,,ICD9_CODE,5111
282 | 172056,,ICD9_CODE,7895
283 | 172056,,ICD9_CODE,71107
284 | 172056,,ICD9_CODE,71104
285 | 143430,,ICD9_CODE,80012
286 | 143430,,ICD9_CODE,30500
287 | 143430,,ICD9_CODE,30560
288 | 143430,,ICD9_CODE,E8147
289 | 143430,,ICD9_CODE,8730
290 | 143430,,ICD9_CODE,7812
291 | 143430,,ICD9_CODE,37854
292 | 143430,,ICD9_CODE,9518
293 | 104518,,ICD9_CODE,V3000
294 | 104518,,ICD9_CODE,76519
295 | 104518,,ICD9_CODE,76528
296 | 104518,,ICD9_CODE,77089
297 | 104518,,ICD9_CODE,7742
298 | 104518,,ICD9_CODE,7793
299 | 104518,,ICD9_CODE,7678
300 | 104518,,ICD9_CODE,7661
301 | 104518,,ICD9_CODE,V053
302 | 104518,,ICD9_CODE,V293
303 | 155252,,ICD9_CODE,431
304 | 155252,,ICD9_CODE,2449
305 | 155252,,ICD9_CODE,4019
306 | 155252,,ICD9_CODE,2948
307 | 155252,,ICD9_CODE,311
308 | 186474,,ICD9_CODE,9982
309 | 186474,,ICD9_CODE,2768
310 | 186474,,ICD9_CODE,4019
311 | 186474,,ICD9_CODE,2449
312 | 186474,,ICD9_CODE,2851
313 | 186474,,ICD9_CODE,311
314 | 108329,,ICD9_CODE,042
315 | 108329,,ICD9_CODE,486
316 | 108329,,ICD9_CODE,4254
317 | 108329,,ICD9_CODE,2762
318 | 108329,,ICD9_CODE,5849
319 | 108329,,ICD9_CODE,570
320 | 108329,,ICD9_CODE,5859
321 | 108329,,ICD9_CODE,2848
322 | 108329,,ICD9_CODE,2875
323 | 108329,,ICD9_CODE,4280
324 | 108329,,ICD9_CODE,2859
325 | 170467,,ICD9_CODE,042
326 | 170467,,ICD9_CODE,486
327 | 170467,,ICD9_CODE,4254
328 | 170467,,ICD9_CODE,42820
329 | 170467,,ICD9_CODE,4280
330 | 170467,,ICD9_CODE,5849
331 | 170467,,ICD9_CODE,5859
332 | 170467,,ICD9_CODE,2639
333 | 170467,,ICD9_CODE,2848
334 | 170467,,ICD9_CODE,2761
335 | 170467,,ICD9_CODE,2859
336 | 170467,,ICD9_CODE,V141
337 | 170467,,ICD9_CODE,V071
338 | 190201,,ICD9_CODE,V3001
339 | 190201,,ICD9_CODE,76517
340 | 190201,,ICD9_CODE,76407
341 | 190201,,ICD9_CODE,7756
342 | 190201,,ICD9_CODE,7742
343 | 190201,,ICD9_CODE,7793
344 | 190201,,ICD9_CODE,76528
345 | 190201,,ICD9_CODE,7764
346 | 178596,,ICD9_CODE,V3001
347 | 178596,,ICD9_CODE,7454
348 | 178596,,ICD9_CODE,V053
349 | 111944,,ICD9_CODE,9695
350 | 111944,,ICD9_CODE,2762
351 | 111944,,ICD9_CODE,29590
352 | 111944,,ICD9_CODE,E9503
353 | 111944,,ICD9_CODE,2859
354 | 111944,,ICD9_CODE,2662
355 | 156857,,ICD9_CODE,V3000
356 | 156857,,ICD9_CODE,769
357 | 156857,,ICD9_CODE,7466
358 | 156857,,ICD9_CODE,7742
359 | 156857,,ICD9_CODE,2762
360 | 156857,,ICD9_CODE,77981
361 | 156857,,ICD9_CODE,76519
362 | 156857,,ICD9_CODE,76528
363 | 156857,,ICD9_CODE,76719
364 | 156857,,ICD9_CODE,V290
365 | 156857,,ICD9_CODE,7470
366 | 156857,,ICD9_CODE,74689
367 | 194730,,ICD9_CODE,41001
368 | 194730,,ICD9_CODE,9982
369 | 194730,,ICD9_CODE,5990
370 | 194730,,ICD9_CODE,41401
371 | 194730,,ICD9_CODE,4019
372 | 194730,,ICD9_CODE,2720
373 | 194730,,ICD9_CODE,V1042
374 | 194730,,ICD9_CODE,V1582
375 | 182637,,ICD9_CODE,V3001
376 | 182637,,ICD9_CODE,7660
377 | 182637,,ICD9_CODE,V053
378 | 182637,,ICD9_CODE,V290
379 | 182637,,ICD9_CODE,V293
380 | 112086,,ICD9_CODE,4241
381 | 112086,,ICD9_CODE,9973
382 | 112086,,ICD9_CODE,5180
383 | 112086,,ICD9_CODE,5990
384 | 112086,,ICD9_CODE,99709
385 | 112086,,ICD9_CODE,3558
386 | 112086,,ICD9_CODE,4019
387 | 112086,,ICD9_CODE,2720
388 | 112086,,ICD9_CODE,25000
389 | 112086,,ICD9_CODE,53081
390 | 112086,,ICD9_CODE,5533
391 | 112086,,ICD9_CODE,V1582
392 | 142768,,ICD9_CODE,41061
393 | 142768,,ICD9_CODE,4280
394 | 142768,,ICD9_CODE,41401
395 | 142768,,ICD9_CODE,2720
396 | 142768,,ICD9_CODE,2721
397 | 142768,,ICD9_CODE,2740
398 | 100536,,ICD9_CODE,96500
399 | 100536,,ICD9_CODE,042
400 | 100536,,ICD9_CODE,07054
401 | 100536,,ICD9_CODE,5715
402 | 100536,,ICD9_CODE,30401
403 | 100536,,ICD9_CODE,2848
404 | 100536,,ICD9_CODE,9694
405 | 100536,,ICD9_CODE,E8502
406 | 100536,,ICD9_CODE,E8532
407 | 181542,,ICD9_CODE,41011
408 | 181542,,ICD9_CODE,4271
409 | 181542,,ICD9_CODE,41401
410 | 181542,,ICD9_CODE,42689
411 | 115385,,ICD9_CODE,80416
412 | 115385,,ICD9_CODE,87342
413 | 115385,,ICD9_CODE,E916
414 | 175016,,ICD9_CODE,431
415 | 175016,,ICD9_CODE,20210
416 | 175016,,ICD9_CODE,4019
417 | 110641,,ICD9_CODE,V3001
418 | 110641,,ICD9_CODE,76519
419 | 110641,,ICD9_CODE,76528
420 | 110641,,ICD9_CODE,V502
421 | 158569,,ICD9_CODE,43310
422 | 158569,,ICD9_CODE,39891
423 | 158569,,ICD9_CODE,3963
424 | 158569,,ICD9_CODE,40391
425 | 158569,,ICD9_CODE,70715
426 | 158569,,ICD9_CODE,53081
427 | 158569,,ICD9_CODE,2720
428 | 158569,,ICD9_CODE,25000
429 | 158569,,ICD9_CODE,4148
430 | 120969,,ICD9_CODE,1919
431 | 166401,,ICD9_CODE,1919
432 | 166401,,ICD9_CODE,3484
433 | 166401,,ICD9_CODE,78701
434 | 166401,,ICD9_CODE,56400
435 | 112077,,ICD9_CODE,0389
436 | 112077,,ICD9_CODE,486
437 | 112077,,ICD9_CODE,V4281
438 | 112077,,ICD9_CODE,23875
439 | 112077,,ICD9_CODE,42731
440 | 112077,,ICD9_CODE,41400
441 | 112077,,ICD9_CODE,3004
442 | 112077,,ICD9_CODE,2724
443 | 112077,,ICD9_CODE,2449
444 | 112077,,ICD9_CODE,60001
445 | 112077,,ICD9_CODE,78843
446 | 112077,,ICD9_CODE,32723
447 | 112077,,ICD9_CODE,3320
448 | 112077,,ICD9_CODE,3051
449 | 112077,,ICD9_CODE,V1079
450 | 112077,,ICD9_CODE,V4581
451 | 112077,,ICD9_CODE,V433
452 | 112077,,ICD9_CODE,99591
453 | 112077,,ICD9_CODE,5853
454 | 116630,,ICD9_CODE,4241
455 | 116630,,ICD9_CODE,20280
456 | 116630,,ICD9_CODE,V4282
457 | 116630,,ICD9_CODE,99811
458 | 116630,,ICD9_CODE,3320
459 | 116630,,ICD9_CODE,30000
460 | 116630,,ICD9_CODE,53081
461 | 116630,,ICD9_CODE,60000
462 | 116630,,ICD9_CODE,E8798
463 | 116630,,ICD9_CODE,41401
464 | 116630,,ICD9_CODE,4412
465 | 190243,,ICD9_CODE,74561
466 | 190243,,ICD9_CODE,4240
467 | 190659,,ICD9_CODE,V3101
468 | 190659,,ICD9_CODE,76515
469 | 190659,,ICD9_CODE,76524
470 | 190659,,ICD9_CODE,769
471 | 190659,,ICD9_CODE,7707
472 | 190659,,ICD9_CODE,7775
473 | 190659,,ICD9_CODE,7742
474 | 190659,,ICD9_CODE,77211
475 | 190659,,ICD9_CODE,77081
476 | 190659,,ICD9_CODE,7766
477 | 190659,,ICD9_CODE,V290
478 | 190659,,ICD9_CODE,V053
479 | 123010,,ICD9_CODE,86113
480 | 123010,,ICD9_CODE,5119
481 | 123010,,ICD9_CODE,4239
482 | 123010,,ICD9_CODE,E966
483 | 188646,,ICD9_CODE,V3101
484 | 188646,,ICD9_CODE,7742
485 | 188646,,ICD9_CODE,76516
486 | 188646,,ICD9_CODE,76527
487 | 188646,,ICD9_CODE,22801
488 | 188646,,ICD9_CODE,V290
489 | 121205,,ICD9_CODE,20008
490 | 121205,,ICD9_CODE,2765
491 | 121205,,ICD9_CODE,5559
492 | 121205,,ICD9_CODE,99812
493 | 121205,,ICD9_CODE,51881
494 | 121205,,ICD9_CODE,4470
495 | 121205,,ICD9_CODE,135
496 | 121205,,ICD9_CODE,53100
497 | 121205,,ICD9_CODE,2866
498 | 142807,,ICD9_CODE,76502
499 | 142807,,ICD9_CODE,77181
500 | 142807,,ICD9_CODE,2762
501 | 142807,,ICD9_CODE,769
502 | 142807,,ICD9_CODE,7707
503 | 142807,,ICD9_CODE,77211
504 | 142807,,ICD9_CODE,7742
505 | 142807,,ICD9_CODE,7766
506 | 142807,,ICD9_CODE,36221
507 | 160481,,ICD9_CODE,V3000
508 | 160481,,ICD9_CODE,76503
509 | 160481,,ICD9_CODE,769
510 | 160481,,ICD9_CODE,77181
511 | 160481,,ICD9_CODE,7742
512 | 160481,,ICD9_CODE,76523
513 | 160481,,ICD9_CODE,7766
514 | 160481,,ICD9_CODE,77081
515 | 160481,,ICD9_CODE,77981
516 | 160481,,ICD9_CODE,7470
517 | 160481,,ICD9_CODE,36221
518 | 160481,,ICD9_CODE,2707
519 | 140037,,ICD9_CODE,33520
520 | 140037,,ICD9_CODE,51884
521 | 140037,,ICD9_CODE,486
522 | 140037,,ICD9_CODE,42731
523 | 140037,,ICD9_CODE,4019
524 | 140037,,ICD9_CODE,60000
525 | 140037,,ICD9_CODE,42789
526 | 140037,,ICD9_CODE,2859
527 | 183686,,ICD9_CODE,2761
528 | 183686,,ICD9_CODE,7234
529 | 183686,,ICD9_CODE,4240
530 | 183686,,ICD9_CODE,4589
531 | 183686,,ICD9_CODE,07999
532 | 183686,,ICD9_CODE,4019
533 | 183686,,ICD9_CODE,42789
534 | 183686,,ICD9_CODE,78841
535 | 160891,,ICD9_CODE,4260
536 | 170324,,ICD9_CODE,85181
537 | 170324,,ICD9_CODE,8072
538 | 170324,,ICD9_CODE,V461
539 | 170324,,ICD9_CODE,86402
540 | 170324,,ICD9_CODE,86509
541 | 170324,,ICD9_CODE,4538
542 | 170324,,ICD9_CODE,5185
543 | 170324,,ICD9_CODE,4821
544 | 170324,,ICD9_CODE,8604
545 | 127870,,ICD9_CODE,41401
546 | 127870,,ICD9_CODE,4241
547 | 127870,,ICD9_CODE,4111
548 | 127870,,ICD9_CODE,42731
549 | 127870,,ICD9_CODE,2720
550 | 127870,,ICD9_CODE,4019
551 | 127870,,ICD9_CODE,4401
552 | 188606,,ICD9_CODE,4373
553 | 188606,,ICD9_CODE,2449
554 | 187373,,ICD9_CODE,41401
555 | 187373,,ICD9_CODE,4139
556 | 187373,,ICD9_CODE,4019
557 | 187373,,ICD9_CODE,2720
558 | 187373,,ICD9_CODE,7820
559 | 187373,,ICD9_CODE,V1083
560 | 187373,,ICD9_CODE,6000
561 | 153952,,ICD9_CODE,99602
562 | 153952,,ICD9_CODE,4241
563 | 153952,,ICD9_CODE,4411
564 | 153952,,ICD9_CODE,4260
565 | 153952,,ICD9_CODE,42731
566 | 175533,,ICD9_CODE,51881
567 | 175533,,ICD9_CODE,5070
568 | 175533,,ICD9_CODE,48240
569 | 175533,,ICD9_CODE,5121
570 | 175533,,ICD9_CODE,5185
571 | 175533,,ICD9_CODE,4275
572 | 175533,,ICD9_CODE,3481
573 | 175533,,ICD9_CODE,78003
574 | 175533,,ICD9_CODE,2762
575 | 195700,,ICD9_CODE,V3000
576 | 195700,,ICD9_CODE,769
577 | 195700,,ICD9_CODE,7742
578 | 195700,,ICD9_CODE,7793
579 | 195700,,ICD9_CODE,76517
580 | 195700,,ICD9_CODE,76526
581 | 195700,,ICD9_CODE,75261
582 | 195700,,ICD9_CODE,75263
583 | 195700,,ICD9_CODE,V290
584 | 130744,,ICD9_CODE,1983
585 | 130744,,ICD9_CODE,431
586 | 130744,,ICD9_CODE,1623
587 | 130744,,ICD9_CODE,486
588 | 130744,,ICD9_CODE,4019
589 | 130744,,ICD9_CODE,V1582
590 | 130744,,ICD9_CODE,78321
591 | 130744,,ICD9_CODE,2559
592 | 133550,,ICD9_CODE,431
593 | 133550,,ICD9_CODE,1983
594 | 133550,,ICD9_CODE,1629
595 | 133550,,ICD9_CODE,4275
596 | 133550,,ICD9_CODE,4019
597 | 164025,,ICD9_CODE,V3001
598 | 164025,,ICD9_CODE,7756
599 | 164025,,ICD9_CODE,76408
600 | 164025,,ICD9_CODE,76529
601 | 164025,,ICD9_CODE,7746
602 | 164025,,ICD9_CODE,V502
603 | 164025,,ICD9_CODE,7784
604 | 128744,,ICD9_CODE,7806
605 | 128744,,ICD9_CODE,486
606 | 128744,,ICD9_CODE,4280
607 | 128744,,ICD9_CODE,3334
608 | 161160,,ICD9_CODE,5070
609 | 161160,,ICD9_CODE,0389
610 | 163353,,ICD9_CODE,V3001
611 | 163353,,ICD9_CODE,V053
612 | 163353,,ICD9_CODE,V290
613 | 145834,,ICD9_CODE,0389
614 | 145834,,ICD9_CODE,78559
615 | 145834,,ICD9_CODE,5849
616 | 145834,,ICD9_CODE,4275
617 | 145834,,ICD9_CODE,41071
618 | 145834,,ICD9_CODE,4280
619 | 145834,,ICD9_CODE,6826
620 | 145834,,ICD9_CODE,4254
621 | 145834,,ICD9_CODE,2639
622 | 185777,,ICD9_CODE,042
623 | 185777,,ICD9_CODE,1363
624 | 185777,,ICD9_CODE,7994
625 | 185777,,ICD9_CODE,2763
626 | 185777,,ICD9_CODE,7907
627 | 185777,,ICD9_CODE,5715
628 | 185777,,ICD9_CODE,04111
629 | 185777,,ICD9_CODE,V090
630 | 185777,,ICD9_CODE,E9317
631 | 178980,,ICD9_CODE,V3000
632 | 178980,,ICD9_CODE,V053
633 | 178980,,ICD9_CODE,V290
634 | 107064,,ICD9_CODE,40391
635 | 107064,,ICD9_CODE,4440
636 | 107064,,ICD9_CODE,9972
637 | 107064,,ICD9_CODE,2766
638 | 107064,,ICD9_CODE,2767
639 | 107064,,ICD9_CODE,2859
640 | 107064,,ICD9_CODE,2753
641 | 107064,,ICD9_CODE,V1582
642 | 118037,,ICD9_CODE,V3001
643 | 118037,,ICD9_CODE,V053
644 | 118037,,ICD9_CODE,V290
645 | 159514,,ICD9_CODE,V3001
646 | 159514,,ICD9_CODE,7706
647 | 159514,,ICD9_CODE,7746
648 | 159514,,ICD9_CODE,V290
649 | 159514,,ICD9_CODE,V502
650 | 159514,,ICD9_CODE,V053
651 | 150750,,ICD9_CODE,431
652 | 150750,,ICD9_CODE,5070
653 | 150750,,ICD9_CODE,4280
654 | 150750,,ICD9_CODE,5849
655 | 150750,,ICD9_CODE,2765
656 | 150750,,ICD9_CODE,4019
657 | 184167,,ICD9_CODE,V3000
658 | 184167,,ICD9_CODE,7742
659 | 184167,,ICD9_CODE,76525
660 | 184167,,ICD9_CODE,76515
661 | 184167,,ICD9_CODE,V290
662 | 194540,,ICD9_CODE,1913
663 | 112213,,ICD9_CODE,1570
664 | 112213,,ICD9_CODE,57410
665 | 112213,,ICD9_CODE,9971
666 | 112213,,ICD9_CODE,4275
667 | 112213,,ICD9_CODE,99811
668 | 112213,,ICD9_CODE,4019
669 | 112213,,ICD9_CODE,5680
670 | 112213,,ICD9_CODE,55321
671 | 112213,,ICD9_CODE,E8782
672 | 143045,,ICD9_CODE,41401
673 | 143045,,ICD9_CODE,4111
674 | 143045,,ICD9_CODE,25000
675 | 143045,,ICD9_CODE,4019
676 | 143045,,ICD9_CODE,2720
677 | 103251,,ICD9_CODE,V3000
678 | 103251,,ICD9_CODE,V290
679 | 103251,,ICD9_CODE,V502
680 | 103251,,ICD9_CODE,V053
681 | 103251,,ICD9_CODE,V721
682 | 161087,,ICD9_CODE,4239
683 | 161087,,ICD9_CODE,5119
684 | 161087,,ICD9_CODE,78551
685 | 161087,,ICD9_CODE,4589
686 | 161087,,ICD9_CODE,311
687 | 161087,,ICD9_CODE,7220
688 | 161087,,ICD9_CODE,71946
689 | 161087,,ICD9_CODE,2724
690 | 194023,,ICD9_CODE,7455
691 | 194023,,ICD9_CODE,45829
692 | 194023,,ICD9_CODE,V1259
693 | 194023,,ICD9_CODE,2724
694 | 188822,,ICD9_CODE,25080
695 | 188822,,ICD9_CODE,78039
696 | 188822,,ICD9_CODE,29633
697 | 188822,,ICD9_CODE,V5867
698 | 188822,,ICD9_CODE,E9323
699 | 188822,,ICD9_CODE,V5869
700 | 188822,,ICD9_CODE,47829
701 | 188822,,ICD9_CODE,78057
702 | 188822,,ICD9_CODE,78321
703 | 188822,,ICD9_CODE,4019
704 | 188822,,ICD9_CODE,4264
705 | 188822,,ICD9_CODE,2720
706 | 188822,,ICD9_CODE,V170
707 | 109235,,ICD9_CODE,80502
708 | 109235,,ICD9_CODE,5990
709 | 109235,,ICD9_CODE,5964
710 | 109235,,ICD9_CODE,E8809
711 | 109235,,ICD9_CODE,8220
712 | 109235,,ICD9_CODE,73300
713 | 109235,,ICD9_CODE,2948
714 | 109235,,ICD9_CODE,4019
715 | 109235,,ICD9_CODE,44321
716 | 157681,,ICD9_CODE,41401
717 | 157681,,ICD9_CODE,4111
718 | 157681,,ICD9_CODE,25000
719 | 157681,,ICD9_CODE,2724
720 | 157681,,ICD9_CODE,4019
721 | 109451,,ICD9_CODE,41071
722 | 109451,,ICD9_CODE,78551
723 | 109451,,ICD9_CODE,5781
724 | 109451,,ICD9_CODE,5849
725 | 109451,,ICD9_CODE,40391
726 | 109451,,ICD9_CODE,4280
727 | 109451,,ICD9_CODE,4592
728 | 109451,,ICD9_CODE,5070
729 | 109451,,ICD9_CODE,42731
730 | 109451,,ICD9_CODE,4271
731 | 109451,,ICD9_CODE,41401
732 | 109451,,ICD9_CODE,25000
733 | 109451,,ICD9_CODE,28521
734 | 109451,,ICD9_CODE,1122
735 | 109451,,ICD9_CODE,2720
736 | 109451,,ICD9_CODE,2749
737 | 109451,,ICD9_CODE,V1046
738 | 109451,,ICD9_CODE,43889
739 | 111970,,ICD9_CODE,0388
740 | 111970,,ICD9_CODE,78552
741 | 111970,,ICD9_CODE,40391
742 | 111970,,ICD9_CODE,42731
743 | 111970,,ICD9_CODE,70709
744 | 111970,,ICD9_CODE,5119
745 | 111970,,ICD9_CODE,6823
746 | 111970,,ICD9_CODE,99859
747 | 111970,,ICD9_CODE,00845
748 | 111970,,ICD9_CODE,5720
749 | 111970,,ICD9_CODE,99592
750 | 111970,,ICD9_CODE,V0980
751 | 111970,,ICD9_CODE,25000
752 | 111970,,ICD9_CODE,2859
753 | 111970,,ICD9_CODE,43889
754 | 111970,,ICD9_CODE,2749
755 | 111970,,ICD9_CODE,41401
756 | 111970,,ICD9_CODE,185
757 | 111970,,ICD9_CODE,4439
758 | 111970,,ICD9_CODE,2449
759 | 111970,,ICD9_CODE,E8788
760 | 165315,,ICD9_CODE,9678
761 | 165315,,ICD9_CODE,9693
762 | 165315,,ICD9_CODE,E9502
763 | 165315,,ICD9_CODE,E9503
764 | 165315,,ICD9_CODE,3488
765 | 165315,,ICD9_CODE,29620
766 | 165315,,ICD9_CODE,4019
767 | 124321,,ICD9_CODE,2252
768 | 124321,,ICD9_CODE,3485
769 | 124321,,ICD9_CODE,78039
770 | 124321,,ICD9_CODE,4241
771 | 124321,,ICD9_CODE,4019
772 | 124321,,ICD9_CODE,2720
773 | 124321,,ICD9_CODE,2724
774 | 124321,,ICD9_CODE,V4581
775 | 124321,,ICD9_CODE,V4579
776 | 124321,,ICD9_CODE,V1582
777 | 152223,,ICD9_CODE,41401
778 | 152223,,ICD9_CODE,4111
779 | 152223,,ICD9_CODE,4241
780 | 152223,,ICD9_CODE,V4582
781 | 152223,,ICD9_CODE,2724
782 | 152223,,ICD9_CODE,4019
783 | 152223,,ICD9_CODE,60000
784 | 152223,,ICD9_CODE,3899
785 | 161859,,ICD9_CODE,41041
786 | 161859,,ICD9_CODE,41401
787 | 161859,,ICD9_CODE,53081
788 | 161859,,ICD9_CODE,25000
789 | 129635,,ICD9_CODE,41071
790 | 129635,,ICD9_CODE,25011
791 | 129635,,ICD9_CODE,41401
792 | 129635,,ICD9_CODE,4019
793 | 197661,,ICD9_CODE,99604
794 | 197661,,ICD9_CODE,4271
795 | 197661,,ICD9_CODE,4280
796 | 197661,,ICD9_CODE,42731
797 | 197661,,ICD9_CODE,41401
798 | 197661,,ICD9_CODE,412
799 | 197661,,ICD9_CODE,5939
800 | 197661,,ICD9_CODE,2720
801 | 197661,,ICD9_CODE,60000
802 | 134931,,ICD9_CODE,V3000
803 | 134931,,ICD9_CODE,7706
804 | 134931,,ICD9_CODE,V290
805 | 134931,,ICD9_CODE,V053
806 | 162569,,ICD9_CODE,41401
807 | 162569,,ICD9_CODE,4111
808 | 162569,,ICD9_CODE,496
809 | 162569,,ICD9_CODE,412
810 | 162569,,ICD9_CODE,25000
811 | 162569,,ICD9_CODE,2720
812 | 162569,,ICD9_CODE,4263
813 | 162569,,ICD9_CODE,30029
814 | 162569,,ICD9_CODE,V1582
815 | 162569,,ICD9_CODE,V4582
816 | 162569,,ICD9_CODE,V174
817 | 104557,,ICD9_CODE,99674
818 | 104557,,ICD9_CODE,4160
819 | 104557,,ICD9_CODE,4111
820 | 104557,,ICD9_CODE,4281
821 | 104557,,ICD9_CODE,4271
822 | 104557,,ICD9_CODE,41401
823 | 104557,,ICD9_CODE,4019
824 | 104557,,ICD9_CODE,2720
825 | 104557,,ICD9_CODE,5939
826 | 128652,,ICD9_CODE,3453
827 | 128652,,ICD9_CODE,20190
828 | 128652,,ICD9_CODE,515
829 | 128652,,ICD9_CODE,486
830 | 128652,,ICD9_CODE,4019
831 | 128652,,ICD9_CODE,36250
832 | 128652,,ICD9_CODE,E9331
833 | 128652,,ICD9_CODE,4371
834 | 175413,,ICD9_CODE,5191
835 | 175413,,ICD9_CODE,496
836 | 175413,,ICD9_CODE,42731
837 | 175413,,ICD9_CODE,4538
838 | 175413,,ICD9_CODE,53081
839 | 175413,,ICD9_CODE,78057
840 | 175413,,ICD9_CODE,4019
841 | 175413,,ICD9_CODE,27801
842 | 176176,,ICD9_CODE,0389
843 | 176176,,ICD9_CODE,4928
844 | 176176,,ICD9_CODE,49390
845 | 115799,,ICD9_CODE,41071
846 | 115799,,ICD9_CODE,4280
847 | 115799,,ICD9_CODE,4254
848 | 115799,,ICD9_CODE,42731
849 | 115799,,ICD9_CODE,9971
850 | 115799,,ICD9_CODE,4260
851 | 115799,,ICD9_CODE,41401
852 | 115799,,ICD9_CODE,E8790
853 | 144319,,ICD9_CODE,42789
854 | 144319,,ICD9_CODE,42822
855 | 144319,,ICD9_CODE,4263
856 | 144319,,ICD9_CODE,41401
857 | 144319,,ICD9_CODE,V5861
858 | 144319,,ICD9_CODE,4280
859 | 144319,,ICD9_CODE,2449
860 | 144319,,ICD9_CODE,3659
861 | 166707,,ICD9_CODE,3962
862 | 166707,,ICD9_CODE,4260
863 | 166707,,ICD9_CODE,2875
864 | 166707,,ICD9_CODE,9971
865 | 166707,,ICD9_CODE,42731
866 | 166707,,ICD9_CODE,42732
867 | 166707,,ICD9_CODE,41401
868 | 166707,,ICD9_CODE,4019
869 | 166707,,ICD9_CODE,2449
870 | 166707,,ICD9_CODE,25000
871 | 166707,,ICD9_CODE,71590
872 | 122659,,ICD9_CODE,99831
873 | 122659,,ICD9_CODE,99811
874 | 122659,,ICD9_CODE,41511
875 | 122659,,ICD9_CODE,4538
876 | 122659,,ICD9_CODE,99672
877 | 122659,,ICD9_CODE,496
878 | 122659,,ICD9_CODE,41401
879 | 122659,,ICD9_CODE,V4581
880 | 122659,,ICD9_CODE,4019
881 | 122659,,ICD9_CODE,60000
882 | 122659,,ICD9_CODE,53081
883 | 122659,,ICD9_CODE,V1051
884 | 165660,,ICD9_CODE,55321
885 | 165660,,ICD9_CODE,41511
886 | 165660,,ICD9_CODE,5185
887 | 165660,,ICD9_CODE,486
888 | 165660,,ICD9_CODE,99739
889 | 165660,,ICD9_CODE,5180
890 | 165660,,ICD9_CODE,41400
891 | 165660,,ICD9_CODE,496
892 | 165660,,ICD9_CODE,4019
893 | 165660,,ICD9_CODE,60000
894 | 165660,,ICD9_CODE,30000
895 | 165660,,ICD9_CODE,V1051
896 | 182104,,ICD9_CODE,41401
897 | 182104,,ICD9_CODE,4111
898 | 182104,,ICD9_CODE,496
899 | 182104,,ICD9_CODE,4019
900 | 182104,,ICD9_CODE,3051
901 | 182104,,ICD9_CODE,53081
902 | 182104,,ICD9_CODE,60000
903 | 182104,,ICD9_CODE,V1051
904 | 182104,,ICD9_CODE,5968
905 | 188670,,ICD9_CODE,41071
906 | 188670,,ICD9_CODE,4280
907 | 188670,,ICD9_CODE,496
908 | 188670,,ICD9_CODE,53551
909 | 188670,,ICD9_CODE,2851
910 | 188670,,ICD9_CODE,486
911 | 188670,,ICD9_CODE,41401
912 | 188670,,ICD9_CODE,25000
913 | 188670,,ICD9_CODE,42789
914 | 185910,,ICD9_CODE,60883
915 | 185910,,ICD9_CODE,0389
916 | 185910,,ICD9_CODE,99592
917 | 185910,,ICD9_CODE,5849
918 | 185910,,ICD9_CODE,4280
919 | 185910,,ICD9_CODE,42731
920 | 185910,,ICD9_CODE,9982
921 | 185910,,ICD9_CODE,9974
922 | 185910,,ICD9_CODE,5601
923 | 185910,,ICD9_CODE,6084
924 | 185910,,ICD9_CODE,E8708
925 | 185910,,ICD9_CODE,41400
926 | 185910,,ICD9_CODE,V4581
927 | 106266,,ICD9_CODE,V3000
928 | 106266,,ICD9_CODE,769
929 | 106266,,ICD9_CODE,7742
930 | 106266,,ICD9_CODE,2765
931 | 106266,,ICD9_CODE,7708
932 | 106266,,ICD9_CODE,76519
933 | 106266,,ICD9_CODE,V290
934 | 106266,,ICD9_CODE,V058
935 | 106266,,ICD9_CODE,V053
936 | 101757,,ICD9_CODE,1917
937 | 101757,,ICD9_CODE,5185
938 | 101757,,ICD9_CODE,5130
939 | 101757,,ICD9_CODE,48241
940 | 101757,,ICD9_CODE,5070
941 | 101757,,ICD9_CODE,70705
942 | 101757,,ICD9_CODE,1124
943 | 101757,,ICD9_CODE,496
944 | 101757,,ICD9_CODE,48282
945 | 101757,,ICD9_CODE,78820
946 | 101757,,ICD9_CODE,5121
947 | 101757,,ICD9_CODE,70703
948 | 101757,,ICD9_CODE,3485
949 | 101757,,ICD9_CODE,V1005
950 | 101757,,ICD9_CODE,V1047
951 | 101757,,ICD9_CODE,4019
952 | 101757,,ICD9_CODE,2859
953 | 101757,,ICD9_CODE,3051
954 | 101757,,ICD9_CODE,7099
955 | 119203,,ICD9_CODE,42741
956 | 119203,,ICD9_CODE,4280
957 | 119203,,ICD9_CODE,41400
958 | 119203,,ICD9_CODE,412
959 | 119203,,ICD9_CODE,4019
960 | 119203,,ICD9_CODE,43820
961 | 119203,,ICD9_CODE,43819
962 | 146828,,ICD9_CODE,8052
963 | 146828,,ICD9_CODE,5180
964 | 146828,,ICD9_CODE,E8210
965 | 181750,,ICD9_CODE,41401
966 | 181750,,ICD9_CODE,4139
967 | 181750,,ICD9_CODE,5960
968 | 181750,,ICD9_CODE,42731
969 | 181750,,ICD9_CODE,3968
970 | 181750,,ICD9_CODE,4019
971 | 181750,,ICD9_CODE,2720
972 | 181750,,ICD9_CODE,78057
973 | 181750,,ICD9_CODE,V173
974 | 181750,,ICD9_CODE,4439
975 | 157907,,ICD9_CODE,8249
976 | 157907,,ICD9_CODE,9984
977 | 157907,,ICD9_CODE,8730
978 | 157907,,ICD9_CODE,87344
979 | 157907,,ICD9_CODE,9110
980 | 157907,,ICD9_CODE,9130
981 | 157907,,ICD9_CODE,E8122
982 | 157907,,ICD9_CODE,3051
983 | 144073,,ICD9_CODE,5768
984 | 144073,,ICD9_CODE,20300
985 | 144073,,ICD9_CODE,99659
986 | 144073,,ICD9_CODE,99811
987 | 144073,,ICD9_CODE,2851
988 | 144073,,ICD9_CODE,2809
989 | 144073,,ICD9_CODE,2811
990 | 144073,,ICD9_CODE,22809
991 | 190539,,ICD9_CODE,4241
992 | 190539,,ICD9_CODE,42731
993 | 190539,,ICD9_CODE,4280
994 | 190539,,ICD9_CODE,496
995 | 190539,,ICD9_CODE,2939
996 | 190539,,ICD9_CODE,40390
997 | 190539,,ICD9_CODE,56409
998 | 190539,,ICD9_CODE,311
999 | 190539,,ICD9_CODE,V4582
1000 | 190539,,ICD9_CODE,412
1001 | 190539,,ICD9_CODE,2724
1002 | 132761,,ICD9_CODE,V3000
1003 | 132761,,ICD9_CODE,7746
1004 | 132761,,ICD9_CODE,7661
1005 | 132761,,ICD9_CODE,V290
1006 | 132761,,ICD9_CODE,V293
1007 | 196010,,ICD9_CODE,V3000
1008 | 196010,,ICD9_CODE,V502
1009 | 196010,,ICD9_CODE,V053
1010 | 196010,,ICD9_CODE,V290
1011 | 190797,,ICD9_CODE,7907
1012 | 190797,,ICD9_CODE,78039
1013 | 190797,,ICD9_CODE,5849
1014 | 190797,,ICD9_CODE,58089
1015 | 190797,,ICD9_CODE,5712
1016 | 190797,,ICD9_CODE,07054
1017 | 190797,,ICD9_CODE,04111
1018 | 190797,,ICD9_CODE,5728
1019 | 190797,,ICD9_CODE,2841
1020 | 155385,,ICD9_CODE,41021
1021 | 155385,,ICD9_CODE,30562
1022 | 155385,,ICD9_CODE,41401
1023 | 155385,,ICD9_CODE,4019
1024 | 155385,,ICD9_CODE,53081
1025 | 138795,,ICD9_CODE,V3001
1026 | 138795,,ICD9_CODE,V290
1027 | 138795,,ICD9_CODE,V053
1028 | 190665,,ICD9_CODE,43310
1029 | 190665,,ICD9_CODE,4280
1030 | 190665,,ICD9_CODE,2720
1031 | 190665,,ICD9_CODE,4019
1032 | 190665,,ICD9_CODE,2449
1033 | 190665,,ICD9_CODE,25000
1034 | 190665,,ICD9_CODE,V1011
1035 | 190665,,ICD9_CODE,41400
1036 | 190665,,ICD9_CODE,V4582
1037 | 190665,,ICD9_CODE,V4502
1038 | 181711,,ICD9_CODE,1983
1039 | 181711,,ICD9_CODE,1628
1040 | 181711,,ICD9_CODE,53140
1041 | 181711,,ICD9_CODE,2761
1042 | 181711,,ICD9_CODE,4280
1043 | 181711,,ICD9_CODE,78039
1044 | 181711,,ICD9_CODE,2720
1045 | 181711,,ICD9_CODE,4019
1046 | 162774,,ICD9_CODE,V3001
1047 | 162774,,ICD9_CODE,7661
1048 | 162774,,ICD9_CODE,V053
1049 | 162774,,ICD9_CODE,V290
1050 | 162774,,ICD9_CODE,V293
1051 | 177285,,ICD9_CODE,V3000
1052 | 177285,,ICD9_CODE,2161
1053 | 177285,,ICD9_CODE,V053
1054 | 177285,,ICD9_CODE,V290
1055 | 104130,,ICD9_CODE,5990
1056 | 104130,,ICD9_CODE,40391
1057 | 104130,,ICD9_CODE,5856
1058 | 104130,,ICD9_CODE,25080
1059 | 104130,,ICD9_CODE,0414
1060 | 104130,,ICD9_CODE,4589
1061 | 104130,,ICD9_CODE,311
1062 | 104130,,ICD9_CODE,2948
1063 | 104130,,ICD9_CODE,78701
1064 | 104130,,ICD9_CODE,2449
1065 | 104130,,ICD9_CODE,V4501
1066 | 104130,,ICD9_CODE,28529
1067 | 198892,,ICD9_CODE,V3401
1068 | 198892,,ICD9_CODE,76518
1069 | 198892,,ICD9_CODE,76527
1070 | 176332,,ICD9_CODE,20280
1071 | 176332,,ICD9_CODE,2880
1072 | 176332,,ICD9_CODE,2875
1073 | 176332,,ICD9_CODE,5781
1074 | 176332,,ICD9_CODE,2851
1075 | 176332,,ICD9_CODE,2639
1076 | 176332,,ICD9_CODE,9998
1077 | 176332,,ICD9_CODE,5790
1078 | 176332,,ICD9_CODE,6930
1079 | 189535,,ICD9_CODE,20280
1080 | 189535,,ICD9_CODE,2848
1081 | 189535,,ICD9_CODE,99685
1082 | 189535,,ICD9_CODE,56983
1083 | 189535,,ICD9_CODE,5672
1084 | 189535,,ICD9_CODE,2762
1085 | 189535,,ICD9_CODE,0389
1086 | 189535,,ICD9_CODE,99591
1087 | 189535,,ICD9_CODE,2763
1088 | 189535,,ICD9_CODE,7994
1089 | 189535,,ICD9_CODE,1120
1090 | 189535,,ICD9_CODE,2765
1091 | 189535,,ICD9_CODE,4589
1092 | 189535,,ICD9_CODE,42731
1093 | 189535,,ICD9_CODE,2554
1094 | 189535,,ICD9_CODE,3510
1095 | 189535,,ICD9_CODE,0880
1096 | 116009,,ICD9_CODE,1125
1097 | 116009,,ICD9_CODE,03849
1098 | 116009,,ICD9_CODE,7100
1099 | 116009,,ICD9_CODE,99591
1100 | 116009,,ICD9_CODE,2859
1101 | 116009,,ICD9_CODE,7140
1102 | 195961,,ICD9_CODE,71945
1103 | 195961,,ICD9_CODE,4280
1104 | 195961,,ICD9_CODE,496
1105 | 195961,,ICD9_CODE,57420
1106 | 195961,,ICD9_CODE,4148
1107 | 195961,,ICD9_CODE,E8889
1108 | 195961,,ICD9_CODE,E8498
1109 | 195961,,ICD9_CODE,7808
1110 | 195961,,ICD9_CODE,2948
1111 | 195961,,ICD9_CODE,3079
1112 | 172056,,ICD9_CODE,4210
1113 | 126055,,ICD9_CODE,V4511
1114 | 126055,,ICD9_CODE,34590
1115 | 126055,,ICD9_CODE,56400
1116 | 126055,,ICD9_CODE,28521
1117 | 126055,,ICD9_CODE,79092
1118 | 126055,,ICD9_CODE,32723
1119 | 126055,,ICD9_CODE,51889
1120 | 126055,,ICD9_CODE,78659
1121 | 126055,,ICD9_CODE,78060
1122 | 126055,,ICD9_CODE,7821
1123 | 126055,,ICD9_CODE,4168
1124 | 126055,,ICD9_CODE,V1251
1125 | 126055,,ICD9_CODE,V5861
1126 | 128755,,ICD9_CODE,4372
1127 | 128755,,ICD9_CODE,78039
1128 | 128755,,ICD9_CODE,7100
1129 | 128755,,ICD9_CODE,40391
1130 | 128755,,ICD9_CODE,4251
1131 | 128755,,ICD9_CODE,2859
1132 | 131345,,ICD9_CODE,40301
1133 | 131345,,ICD9_CODE,58281
1134 | 131345,,ICD9_CODE,4254
1135 | 131345,,ICD9_CODE,7100
1136 | 131345,,ICD9_CODE,2875
1137 | 131345,,ICD9_CODE,78702
1138 | 131345,,ICD9_CODE,E9426
1139 | 131345,,ICD9_CODE,9596
1140 | 131345,,ICD9_CODE,E9289
1141 | 131345,,ICD9_CODE,4589
1142 | 131345,,ICD9_CODE,2859
1143 | 131345,,ICD9_CODE,V1251
1144 | 131345,,ICD9_CODE,5856
1145 | 131345,,ICD9_CODE,V451
1146 | 131345,,ICD9_CODE,5990
1147 | 131345,,ICD9_CODE,2767
1148 | 131345,,ICD9_CODE,2762
1149 | 131345,,ICD9_CODE,2753
1150 | 131345,,ICD9_CODE,27541
1151 | 131345,,ICD9_CODE,58881
1152 | 131376,,ICD9_CODE,40301
1153 | 131376,,ICD9_CODE,5856
1154 | 131376,,ICD9_CODE,58281
1155 | 131376,,ICD9_CODE,4254
1156 | 131376,,ICD9_CODE,3643
1157 | 131376,,ICD9_CODE,2841
1158 | 131376,,ICD9_CODE,78959
1159 | 131376,,ICD9_CODE,33829
1160 | 131376,,ICD9_CODE,78900
1161 | 131376,,ICD9_CODE,7100
1162 | 131376,,ICD9_CODE,2875
1163 | 131376,,ICD9_CODE,28521
1164 | 131376,,ICD9_CODE,32723
1165 | 131376,,ICD9_CODE,44389
1166 | 131376,,ICD9_CODE,28529
1167 | 131376,,ICD9_CODE,53190
1168 | 131376,,ICD9_CODE,34590
1169 | 131376,,ICD9_CODE,V5861
1170 | 131376,,ICD9_CODE,V1251
1171 | 131376,,ICD9_CODE,V1254
1172 | 135923,,ICD9_CODE,40301
1173 | 135923,,ICD9_CODE,5856
1174 | 135923,,ICD9_CODE,4251
1175 | 135923,,ICD9_CODE,7100
1176 | 135923,,ICD9_CODE,79902
1177 | 135923,,ICD9_CODE,E9352
1178 | 135923,,ICD9_CODE,2875
1179 | 135923,,ICD9_CODE,28521
1180 | 135923,,ICD9_CODE,78909
1181 | 135923,,ICD9_CODE,32723
1182 | 135923,,ICD9_CODE,3004
1183 | 135923,,ICD9_CODE,V4511
1184 | 135923,,ICD9_CODE,V1251
1185 | 135923,,ICD9_CODE,V5861
1186 | 135923,,ICD9_CODE,V4589
1187 | 136572,,ICD9_CODE,2766
1188 | 136572,,ICD9_CODE,5856
1189 | 136572,,ICD9_CODE,40301
1190 | 136572,,ICD9_CODE,4254
1191 | 136572,,ICD9_CODE,4239
1192 | 136572,,ICD9_CODE,28529
1193 | 136572,,ICD9_CODE,2767
1194 | 136572,,ICD9_CODE,7100
1195 | 136572,,ICD9_CODE,78909
1196 | 136572,,ICD9_CODE,33829
1197 | 136572,,ICD9_CODE,4589
1198 | 136572,,ICD9_CODE,53190
1199 | 136572,,ICD9_CODE,34590
1200 | 136572,,ICD9_CODE,311
1201 | 136572,,ICD9_CODE,V1251
1202 | 136572,,ICD9_CODE,V4512
1203 | 137510,,ICD9_CODE,40301
1204 | 137510,,ICD9_CODE,5856
1205 | 137510,,ICD9_CODE,3643
1206 | 137510,,ICD9_CODE,4254
1207 | 137510,,ICD9_CODE,4239
1208 | 137510,,ICD9_CODE,2766
1209 | 137510,,ICD9_CODE,7100
1210 | 137510,,ICD9_CODE,58381
1211 | 137510,,ICD9_CODE,V4512
1212 | 137510,,ICD9_CODE,V1581
1213 | 137510,,ICD9_CODE,V642
1214 | 137510,,ICD9_CODE,78904
1215 | 137510,,ICD9_CODE,V4511
1216 | 137510,,ICD9_CODE,2875
1217 | 137510,,ICD9_CODE,28529
1218 | 137510,,ICD9_CODE,V1251
1219 | 137510,,ICD9_CODE,V5861
1220 | 137510,,ICD9_CODE,4439
1221 | 137510,,ICD9_CODE,V4578
1222 | 137510,,ICD9_CODE,V0254
1223 | 139061,,ICD9_CODE,40301
1224 | 139061,,ICD9_CODE,58281
1225 | 139061,,ICD9_CODE,5855
1226 | 139061,,ICD9_CODE,5990
1227 | 139061,,ICD9_CODE,4254
1228 | 139061,,ICD9_CODE,7100
1229 | 139061,,ICD9_CODE,7243
1230 | 139061,,ICD9_CODE,2767
1231 | 139061,,ICD9_CODE,2875
1232 | 139061,,ICD9_CODE,79092
1233 | 139061,,ICD9_CODE,25200
1234 | 139061,,ICD9_CODE,28529
1235 | 139061,,ICD9_CODE,V1251
1236 | 140167,,ICD9_CODE,40301
1237 | 140167,,ICD9_CODE,5856
1238 | 140167,,ICD9_CODE,99656
1239 | 140167,,ICD9_CODE,4251
1240 | 140167,,ICD9_CODE,4239
1241 | 140167,,ICD9_CODE,9951
1242 | 140167,,ICD9_CODE,78909
1243 | 140167,,ICD9_CODE,7100
1244 | 140167,,ICD9_CODE,2874
1245 | 140167,,ICD9_CODE,28521
1246 | 140167,,ICD9_CODE,3004
1247 | 140167,,ICD9_CODE,32723
1248 | 140167,,ICD9_CODE,V1251
1249 | 140167,,ICD9_CODE,V5865
1250 | 140167,,ICD9_CODE,V5861
1251 | 140167,,ICD9_CODE,E8781
1252 | 140167,,ICD9_CODE,E9426
1253 | 147469,,ICD9_CODE,40301
1254 | 147469,,ICD9_CODE,5856
1255 | 147469,,ICD9_CODE,34839
1256 | 147469,,ICD9_CODE,58281
1257 | 147469,,ICD9_CODE,5990
1258 | 147469,,ICD9_CODE,2762
1259 | 147469,,ICD9_CODE,3643
1260 | 147469,,ICD9_CODE,2839
1261 | 147469,,ICD9_CODE,7100
1262 | 147469,,ICD9_CODE,V1251
1263 | 147469,,ICD9_CODE,V5861
1264 | 147469,,ICD9_CODE,7842
1265 | 147469,,ICD9_CODE,2767
1266 | 147469,,ICD9_CODE,61172
1267 | 147469,,ICD9_CODE,2875
1268 | 147469,,ICD9_CODE,27541
1269 | 147469,,ICD9_CODE,2753
1270 | 151240,,ICD9_CODE,40301
1271 | 151240,,ICD9_CODE,5856
1272 | 151240,,ICD9_CODE,4254
1273 | 151240,,ICD9_CODE,4239
1274 | 151240,,ICD9_CODE,7100
1275 | 151240,,ICD9_CODE,58381
1276 | 151240,,ICD9_CODE,2767
1277 | 151240,,ICD9_CODE,78701
1278 | 151240,,ICD9_CODE,78791
1279 | 151240,,ICD9_CODE,2753
1280 | 151240,,ICD9_CODE,28529
1281 | 151240,,ICD9_CODE,78904
1282 | 151240,,ICD9_CODE,33829
1283 | 151240,,ICD9_CODE,2875
1284 | 151240,,ICD9_CODE,44389
1285 | 151240,,ICD9_CODE,V0254
1286 | 151240,,ICD9_CODE,V5861
1287 | 151240,,ICD9_CODE,V4512
1288 | 151240,,ICD9_CODE,V4511
1289 | 151240,,ICD9_CODE,V1581
1290 | 155726,,ICD9_CODE,40301
1291 | 155726,,ICD9_CODE,5856
1292 | 155726,,ICD9_CODE,58281
1293 | 155726,,ICD9_CODE,4254
1294 | 155726,,ICD9_CODE,78959
1295 | 155726,,ICD9_CODE,2875
1296 | 155726,,ICD9_CODE,4592
1297 | 155726,,ICD9_CODE,2841
1298 | 155726,,ICD9_CODE,7100
1299 | 155726,,ICD9_CODE,78900
1300 | 155726,,ICD9_CODE,33819
1301 | 155726,,ICD9_CODE,33829
1302 | 155726,,ICD9_CODE,53190
1303 | 155726,,ICD9_CODE,53081
1304 | 155726,,ICD9_CODE,311
1305 | 155726,,ICD9_CODE,28521
1306 | 155726,,ICD9_CODE,28529
1307 | 155726,,ICD9_CODE,34590
1308 | 155726,,ICD9_CODE,73399
1309 | 155726,,ICD9_CODE,32723
1310 | 155726,,ICD9_CODE,44389
1311 | 155726,,ICD9_CODE,62211
1312 | 155726,,ICD9_CODE,V4512
1313 | 155726,,ICD9_CODE,V1251
1314 | 155726,,ICD9_CODE,V5861
1315 | 158943,,ICD9_CODE,2766
1316 | 158943,,ICD9_CODE,5856
1317 | 158943,,ICD9_CODE,40301
1318 | 158943,,ICD9_CODE,58281
1319 | 158943,,ICD9_CODE,4592
1320 | 158943,,ICD9_CODE,4239
1321 | 158943,,ICD9_CODE,99662
1322 | 158943,,ICD9_CODE,7907
1323 | 158943,,ICD9_CODE,28981
1324 | 158943,,ICD9_CODE,4254
1325 | 158943,,ICD9_CODE,4251
1326 | 158943,,ICD9_CODE,78900
1327 | 158943,,ICD9_CODE,5990
1328 | 158943,,ICD9_CODE,2762
1329 | 158943,,ICD9_CODE,78659
1330 | 158943,,ICD9_CODE,33829
1331 | 158943,,ICD9_CODE,7100
1332 | 158943,,ICD9_CODE,V4512
1333 | 158943,,ICD9_CODE,2875
1334 | 158943,,ICD9_CODE,28521
1335 | 158943,,ICD9_CODE,2767
1336 | 158943,,ICD9_CODE,04104
1337 | 158943,,ICD9_CODE,E8791
1338 | 158943,,ICD9_CODE,04112
1339 | 158943,,ICD9_CODE,32723
1340 | 158943,,ICD9_CODE,V1251
1341 | 158943,,ICD9_CODE,V5861
1342 | 158995,,ICD9_CODE,96509
1343 | 158995,,ICD9_CODE,5856
1344 | 158995,,ICD9_CODE,40301
1345 | 158995,,ICD9_CODE,58281
1346 | 158995,,ICD9_CODE,4466
1347 | 158995,,ICD9_CODE,4254
1348 | 158995,,ICD9_CODE,2762
1349 | 158995,,ICD9_CODE,7100
1350 | 158995,,ICD9_CODE,2875
1351 | 158995,,ICD9_CODE,78097
1352 | 158995,,ICD9_CODE,45829
1353 | 158995,,ICD9_CODE,E8502
1354 | 158995,,ICD9_CODE,2767
1355 | 158995,,ICD9_CODE,28521
1356 | 158995,,ICD9_CODE,32723
1357 | 158995,,ICD9_CODE,3004
1358 | 158995,,ICD9_CODE,72992
1359 | 158995,,ICD9_CODE,V4512
1360 | 158995,,ICD9_CODE,V5861
1361 | 158995,,ICD9_CODE,V1251
1362 | 161950,,ICD9_CODE,40301
1363 | 161950,,ICD9_CODE,5856
1364 | 161950,,ICD9_CODE,78959
1365 | 161950,,ICD9_CODE,4251
1366 | 161950,,ICD9_CODE,7100
1367 | 161950,,ICD9_CODE,7840
1368 | 161950,,ICD9_CODE,28521
1369 | 161950,,ICD9_CODE,30000
1370 | 161950,,ICD9_CODE,78659
1371 | 161950,,ICD9_CODE,V1251
1372 | 161950,,ICD9_CODE,V5861
1373 | 161950,,ICD9_CODE,V4511
1374 | 161950,,ICD9_CODE,V4578
1375 | 164029,,ICD9_CODE,40301
1376 | 164029,,ICD9_CODE,7100
1377 | 164029,,ICD9_CODE,5856
1378 | 164029,,ICD9_CODE,V4983
1379 | 164029,,ICD9_CODE,58381
1380 | 164029,,ICD9_CODE,3643
1381 | 166018,,ICD9_CODE,4010
1382 | 166018,,ICD9_CODE,5856
1383 | 166018,,ICD9_CODE,58281
1384 | 166018,,ICD9_CODE,4254
1385 | 166018,,ICD9_CODE,2841
1386 | 166018,,ICD9_CODE,7100
1387 | 166018,,ICD9_CODE,2875
1388 | 166018,,ICD9_CODE,2859
1389 | 166018,,ICD9_CODE,V451
1390 | 166018,,ICD9_CODE,V4589
1391 | 166018,,ICD9_CODE,V4569
1392 | 170149,,ICD9_CODE,4538
1393 | 170149,,ICD9_CODE,5856
1394 | 170149,,ICD9_CODE,40301
1395 | 170149,,ICD9_CODE,4592
1396 | 170149,,ICD9_CODE,58281
1397 | 170149,,ICD9_CODE,4254
1398 | 170149,,ICD9_CODE,2841
1399 | 170149,,ICD9_CODE,7100
1400 | 170149,,ICD9_CODE,28521
1401 | 170149,,ICD9_CODE,2767
1402 | 170149,,ICD9_CODE,25200
1403 | 170149,,ICD9_CODE,45829
1404 | 170149,,ICD9_CODE,78701
1405 | 170149,,ICD9_CODE,2874
1406 | 170149,,ICD9_CODE,79500
1407 | 170149,,ICD9_CODE,78909
1408 | 170149,,ICD9_CODE,2518
1409 | 170149,,ICD9_CODE,E9320
1410 | 158689,,ICD9_CODE,E8500
1411 | 158689,,ICD9_CODE,E8543
1412 | 158689,,ICD9_CODE,E8541
1413 | 158689,,ICD9_CODE,E8498
1414 | 158689,,ICD9_CODE,3051
1415 | 130546,,ICD9_CODE,430
1416 | 130546,,ICD9_CODE,5070
1417 | 130546,,ICD9_CODE,2720
1418 | 130546,,ICD9_CODE,4019
1419 | 130546,,ICD9_CODE,43320
1420 | 129886,,ICD9_CODE,0389
1421 | 105501,,ICD9_CODE,9971
1422 | 105501,,ICD9_CODE,4271
1423 | 105501,,ICD9_CODE,78551
1424 | 105501,,ICD9_CODE,4280
1425 | 105501,,ICD9_CODE,5849
1426 | 105501,,ICD9_CODE,3963
1427 | 105501,,ICD9_CODE,V667
1428 | 197430,,ICD9_CODE,57149
1429 | 197430,,ICD9_CODE,1550
1430 | 197430,,ICD9_CODE,25002
1431 | 197430,,ICD9_CODE,5715
1432 | 197430,,ICD9_CODE,5680
1433 | 197430,,ICD9_CODE,2720
1434 | 197430,,ICD9_CODE,4019
1435 | 197430,,ICD9_CODE,V4581
1436 | 197430,,ICD9_CODE,V5867
1437 | 197430,,ICD9_CODE,27800
1438 | 197430,,ICD9_CODE,41400
1439 | 197430,,ICD9_CODE,V1301
1440 | 197430,,ICD9_CODE,32723
1441 | 189521,,ICD9_CODE,41401
1442 | 189521,,ICD9_CODE,9971
1443 | 189521,,ICD9_CODE,4139
1444 | 189521,,ICD9_CODE,42731
1445 | 189521,,ICD9_CODE,4019
1446 | 189521,,ICD9_CODE,2720
1447 | 189521,,ICD9_CODE,311
1448 | 189521,,ICD9_CODE,V4582
1449 | 175353,,ICD9_CODE,8822
1450 | 175353,,ICD9_CODE,85220
1451 | 175353,,ICD9_CODE,5185
1452 | 175353,,ICD9_CODE,99889
1453 | 175353,,ICD9_CODE,5070
1454 | 175353,,ICD9_CODE,9579
1455 | 175353,,ICD9_CODE,87342
1456 | 175353,,ICD9_CODE,E8150
1457 | 175353,,ICD9_CODE,2859
1458 | 116935,,ICD9_CODE,49322
1459 | 116935,,ICD9_CODE,51882
1460 | 116935,,ICD9_CODE,41071
1461 | 116935,,ICD9_CODE,42841
1462 | 116935,,ICD9_CODE,99812
1463 | 116935,,ICD9_CODE,5849
1464 | 116935,,ICD9_CODE,42731
1465 | 116935,,ICD9_CODE,4660
1466 | 116935,,ICD9_CODE,4589
1467 | 116935,,ICD9_CODE,41401
1468 | 116935,,ICD9_CODE,41402
1469 | 116935,,ICD9_CODE,2449
1470 | 116935,,ICD9_CODE,7921
1471 | 116935,,ICD9_CODE,25000
1472 | 116935,,ICD9_CODE,53081
1473 | 116935,,ICD9_CODE,2859
1474 | 149546,,ICD9_CODE,56985
1475 | 149546,,ICD9_CODE,41071
1476 | 149546,,ICD9_CODE,43411
1477 | 149546,,ICD9_CODE,5849
1478 | 149546,,ICD9_CODE,2851
1479 | 149546,,ICD9_CODE,34280
1480 | 149546,,ICD9_CODE,41402
1481 | 149546,,ICD9_CODE,42731
1482 | 149546,,ICD9_CODE,4280
1483 | 149546,,ICD9_CODE,40390
1484 | 149546,,ICD9_CODE,78451
1485 | 149546,,ICD9_CODE,25000
1486 | 149546,,ICD9_CODE,5859
1487 | 149546,,ICD9_CODE,2724
1488 | 149546,,ICD9_CODE,49320
1489 | 149546,,ICD9_CODE,53081
1490 | 149546,,ICD9_CODE,2449
1491 | 158975,,ICD9_CODE,1534
1492 | 158975,,ICD9_CODE,42821
1493 | 158975,,ICD9_CODE,1982
1494 | 158975,,ICD9_CODE,2639
1495 | 158975,,ICD9_CODE,5849
1496 | 158975,,ICD9_CODE,5601
1497 | 158975,,ICD9_CODE,99811
1498 | 158975,,ICD9_CODE,99813
1499 | 158975,,ICD9_CODE,42731
1500 | 158975,,ICD9_CODE,4280
1501 | 158975,,ICD9_CODE,40390
1502 | 158975,,ICD9_CODE,5853
1503 | 158975,,ICD9_CODE,4139
1504 | 158975,,ICD9_CODE,25000
1505 | 158975,,ICD9_CODE,53081
1506 | 158975,,ICD9_CODE,2449
1507 | 158975,,ICD9_CODE,49320
1508 | 158975,,ICD9_CODE,412
1509 | 158975,,ICD9_CODE,V4581
1510 | 158975,,ICD9_CODE,V1254
1511 | 158975,,ICD9_CODE,V4986
1512 | 158975,,ICD9_CODE,E8788
1513 | 158975,,ICD9_CODE,2800
1514 | 158975,,ICD9_CODE,45829
1515 | 158975,,ICD9_CODE,59971
1516 | 158975,,ICD9_CODE,E9342
1517 | 124271,,ICD9_CODE,0382
1518 | 124271,,ICD9_CODE,78552
1519 | 124271,,ICD9_CODE,51881
1520 | 124271,,ICD9_CODE,481
1521 | 124271,,ICD9_CODE,5849
1522 | 124271,,ICD9_CODE,78551
1523 | 124271,,ICD9_CODE,9982
1524 | 124271,,ICD9_CODE,1970
1525 | 124271,,ICD9_CODE,19889
1526 | 124271,,ICD9_CODE,99592
1527 | 124271,,ICD9_CODE,4239
1528 | 124271,,ICD9_CODE,2859
1529 | 117937,,ICD9_CODE,85300
1530 | 117937,,ICD9_CODE,9130
1531 | 117937,,ICD9_CODE,9100
1532 | 117937,,ICD9_CODE,30500
1533 | 117937,,ICD9_CODE,E8889
1534 | 190159,,ICD9_CODE,5712
1535 | 190159,,ICD9_CODE,45620
1536 | 190159,,ICD9_CODE,5780
1537 | 190159,,ICD9_CODE,51881
1538 | 190159,,ICD9_CODE,78559
1539 | 190159,,ICD9_CODE,5722
1540 | 190159,,ICD9_CODE,7895
1541 | 190159,,ICD9_CODE,45341
1542 | 190159,,ICD9_CODE,5990
1543 | 190159,,ICD9_CODE,5849
1544 | 190159,,ICD9_CODE,30500
1545 | 190159,,ICD9_CODE,2867
1546 | 190159,,ICD9_CODE,2761
1547 | 190159,,ICD9_CODE,2875
1548 | 190159,,ICD9_CODE,486
1549 | 190159,,ICD9_CODE,5997
1550 | 190159,,ICD9_CODE,8670
1551 | 190159,,ICD9_CODE,2639
1552 | 190159,,ICD9_CODE,2851
1553 | 190159,,ICD9_CODE,5723
1554 | 190159,,ICD9_CODE,34831
1555 | 190159,,ICD9_CODE,2738
1556 | 190159,,ICD9_CODE,5798
1557 | 190159,,ICD9_CODE,0701
1558 | 190159,,ICD9_CODE,3051
1559 | 190159,,ICD9_CODE,V1301
1560 | 190159,,ICD9_CODE,E8796
1561 | 193470,,ICD9_CODE,5712
1562 | 193470,,ICD9_CODE,45620
1563 | 193470,,ICD9_CODE,7895
1564 | 193470,,ICD9_CODE,2851
1565 | 193470,,ICD9_CODE,3575
1566 | 176189,,ICD9_CODE,4260
1567 | 176189,,ICD9_CODE,486
1568 | 176189,,ICD9_CODE,4240
1569 | 176189,,ICD9_CODE,2449
1570 | 176189,,ICD9_CODE,3310
1571 | 176189,,ICD9_CODE,29410
1572 | 176189,,ICD9_CODE,4168
1573 | 176189,,ICD9_CODE,2720
1574 | 176189,,ICD9_CODE,4019
1575 | 112013,,ICD9_CODE,60000
1576 | 112013,,ICD9_CODE,99811
1577 | 112013,,ICD9_CODE,2851
1578 | 112013,,ICD9_CODE,42789
1579 | 108811,,ICD9_CODE,53240
1580 | 108811,,ICD9_CODE,41071
1581 | 108811,,ICD9_CODE,53560
1582 | 108811,,ICD9_CODE,40390
1583 | 108811,,ICD9_CODE,5859
1584 | 159223,,ICD9_CODE,80604
1585 | 159223,,ICD9_CODE,8052
1586 | 159223,,ICD9_CODE,4139
1587 | 159223,,ICD9_CODE,42731
1588 | 159223,,ICD9_CODE,V422
1589 | 159223,,ICD9_CODE,4280
1590 | 159223,,ICD9_CODE,E8809
1591 | 159223,,ICD9_CODE,80701
1592 | 159223,,ICD9_CODE,4414
1593 | 159223,,ICD9_CODE,4019
1594 | 159223,,ICD9_CODE,V4501
1595 | 159223,,ICD9_CODE,4439
1596 | 159223,,ICD9_CODE,8730
1597 | 159223,,ICD9_CODE,57420
1598 | 176764,,ICD9_CODE,42831
1599 | 176764,,ICD9_CODE,51881
1600 | 176764,,ICD9_CODE,5070
1601 | 176764,,ICD9_CODE,42731
1602 | 176764,,ICD9_CODE,70707
1603 | 176764,,ICD9_CODE,V422
1604 | 176764,,ICD9_CODE,2738
1605 | 176764,,ICD9_CODE,V5417
1606 | 176764,,ICD9_CODE,V4581
1607 | 135828,,ICD9_CODE,4280
1608 | 135828,,ICD9_CODE,42731
1609 | 135828,,ICD9_CODE,4251
1610 | 135828,,ICD9_CODE,5997
1611 | 135828,,ICD9_CODE,41401
1612 | 135828,,ICD9_CODE,42781
1613 | 135828,,ICD9_CODE,V4501
1614 | 135828,,ICD9_CODE,V5861
1615 | 135828,,ICD9_CODE,V1046
1616 | 143120,,ICD9_CODE,4280
1617 | 143120,,ICD9_CODE,51881
1618 | 143120,,ICD9_CODE,5119
1619 | 143120,,ICD9_CODE,496
1620 | 143120,,ICD9_CODE,03811
1621 | 143120,,ICD9_CODE,99672
1622 | 143120,,ICD9_CODE,4240
1623 | 143120,,ICD9_CODE,48241
1624 | 143120,,ICD9_CODE,5070
1625 | 196896,,ICD9_CODE,5789
1626 | 196896,,ICD9_CODE,41091
1627 | 196896,,ICD9_CODE,5990
1628 | 196896,,ICD9_CODE,42731
1629 | 196896,,ICD9_CODE,2761
1630 | 196896,,ICD9_CODE,53010
1631 | 196896,,ICD9_CODE,2720
1632 | 196896,,ICD9_CODE,4019
1633 | 196896,,ICD9_CODE,3320
1634 | 196159,,ICD9_CODE,55321
1635 | 196159,,ICD9_CODE,99812
1636 | 196159,,ICD9_CODE,2851
1637 | 196159,,ICD9_CODE,E8788
1638 | 196159,,ICD9_CODE,5569
1639 | 196159,,ICD9_CODE,42731
1640 | 196159,,ICD9_CODE,3949
1641 | 196159,,ICD9_CODE,4019
1642 | 196159,,ICD9_CODE,V4501
1643 | 161310,,ICD9_CODE,51881
1644 | 161310,,ICD9_CODE,8600
1645 | 161310,,ICD9_CODE,44489
1646 | 161310,,ICD9_CODE,27651
1647 | 161310,,ICD9_CODE,99881
1648 | 161310,,ICD9_CODE,80700
1649 | 161310,,ICD9_CODE,92400
1650 | 161310,,ICD9_CODE,E9600
1651 | 161310,,ICD9_CODE,514
1652 | 161310,,ICD9_CODE,45829
1653 | 155820,,ICD9_CODE,V3101
1654 | 155820,,ICD9_CODE,76517
1655 | 155820,,ICD9_CODE,76497
1656 | 155820,,ICD9_CODE,V290
1657 | 155820,,ICD9_CODE,7708
1658 | 155820,,ICD9_CODE,76383
1659 | 155820,,ICD9_CODE,75261
1660 | 102631,,ICD9_CODE,4411
1661 | 102631,,ICD9_CODE,4241
1662 | 102631,,ICD9_CODE,9971
1663 | 102631,,ICD9_CODE,4281
1664 | 102631,,ICD9_CODE,44103
1665 | 146080,,ICD9_CODE,2181
1666 | 146080,,ICD9_CODE,2851
1667 | 146080,,ICD9_CODE,2800
1668 | 146080,,ICD9_CODE,24200
1669 | 113341,,ICD9_CODE,85300
1670 | 113341,,ICD9_CODE,95901
1671 | 113341,,ICD9_CODE,E8120
1672 | 137477,,ICD9_CODE,1919
1673 | 137477,,ICD9_CODE,6826
1674 | 137477,,ICD9_CODE,486
1675 | 137477,,ICD9_CODE,2554
1676 | 137477,,ICD9_CODE,25000
1677 | 137477,,ICD9_CODE,3594
1678 | 137477,,ICD9_CODE,E9320
1679 | 137526,,ICD9_CODE,1916
1680 | 137526,,ICD9_CODE,78039
1681 | 137526,,ICD9_CODE,2554
1682 | 137526,,ICD9_CODE,486
1683 | 137526,,ICD9_CODE,7872
1684 | 137526,,ICD9_CODE,34830
1685 | 137526,,ICD9_CODE,2859
1686 | 152056,,ICD9_CODE,V3000
1687 | 152056,,ICD9_CODE,V053
1688 | 152056,,ICD9_CODE,V290
1689 | 164405,,ICD9_CODE,4560
1690 | 164405,,ICD9_CODE,5070
1691 | 164405,,ICD9_CODE,340
1692 | 164405,,ICD9_CODE,51881
1693 | 164405,,ICD9_CODE,57149
1694 | 164405,,ICD9_CODE,27652
1695 | 164405,,ICD9_CODE,4568
1696 | 164405,,ICD9_CODE,4019
1697 | 164405,,ICD9_CODE,25000
1698 | 164405,,ICD9_CODE,2720
1699 | 164405,,ICD9_CODE,4589
1700 | 199724,,ICD9_CODE,0383
1701 | 199724,,ICD9_CODE,9992
1702 | 199724,,ICD9_CODE,41071
1703 | 199724,,ICD9_CODE,496
1704 | 199724,,ICD9_CODE,2762
1705 | 199724,,ICD9_CODE,45182
1706 | 199724,,ICD9_CODE,2768
1707 | 199724,,ICD9_CODE,3310
1708 | 199724,,ICD9_CODE,29410
1709 | 123860,,ICD9_CODE,99682
1710 | 123860,,ICD9_CODE,51881
1711 | 123860,,ICD9_CODE,5849
1712 | 123860,,ICD9_CODE,7907
1713 | 123860,,ICD9_CODE,07044
1714 | 123860,,ICD9_CODE,2762
1715 | 123860,,ICD9_CODE,2763
1716 | 123860,,ICD9_CODE,25541
1717 | 123860,,ICD9_CODE,78959
1718 | 123860,,ICD9_CODE,2760
1719 | 123860,,ICD9_CODE,2768
1720 | 123860,,ICD9_CODE,V4983
1721 | 123860,,ICD9_CODE,5715
1722 | 123860,,ICD9_CODE,5859
1723 | 123860,,ICD9_CODE,25080
1724 | 123860,,ICD9_CODE,45621
1725 | 123860,,ICD9_CODE,04109
1726 | 123860,,ICD9_CODE,V1007
1727 | 123860,,ICD9_CODE,40390
1728 | 123860,,ICD9_CODE,E8780
1729 | 132401,,ICD9_CODE,3241
1730 | 132401,,ICD9_CODE,51881
1731 | 132401,,ICD9_CODE,486
1732 | 132401,,ICD9_CODE,99931
1733 | 132401,,ICD9_CODE,73008
1734 | 132401,,ICD9_CODE,7907
1735 | 132401,,ICD9_CODE,99682
1736 | 132401,,ICD9_CODE,99811
1737 | 132401,,ICD9_CODE,07044
1738 | 132401,,ICD9_CODE,5856
1739 | 132401,,ICD9_CODE,25541
1740 | 132401,,ICD9_CODE,78959
1741 | 132401,,ICD9_CODE,40391
1742 | 132401,,ICD9_CODE,2761
1743 | 132401,,ICD9_CODE,2762
1744 | 132401,,ICD9_CODE,5789
1745 | 132401,,ICD9_CODE,2867
1746 | 132401,,ICD9_CODE,V4983
1747 | 132401,,ICD9_CODE,2875
1748 | 132401,,ICD9_CODE,5723
1749 | 132401,,ICD9_CODE,72293
1750 | 132401,,ICD9_CODE,04119
1751 | 132401,,ICD9_CODE,33399
1752 | 132401,,ICD9_CODE,E9390
1753 | 132401,,ICD9_CODE,E8780
1754 | 132401,,ICD9_CODE,25000
1755 | 132401,,ICD9_CODE,53789
1756 | 132401,,ICD9_CODE,V1007
1757 | 132401,,ICD9_CODE,28521
1758 | 132401,,ICD9_CODE,73730
1759 | 150463,,ICD9_CODE,99811
1760 | 150463,,ICD9_CODE,99682
1761 | 150463,,ICD9_CODE,5715
1762 | 150463,,ICD9_CODE,07054
1763 | 150463,,ICD9_CODE,E8788
1764 | 150463,,ICD9_CODE,E8780
1765 | 150463,,ICD9_CODE,4019
1766 | 160697,,ICD9_CODE,570
1767 | 160697,,ICD9_CODE,07054
1768 | 160697,,ICD9_CODE,1552
1769 | 160697,,ICD9_CODE,5723
1770 | 160697,,ICD9_CODE,78071
1771 | 164735,,ICD9_CODE,4552
1772 | 164735,,ICD9_CODE,7907
1773 | 164735,,ICD9_CODE,99682
1774 | 164735,,ICD9_CODE,99931
1775 | 164735,,ICD9_CODE,5856
1776 | 164735,,ICD9_CODE,99811
1777 | 164735,,ICD9_CODE,99731
1778 | 164735,,ICD9_CODE,2851
1779 | 164735,,ICD9_CODE,25541
1780 | 164735,,ICD9_CODE,2875
1781 | 164735,,ICD9_CODE,5715
1782 | 164735,,ICD9_CODE,V4983
1783 | 164735,,ICD9_CODE,07054
1784 | 164735,,ICD9_CODE,80702
1785 | 164735,,ICD9_CODE,04104
1786 | 164735,,ICD9_CODE,4555
1787 | 164735,,ICD9_CODE,E8788
1788 | 164735,,ICD9_CODE,E8844
1789 | 164735,,ICD9_CODE,E8497
1790 | 164735,,ICD9_CODE,28521
1791 | 164735,,ICD9_CODE,E8780
1792 | 164735,,ICD9_CODE,25000
1793 | 164735,,ICD9_CODE,V5867
1794 | 164735,,ICD9_CODE,53789
1795 | 105764,,ICD9_CODE,4254
1796 | 105764,,ICD9_CODE,4280
1797 | 105764,,ICD9_CODE,V4502
1798 | 105764,,ICD9_CODE,V5861
1799 | 105764,,ICD9_CODE,V433
1800 | 105764,,ICD9_CODE,412
1801 | 173633,,ICD9_CODE,V1251
1802 | 161160,,ICD9_CODE,27651
1803 | 161160,,ICD9_CODE,7895
1804 | 161160,,ICD9_CODE,5119
1805 | 161160,,ICD9_CODE,4254
1806 | 161160,,ICD9_CODE,42731
1807 | 161160,,ICD9_CODE,5849
1808 | 161160,,ICD9_CODE,99591
1809 | 161160,,ICD9_CODE,42789
1810 | 161160,,ICD9_CODE,3334
1811 | 161160,,ICD9_CODE,2859
1812 | 161160,,ICD9_CODE,7906
1813 | 126055,,ICD9_CODE,4010
1814 | 126055,,ICD9_CODE,5856
1815 | 126055,,ICD9_CODE,58281
1816 | 126055,,ICD9_CODE,4239
1817 | 126055,,ICD9_CODE,78959
1818 | 126055,,ICD9_CODE,2762
1819 | 126055,,ICD9_CODE,2761
1820 | 126055,,ICD9_CODE,78909
1821 | 126055,,ICD9_CODE,78906
1822 | 126055,,ICD9_CODE,78701
1823 | 126055,,ICD9_CODE,78791
1824 | 126055,,ICD9_CODE,7100
1825 | 126055,,ICD9_CODE,25200
1826 | 126055,,ICD9_CODE,2859
1827 | 126055,,ICD9_CODE,2875
1828 | 126055,,ICD9_CODE,53081
1829 | 105501,,ICD9_CODE,41071
1830 | 105501,,ICD9_CODE,41401
1831 | 108811,,ICD9_CODE,04186
1832 | 108811,,ICD9_CODE,41401
1833 | 108811,,ICD9_CODE,2724
1834 | 108811,,ICD9_CODE,496
1835 | 108811,,ICD9_CODE,42731
1836 | 108811,,ICD9_CODE,V4581
1837 | 158689,,ICD9_CODE,96501
1838 | 158689,,ICD9_CODE,30421
1839 | 158689,,ICD9_CODE,07070
1840 | 158689,,ICD9_CODE,07030
1841 | 158689,,ICD9_CODE,51881
1842 | 158689,,ICD9_CODE,30401
1843 | 158689,,ICD9_CODE,4280
1844 | 158689,,ICD9_CODE,2920
1845 | 158689,,ICD9_CODE,30431
1846 | 158689,,ICD9_CODE,9708
1847 | 158689,,ICD9_CODE,9696
1848 | 129886,,ICD9_CODE,51881
1849 | 129886,,ICD9_CODE,78552
1850 | 129886,,ICD9_CODE,5849
1851 | 129886,,ICD9_CODE,4538
1852 | 129886,,ICD9_CODE,2869
1853 | 129886,,ICD9_CODE,85221
1854 | 129886,,ICD9_CODE,5990
1855 | 129886,,ICD9_CODE,99592
1856 | 129886,,ICD9_CODE,3320
1857 | 129886,,ICD9_CODE,V667
1858 | 129886,,ICD9_CODE,33182
1859 | 129886,,ICD9_CODE,29410
1860 | 129886,,ICD9_CODE,4019
1861 | 129886,,ICD9_CODE,E8889
1862 | 129886,,ICD9_CODE,V1582
1863 |
--------------------------------------------------------------------------------
/tests/icd_test/input/icd_test_data.csv:
--------------------------------------------------------------------------------
1 | ROW_ID,SUBJECT_ID,HADM_ID,SEQ_NUM,ICD9_CODE
2 | 1297,109,172335,1.0,40301
3 | 1298,109,172335,2.0,486
4 | 1299,109,172335,3.0,58281
5 | 1300,109,172335,4.0,5855
6 | 1301,109,172335,5.0,4254
7 | 1302,109,172335,6.0,2762
8 | 1303,109,172335,7.0,7100
9 | 1304,109,172335,8.0,2767
10 | 1305,109,172335,9.0,7243
11 | 1306,109,172335,10.0,45829
12 | 1307,109,172335,11.0,2875
13 | 1308,109,172335,12.0,28521
14 | 1309,109,172335,13.0,28529
15 | 1310,109,172335,14.0,27541
16 | 1311,109,173633,1.0,40301
17 | 1312,109,173633,2.0,5856
18 | 1313,109,173633,3.0,58381
19 | 1314,109,173633,4.0,7100
20 | 1315,109,173633,5.0,5589
21 | 1316,109,173633,6.0,2875
22 | 1317,109,173633,7.0,28521
23 | 1318,109,173633,8.0,45829
24 | 1319,109,173633,9.0,32723
25 | 1320,109,173633,10.0,22804
26 | 1321,109,173633,11.0,33829
27 | 1322,109,173633,12.0,78900
28 | 1323,109,173633,13.0,79092
29 | 1324,109,173633,14.0,V4511
30 | 1488,112,174105,1.0,53100
31 | 1489,112,174105,2.0,41071
32 | 1490,112,174105,3.0,2859
33 | 1491,112,174105,4.0,41401
34 | 1492,112,174105,5.0,725
35 | 1493,113,109976,1.0,1915
36 | 1494,113,109976,2.0,3314
37 | 1495,113,109976,3.0,53081
38 | 1496,114,178393,1.0,41401
39 | 1497,114,178393,2.0,4111
40 | 1498,114,178393,3.0,48283
41 | 1499,114,178393,4.0,2859
42 | 1500,114,178393,5.0,2720
43 | 1501,114,178393,6.0,3051
44 | 1502,115,114585,1.0,1940
45 | 1503,115,114585,2.0,1977
46 | 1504,115,114585,3.0,2553
47 | 1505,115,114585,4.0,4240
48 | 1506,115,114585,5.0,5845
49 | 1507,115,114585,6.0,99859
50 | 1508,115,114585,7.0,6822
51 | 1509,115,114585,8.0,5119
52 | 1510,115,114585,9.0,5990
53 | 1511,115,114585,10.0,4280
54 | 1512,115,114585,11.0,34982
55 | 1513,115,114585,12.0,4019
56 | 1514,115,114585,13.0,V1000
57 | 1515,115,114585,14.0,V453
58 | 1516,115,114585,15.0,V5865
59 | 1517,115,114585,16.0,0413
60 | 1518,115,114585,17.0,2518
61 | 1519,115,114585,18.0,E9320
62 | 1520,116,127203,1.0,V3001
63 | 1521,116,127203,2.0,V053
64 | 1522,116,127203,3.0,V290
65 | 1523,117,140784,1.0,5715
66 | 1524,117,140784,2.0,7895
67 | 1525,117,140784,3.0,07054
68 | 1526,117,140784,4.0,2875
69 | 1527,117,140784,5.0,4280
70 | 1528,117,140784,6.0,2851
71 | 1529,117,140784,7.0,2765
72 | 1530,117,140784,8.0,4019
73 | 1531,117,140784,9.0,25000
74 | 1532,117,164853,1.0,570
75 | 1533,117,164853,2.0,07044
76 | 1534,117,164853,3.0,5712
77 | 1535,117,164853,4.0,5849
78 | 1536,117,164853,5.0,5724
79 | 1537,117,164853,6.0,5118
80 | 1538,117,164853,7.0,2867
81 | 1539,117,164853,8.0,51882
82 | 1540,117,164853,9.0,2875
83 | 1541,117,164853,10.0,0389
84 | 1542,117,164853,11.0,486
85 | 1543,117,164853,12.0,2800
86 | 1544,117,164853,13.0,2639
87 | 1545,117,164853,14.0,2761
88 | 1546,117,164853,15.0,2767
89 | 1547,117,164853,16.0,99592
90 | 1548,117,164853,17.0,30393
91 | 1549,117,164853,18.0,4019
92 | 1550,117,164853,19.0,5723
93 | 1551,117,164853,20.0,25000
94 | 1552,117,164853,21.0,2449
95 | 1553,117,164853,22.0,1122
96 | 1554,118,147035,1.0,V3000
97 | 1555,118,147035,2.0,V053
98 | 1556,119,135738,1.0,88122
99 | 1557,119,135738,2.0,9032
100 | 1558,119,135738,3.0,9033
101 | 1559,119,135738,4.0,9551
102 | 1560,119,135738,5.0,9555
103 | 1561,119,135738,6.0,9552
104 | 1562,119,135738,7.0,E956
105 | 1563,119,135738,8.0,30590
106 | 1564,120,188923,1.0,V3000
107 | 1565,120,188923,2.0,V053
108 | 1566,120,188923,3.0,V290
109 | 1567,122,135750,1.0,V3000
110 | 1568,122,135750,2.0,7452
111 | 1569,122,135750,3.0,7622
112 | 1570,123,195632,1.0,41011
113 | 1571,123,195632,2.0,41401
114 | 1572,123,195632,3.0,4019
115 | 1573,123,195632,4.0,25000
116 | 1574,123,195632,5.0,3051
117 | 1575,124,112906,1.0,4412
118 | 1576,124,112906,2.0,486
119 | 1577,124,112906,3.0,496
120 | 1578,124,112906,4.0,07070
121 | 1579,124,112906,5.0,4478
122 | 1580,124,112906,6.0,41402
123 | 1581,124,112906,7.0,41401
124 | 1582,124,112906,8.0,4019
125 | 1583,124,112906,9.0,2720
126 | 1584,124,134369,1.0,44021
127 | 1585,124,134369,2.0,5849
128 | 1586,124,134369,3.0,5854
129 | 1587,124,134369,4.0,5990
130 | 1588,124,134369,5.0,9971
131 | 1589,124,134369,6.0,4400
132 | 1590,124,134369,7.0,40390
133 | 1591,124,134369,8.0,2749
134 | 1592,124,134369,9.0,496
135 | 1593,124,134369,10.0,45829
136 | 1594,124,134369,11.0,42731
137 | 1595,124,134369,12.0,V1046
138 | 1596,124,134369,13.0,V1011
139 | 1597,124,134369,14.0,V1209
140 | 1598,124,134369,15.0,V090
141 | 1599,124,138376,1.0,56983
142 | 1600,124,138376,2.0,56089
143 | 1601,124,138376,3.0,49121
144 | 1602,124,138376,4.0,99859
145 | 1603,124,138376,5.0,0389
146 | 1604,124,138376,6.0,99592
147 | 1605,124,138376,7.0,99831
148 | 1606,124,138376,8.0,486
149 | 1607,124,138376,9.0,5849
150 | 1608,124,138376,10.0,5854
151 | 1609,124,138376,11.0,2639
152 | 1610,124,138376,12.0,42833
153 | 1611,124,138376,13.0,40390
154 | 1612,124,138376,14.0,42731
155 | 1613,124,138376,15.0,4280
156 | 1614,124,138376,16.0,41400
157 | 1615,124,138376,17.0,V4581
158 | 1616,124,138376,18.0,V1046
159 | 1617,124,138376,19.0,V1011
160 | 1618,124,172461,1.0,43331
161 | 1619,124,172461,2.0,99812
162 | 1620,124,172461,3.0,436
163 | 1621,124,172461,4.0,43320
164 | 1622,124,172461,5.0,4019
165 | 1623,124,172461,6.0,2720
166 | 1624,124,172461,7.0,49390
167 | 1625,124,172461,8.0,41401
168 | 1626,124,172461,9.0,V4581
169 | 1627,125,157348,1.0,99671
170 | 1628,125,157348,2.0,4241
171 | 1629,125,157348,3.0,42731
172 | 1630,125,157348,4.0,4168
173 | 1631,125,157348,5.0,2449
174 | 1632,126,176860,1.0,V3101
175 | 1633,126,176860,2.0,76503
176 | 1634,126,176860,3.0,769
177 | 1635,126,176860,4.0,7793
178 | 1636,126,176860,5.0,7742
179 | 1637,126,176860,6.0,7707
180 | 1638,126,176860,7.0,76524
181 | 1639,126,176860,8.0,77081
182 | 1640,126,176860,9.0,77981
183 | 1641,126,176860,10.0,7470
184 | 1642,126,176860,11.0,7766
185 | 1643,126,176860,12.0,7726
186 | 1644,126,176860,13.0,77989
187 | 1645,126,176860,14.0,36221
188 | 1646,126,176860,15.0,V290
189 | 1647,126,176860,16.0,V053
190 | 1648,127,141647,1.0,19889
191 | 1649,127,141647,2.0,1972
192 | 1650,127,141647,3.0,V103
193 | 1651,128,180872,1.0,V3001
194 | 1652,128,180872,2.0,74689
195 | 1653,128,180872,3.0,7661
196 | 1654,128,180872,4.0,V053
197 | 1655,128,180872,5.0,V290
198 | 1656,128,180872,6.0,V293
199 | 1657,129,164174,1.0,85300
200 | 1658,129,164174,2.0,78039
201 | 1659,129,164174,3.0,E8889
202 | 1660,130,113323,1.0,99859
203 | 1661,130,113323,2.0,99831
204 | 1662,130,113323,3.0,5185
205 | 1663,130,113323,4.0,9971
206 | 1664,130,113323,5.0,42731
207 | 1665,130,113323,6.0,73028
208 | 1666,130,113323,7.0,25000
209 | 1667,130,113323,8.0,53081
210 | 1668,130,113323,9.0,41400
211 | 1669,130,113323,10.0,V4581
212 | 1670,130,198214,1.0,41071
213 | 1671,130,198214,2.0,4280
214 | 1672,130,198214,3.0,2851
215 | 1673,130,198214,4.0,41401
216 | 1674,130,198214,5.0,25060
217 | 1675,130,198214,6.0,3572
218 | 1676,130,198214,7.0,2720
219 | 1677,130,198214,8.0,53081
220 | 1678,131,171781,1.0,V3001
221 | 1679,131,171781,2.0,77214
222 | 1680,131,171781,3.0,76518
223 | 1681,131,171781,4.0,76528
224 | 1682,131,171781,5.0,V053
225 | 1683,132,160192,1.0,430
226 | 1684,132,160192,2.0,78039
227 | 1685,132,160192,3.0,2761
228 | 1686,132,160192,4.0,3051
229 | 1687,133,191817,1.0,41071
230 | 1688,133,191817,2.0,41401
231 | 1689,133,191817,3.0,496
232 | 1690,133,191817,4.0,5990
233 | 1691,133,191817,5.0,4400
234 | 1692,133,191817,6.0,2939
235 | 1693,133,191817,7.0,2749
236 | 1694,133,191817,8.0,4439
237 | 1695,133,191817,9.0,4019
238 | 1696,133,191817,10.0,2720
239 | 1697,133,191817,11.0,V1582
240 | 1698,134,167887,1.0,3963
241 | 1699,134,167887,2.0,41401
242 | 1700,134,167887,3.0,4019
243 | 1701,134,167887,4.0,53081
244 | 1702,134,167887,5.0,3659
245 | 1703,134,167887,6.0,2449
246 | 1704,134,167887,7.0,4439
247 | 1705,135,192180,1.0,135
248 | 1706,135,192180,2.0,34982
249 | 1707,135,192180,3.0,5990
250 | 1708,135,192180,4.0,311
251 | 1709,135,192180,5.0,E9352
252 | 1710,135,199634,1.0,72141
253 | 1711,135,199634,2.0,135
254 | 1712,135,199634,3.0,496
255 | 1713,135,199634,4.0,2148
256 | 1714,135,199634,5.0,V5865
257 | 1715,135,199634,6.0,72401
258 | 1716,135,199634,7.0,53081
259 | 1717,135,199634,8.0,4019
260 | 1718,135,199634,9.0,25000
261 | 1719,136,184644,1.0,4375
262 | 1720,136,184644,2.0,486
263 | 1721,136,184644,3.0,2720
264 | 1722,136,184644,4.0,4019
265 | 1723,137,151583,1.0,41401
266 | 1724,137,151583,2.0,5185
267 | 1725,137,151583,3.0,42731
268 | 1726,137,151583,4.0,42732
269 | 1727,137,151583,5.0,25060
270 | 1728,137,151583,6.0,3572
271 | 1729,137,151583,7.0,24290
272 | 1730,137,151583,8.0,2720
273 | 1731,137,151583,9.0,60000
274 | 1732,137,151583,10.0,V4582
275 | 1733,137,151583,11.0,V1582
276 | 1734,138,105764,1.0,1890
277 | 504,64,172056,2.0,03811
278 | 505,64,172056,3.0,99591
279 | 506,64,172056,4.0,30400
280 | 507,64,172056,5.0,1120
281 | 508,64,172056,6.0,5111
282 | 509,64,172056,7.0,7895
283 | 510,64,172056,8.0,71107
284 | 511,64,172056,9.0,71104
285 | 512,65,143430,1.0,80012
286 | 513,65,143430,2.0,30500
287 | 514,65,143430,3.0,30560
288 | 515,65,143430,4.0,E8147
289 | 516,65,143430,5.0,8730
290 | 517,65,143430,6.0,7812
291 | 518,65,143430,7.0,37854
292 | 519,65,143430,8.0,9518
293 | 520,66,104518,1.0,V3000
294 | 521,66,104518,2.0,76519
295 | 522,66,104518,3.0,76528
296 | 523,66,104518,4.0,77089
297 | 524,66,104518,5.0,7742
298 | 525,66,104518,6.0,7793
299 | 526,66,104518,7.0,7678
300 | 527,66,104518,8.0,7661
301 | 528,66,104518,9.0,V053
302 | 529,66,104518,10.0,V293
303 | 530,67,155252,1.0,431
304 | 531,67,155252,2.0,2449
305 | 532,67,155252,3.0,4019
306 | 533,67,155252,4.0,2948
307 | 534,67,155252,5.0,311
308 | 535,67,186474,1.0,9982
309 | 536,67,186474,2.0,2768
310 | 537,67,186474,3.0,4019
311 | 538,67,186474,4.0,2449
312 | 539,67,186474,5.0,2851
313 | 540,67,186474,6.0,311
314 | 541,68,108329,1.0,042
315 | 542,68,108329,2.0,486
316 | 543,68,108329,3.0,4254
317 | 544,68,108329,4.0,2762
318 | 545,68,108329,5.0,5849
319 | 546,68,108329,6.0,570
320 | 547,68,108329,7.0,5859
321 | 548,68,108329,8.0,2848
322 | 549,68,108329,9.0,2875
323 | 550,68,108329,10.0,4280
324 | 551,68,108329,11.0,2859
325 | 552,68,170467,1.0,042
326 | 553,68,170467,2.0,486
327 | 554,68,170467,3.0,4254
328 | 555,68,170467,4.0,42820
329 | 556,68,170467,5.0,4280
330 | 557,68,170467,6.0,5849
331 | 558,68,170467,7.0,5859
332 | 559,68,170467,8.0,2639
333 | 560,68,170467,9.0,2848
334 | 561,68,170467,10.0,2761
335 | 562,68,170467,11.0,2859
336 | 563,68,170467,12.0,V141
337 | 564,68,170467,13.0,V071
338 | 565,69,190201,1.0,V3001
339 | 566,69,190201,2.0,76517
340 | 567,69,190201,3.0,76407
341 | 568,69,190201,4.0,7756
342 | 569,69,190201,5.0,7742
343 | 570,69,190201,6.0,7793
344 | 571,69,190201,7.0,76528
345 | 572,69,190201,8.0,7764
346 | 573,70,178596,1.0,V3001
347 | 574,70,178596,2.0,7454
348 | 575,70,178596,3.0,V053
349 | 576,71,111944,1.0,9695
350 | 577,71,111944,2.0,2762
351 | 578,71,111944,3.0,29590
352 | 579,71,111944,4.0,E9503
353 | 580,71,111944,5.0,2859
354 | 581,71,111944,6.0,2662
355 | 582,72,156857,1.0,V3000
356 | 583,72,156857,2.0,769
357 | 584,72,156857,3.0,7466
358 | 585,72,156857,4.0,7742
359 | 586,72,156857,5.0,2762
360 | 587,72,156857,6.0,77981
361 | 588,72,156857,7.0,76519
362 | 589,72,156857,8.0,76528
363 | 590,72,156857,9.0,76719
364 | 591,72,156857,10.0,V290
365 | 592,72,156857,11.0,7470
366 | 593,72,156857,12.0,74689
367 | 594,73,194730,1.0,41001
368 | 595,73,194730,2.0,9982
369 | 596,73,194730,3.0,5990
370 | 597,73,194730,4.0,41401
371 | 598,73,194730,5.0,4019
372 | 599,73,194730,6.0,2720
373 | 600,73,194730,7.0,V1042
374 | 601,73,194730,8.0,V1582
375 | 602,74,182637,1.0,V3001
376 | 603,74,182637,2.0,7660
377 | 604,74,182637,3.0,V053
378 | 605,74,182637,4.0,V290
379 | 606,74,182637,5.0,V293
380 | 607,75,112086,1.0,4241
381 | 608,75,112086,2.0,9973
382 | 609,75,112086,3.0,5180
383 | 610,75,112086,4.0,5990
384 | 611,75,112086,5.0,99709
385 | 612,75,112086,6.0,3558
386 | 613,75,112086,7.0,4019
387 | 614,75,112086,8.0,2720
388 | 615,75,112086,9.0,25000
389 | 616,75,112086,10.0,53081
390 | 617,75,112086,11.0,5533
391 | 618,75,112086,12.0,V1582
392 | 619,77,142768,1.0,41061
393 | 620,77,142768,2.0,4280
394 | 621,77,142768,3.0,41401
395 | 622,77,142768,4.0,2720
396 | 623,77,142768,5.0,2721
397 | 624,77,142768,6.0,2740
398 | 625,78,100536,1.0,96500
399 | 626,78,100536,2.0,042
400 | 627,78,100536,3.0,07054
401 | 628,78,100536,4.0,5715
402 | 629,78,100536,5.0,30401
403 | 630,78,100536,6.0,2848
404 | 631,78,100536,7.0,9694
405 | 632,78,100536,8.0,E8502
406 | 633,78,100536,9.0,E8532
407 | 634,79,181542,1.0,41011
408 | 635,79,181542,2.0,4271
409 | 636,79,181542,3.0,41401
410 | 637,79,181542,4.0,42689
411 | 638,80,115385,1.0,80416
412 | 639,80,115385,2.0,87342
413 | 640,80,115385,3.0,E916
414 | 641,81,175016,1.0,431
415 | 642,81,175016,2.0,20210
416 | 643,81,175016,3.0,4019
417 | 644,82,110641,1.0,V3001
418 | 645,82,110641,2.0,76519
419 | 646,82,110641,3.0,76528
420 | 647,82,110641,4.0,V502
421 | 648,83,158569,1.0,43310
422 | 649,83,158569,2.0,39891
423 | 650,83,158569,3.0,3963
424 | 651,83,158569,4.0,40391
425 | 652,83,158569,5.0,70715
426 | 653,83,158569,6.0,53081
427 | 654,83,158569,7.0,2720
428 | 655,83,158569,8.0,25000
429 | 656,83,158569,9.0,4148
430 | 657,84,120969,1.0,1919
431 | 658,84,166401,1.0,1919
432 | 659,84,166401,2.0,3484
433 | 660,84,166401,3.0,78701
434 | 661,84,166401,4.0,56400
435 | 662,85,112077,1.0,0389
436 | 663,85,112077,2.0,486
437 | 664,85,112077,3.0,V4281
438 | 665,85,112077,4.0,23875
439 | 666,85,112077,5.0,42731
440 | 667,85,112077,6.0,41400
441 | 668,85,112077,7.0,3004
442 | 669,85,112077,8.0,2724
443 | 670,85,112077,9.0,2449
444 | 671,85,112077,10.0,60001
445 | 672,85,112077,11.0,78843
446 | 673,85,112077,12.0,32723
447 | 674,85,112077,13.0,3320
448 | 675,85,112077,14.0,3051
449 | 676,85,112077,15.0,V1079
450 | 677,85,112077,16.0,V4581
451 | 678,85,112077,17.0,V433
452 | 679,85,112077,18.0,99591
453 | 680,85,112077,19.0,5853
454 | 681,85,116630,1.0,4241
455 | 682,85,116630,2.0,20280
456 | 683,85,116630,3.0,V4282
457 | 684,85,116630,4.0,99811
458 | 685,85,116630,5.0,3320
459 | 686,85,116630,6.0,30000
460 | 687,85,116630,7.0,53081
461 | 688,85,116630,8.0,60000
462 | 689,85,116630,9.0,E8798
463 | 690,85,116630,10.0,41401
464 | 691,85,116630,11.0,4412
465 | 692,86,190243,1.0,74561
466 | 693,86,190243,2.0,4240
467 | 694,87,190659,1.0,V3101
468 | 695,87,190659,2.0,76515
469 | 696,87,190659,3.0,76524
470 | 697,87,190659,4.0,769
471 | 698,87,190659,5.0,7707
472 | 699,87,190659,6.0,7775
473 | 700,87,190659,7.0,7742
474 | 701,87,190659,8.0,77211
475 | 702,87,190659,9.0,77081
476 | 703,87,190659,10.0,7766
477 | 704,87,190659,11.0,V290
478 | 705,87,190659,12.0,V053
479 | 706,88,123010,1.0,86113
480 | 707,88,123010,2.0,5119
481 | 708,88,123010,3.0,4239
482 | 709,88,123010,4.0,E966
483 | 710,89,188646,1.0,V3101
484 | 711,89,188646,2.0,7742
485 | 712,89,188646,3.0,76516
486 | 713,89,188646,4.0,76527
487 | 714,89,188646,5.0,22801
488 | 715,89,188646,6.0,V290
489 | 716,91,121205,1.0,20008
490 | 717,91,121205,2.0,2765
491 | 718,91,121205,3.0,5559
492 | 719,91,121205,4.0,99812
493 | 720,91,121205,5.0,51881
494 | 721,91,121205,6.0,4470
495 | 722,91,121205,7.0,135
496 | 723,91,121205,8.0,53100
497 | 724,91,121205,9.0,2866
498 | 725,92,142807,1.0,76502
499 | 726,92,142807,2.0,77181
500 | 727,92,142807,3.0,2762
501 | 728,92,142807,4.0,769
502 | 729,92,142807,5.0,7707
503 | 730,92,142807,6.0,77211
504 | 731,92,142807,7.0,7742
505 | 732,92,142807,8.0,7766
506 | 733,92,142807,9.0,36221
507 | 734,93,160481,1.0,V3000
508 | 735,93,160481,2.0,76503
509 | 736,93,160481,3.0,769
510 | 737,93,160481,4.0,77181
511 | 738,93,160481,5.0,7742
512 | 739,93,160481,6.0,76523
513 | 740,93,160481,7.0,7766
514 | 741,93,160481,8.0,77081
515 | 742,93,160481,9.0,77981
516 | 743,93,160481,10.0,7470
517 | 744,93,160481,11.0,36221
518 | 745,93,160481,12.0,2707
519 | 746,94,140037,1.0,33520
520 | 747,94,140037,2.0,51884
521 | 748,94,140037,3.0,486
522 | 749,94,140037,4.0,42731
523 | 750,94,140037,5.0,4019
524 | 751,94,140037,6.0,60000
525 | 752,94,140037,7.0,42789
526 | 753,94,140037,8.0,2859
527 | 754,94,183686,1.0,2761
528 | 755,94,183686,2.0,7234
529 | 756,94,183686,3.0,4240
530 | 757,94,183686,4.0,4589
531 | 758,94,183686,5.0,07999
532 | 759,94,183686,6.0,4019
533 | 760,94,183686,7.0,42789
534 | 761,94,183686,8.0,78841
535 | 762,95,160891,1.0,4260
536 | 763,96,170324,1.0,85181
537 | 764,96,170324,2.0,8072
538 | 765,96,170324,3.0,V461
539 | 766,96,170324,4.0,86402
540 | 767,96,170324,5.0,86509
541 | 768,96,170324,6.0,4538
542 | 769,96,170324,7.0,5185
543 | 770,96,170324,8.0,4821
544 | 771,96,170324,9.0,8604
545 | 772,97,127870,1.0,41401
546 | 773,97,127870,2.0,4241
547 | 774,97,127870,3.0,4111
548 | 775,97,127870,4.0,42731
549 | 776,97,127870,5.0,2720
550 | 777,97,127870,6.0,4019
551 | 778,97,127870,7.0,4401
552 | 779,98,188606,1.0,4373
553 | 780,98,188606,2.0,2449
554 | 781,99,187373,1.0,41401
555 | 782,99,187373,2.0,4139
556 | 783,99,187373,3.0,4019
557 | 784,99,187373,4.0,2720
558 | 785,99,187373,5.0,7820
559 | 786,99,187373,6.0,V1083
560 | 787,99,187373,7.0,6000
561 | 788,100,153952,1.0,99602
562 | 789,100,153952,2.0,4241
563 | 790,100,153952,3.0,4411
564 | 791,100,153952,4.0,4260
565 | 792,100,153952,5.0,42731
566 | 793,101,175533,1.0,51881
567 | 794,101,175533,2.0,5070
568 | 795,101,175533,3.0,48240
569 | 796,101,175533,4.0,5121
570 | 797,101,175533,5.0,5185
571 | 798,101,175533,6.0,4275
572 | 799,101,175533,7.0,3481
573 | 800,101,175533,8.0,78003
574 | 801,101,175533,9.0,2762
575 | 802,102,195700,1.0,V3000
576 | 803,102,195700,2.0,769
577 | 804,102,195700,3.0,7742
578 | 805,102,195700,4.0,7793
579 | 806,102,195700,5.0,76517
580 | 807,102,195700,6.0,76526
581 | 808,102,195700,7.0,75261
582 | 809,102,195700,8.0,75263
583 | 810,102,195700,9.0,V290
584 | 811,103,130744,1.0,1983
585 | 812,103,130744,2.0,431
586 | 813,103,130744,3.0,1623
587 | 814,103,130744,4.0,486
588 | 815,103,130744,5.0,4019
589 | 816,103,130744,6.0,V1582
590 | 817,103,130744,7.0,78321
591 | 818,103,130744,8.0,2559
592 | 819,103,133550,1.0,431
593 | 820,103,133550,2.0,1983
594 | 821,103,133550,3.0,1629
595 | 822,103,133550,4.0,4275
596 | 823,103,133550,5.0,4019
597 | 824,104,164025,1.0,V3001
598 | 825,104,164025,2.0,7756
599 | 826,104,164025,3.0,76408
600 | 827,104,164025,4.0,76529
601 | 828,104,164025,5.0,7746
602 | 829,104,164025,6.0,V502
603 | 830,104,164025,7.0,7784
604 | 831,105,128744,1.0,7806
605 | 832,105,128744,2.0,486
606 | 833,105,128744,3.0,4280
607 | 834,105,128744,4.0,3334
608 | 835,105,161160,1.0,5070
609 | 836,105,161160,2.0,0389
610 | 1,2,163353,1.0,V3001
611 | 2,2,163353,2.0,V053
612 | 3,2,163353,3.0,V290
613 | 4,3,145834,1.0,0389
614 | 5,3,145834,2.0,78559
615 | 6,3,145834,3.0,5849
616 | 7,3,145834,4.0,4275
617 | 8,3,145834,5.0,41071
618 | 9,3,145834,6.0,4280
619 | 10,3,145834,7.0,6826
620 | 11,3,145834,8.0,4254
621 | 12,3,145834,9.0,2639
622 | 13,4,185777,1.0,042
623 | 14,4,185777,2.0,1363
624 | 15,4,185777,3.0,7994
625 | 16,4,185777,4.0,2763
626 | 17,4,185777,5.0,7907
627 | 18,4,185777,6.0,5715
628 | 19,4,185777,7.0,04111
629 | 20,4,185777,8.0,V090
630 | 21,4,185777,9.0,E9317
631 | 22,5,178980,1.0,V3000
632 | 23,5,178980,2.0,V053
633 | 24,5,178980,3.0,V290
634 | 25,6,107064,1.0,40391
635 | 26,6,107064,2.0,4440
636 | 27,6,107064,3.0,9972
637 | 28,6,107064,4.0,2766
638 | 29,6,107064,5.0,2767
639 | 30,6,107064,6.0,2859
640 | 31,6,107064,7.0,2753
641 | 32,6,107064,8.0,V1582
642 | 33,7,118037,1.0,V3001
643 | 34,7,118037,2.0,V053
644 | 35,7,118037,3.0,V290
645 | 36,8,159514,1.0,V3001
646 | 37,8,159514,2.0,7706
647 | 38,8,159514,3.0,7746
648 | 39,8,159514,4.0,V290
649 | 40,8,159514,5.0,V502
650 | 41,8,159514,6.0,V053
651 | 42,9,150750,1.0,431
652 | 43,9,150750,2.0,5070
653 | 44,9,150750,3.0,4280
654 | 45,9,150750,4.0,5849
655 | 46,9,150750,5.0,2765
656 | 47,9,150750,6.0,4019
657 | 48,10,184167,1.0,V3000
658 | 49,10,184167,2.0,7742
659 | 50,10,184167,3.0,76525
660 | 51,10,184167,4.0,76515
661 | 52,10,184167,5.0,V290
662 | 53,11,194540,1.0,1913
663 | 54,12,112213,1.0,1570
664 | 55,12,112213,2.0,57410
665 | 56,12,112213,3.0,9971
666 | 57,12,112213,4.0,4275
667 | 58,12,112213,5.0,99811
668 | 59,12,112213,6.0,4019
669 | 60,12,112213,7.0,5680
670 | 61,12,112213,8.0,55321
671 | 62,12,112213,9.0,E8782
672 | 63,13,143045,1.0,41401
673 | 64,13,143045,2.0,4111
674 | 65,13,143045,3.0,25000
675 | 66,13,143045,4.0,4019
676 | 67,13,143045,5.0,2720
677 | 68,16,103251,1.0,V3000
678 | 69,16,103251,2.0,V290
679 | 70,16,103251,3.0,V502
680 | 71,16,103251,4.0,V053
681 | 72,16,103251,5.0,V721
682 | 73,17,161087,1.0,4239
683 | 74,17,161087,2.0,5119
684 | 75,17,161087,3.0,78551
685 | 76,17,161087,4.0,4589
686 | 77,17,161087,5.0,311
687 | 78,17,161087,6.0,7220
688 | 79,17,161087,7.0,71946
689 | 80,17,161087,8.0,2724
690 | 81,17,194023,1.0,7455
691 | 82,17,194023,2.0,45829
692 | 83,17,194023,3.0,V1259
693 | 84,17,194023,4.0,2724
694 | 85,18,188822,1.0,25080
695 | 86,18,188822,2.0,78039
696 | 87,18,188822,3.0,29633
697 | 88,18,188822,4.0,V5867
698 | 89,18,188822,5.0,E9323
699 | 90,18,188822,6.0,V5869
700 | 91,18,188822,7.0,47829
701 | 92,18,188822,8.0,78057
702 | 93,18,188822,9.0,78321
703 | 94,18,188822,10.0,4019
704 | 95,18,188822,11.0,4264
705 | 96,18,188822,12.0,2720
706 | 97,18,188822,13.0,V170
707 | 98,19,109235,1.0,80502
708 | 99,19,109235,2.0,5990
709 | 100,19,109235,3.0,5964
710 | 101,19,109235,4.0,E8809
711 | 102,19,109235,5.0,8220
712 | 103,19,109235,6.0,73300
713 | 104,19,109235,7.0,2948
714 | 105,19,109235,8.0,4019
715 | 106,19,109235,9.0,44321
716 | 107,20,157681,1.0,41401
717 | 108,20,157681,2.0,4111
718 | 109,20,157681,3.0,25000
719 | 110,20,157681,4.0,2724
720 | 111,20,157681,5.0,4019
721 | 112,21,109451,1.0,41071
722 | 113,21,109451,2.0,78551
723 | 114,21,109451,3.0,5781
724 | 115,21,109451,4.0,5849
725 | 116,21,109451,5.0,40391
726 | 117,21,109451,6.0,4280
727 | 118,21,109451,7.0,4592
728 | 119,21,109451,8.0,5070
729 | 120,21,109451,9.0,42731
730 | 121,21,109451,10.0,4271
731 | 122,21,109451,11.0,41401
732 | 123,21,109451,12.0,25000
733 | 124,21,109451,13.0,28521
734 | 125,21,109451,14.0,1122
735 | 126,21,109451,15.0,2720
736 | 127,21,109451,16.0,2749
737 | 128,21,109451,17.0,V1046
738 | 129,21,109451,18.0,43889
739 | 130,21,111970,1.0,0388
740 | 131,21,111970,2.0,78552
741 | 132,21,111970,3.0,40391
742 | 133,21,111970,4.0,42731
743 | 134,21,111970,5.0,70709
744 | 135,21,111970,6.0,5119
745 | 136,21,111970,7.0,6823
746 | 137,21,111970,8.0,99859
747 | 138,21,111970,9.0,00845
748 | 139,21,111970,10.0,5720
749 | 140,21,111970,11.0,99592
750 | 141,21,111970,12.0,V0980
751 | 142,21,111970,13.0,25000
752 | 143,21,111970,14.0,2859
753 | 144,21,111970,15.0,43889
754 | 145,21,111970,16.0,2749
755 | 146,21,111970,17.0,41401
756 | 147,21,111970,18.0,185
757 | 148,21,111970,19.0,4439
758 | 149,21,111970,20.0,2449
759 | 150,21,111970,21.0,E8788
760 | 151,22,165315,1.0,9678
761 | 152,22,165315,2.0,9693
762 | 153,22,165315,3.0,E9502
763 | 154,22,165315,4.0,E9503
764 | 155,22,165315,5.0,3488
765 | 156,22,165315,6.0,29620
766 | 157,22,165315,7.0,4019
767 | 158,23,124321,1.0,2252
768 | 159,23,124321,2.0,3485
769 | 160,23,124321,3.0,78039
770 | 161,23,124321,4.0,4241
771 | 162,23,124321,5.0,4019
772 | 163,23,124321,6.0,2720
773 | 164,23,124321,7.0,2724
774 | 165,23,124321,8.0,V4581
775 | 166,23,124321,9.0,V4579
776 | 167,23,124321,10.0,V1582
777 | 168,23,152223,1.0,41401
778 | 169,23,152223,2.0,4111
779 | 170,23,152223,3.0,4241
780 | 171,23,152223,4.0,V4582
781 | 172,23,152223,5.0,2724
782 | 173,23,152223,6.0,4019
783 | 174,23,152223,7.0,60000
784 | 175,23,152223,8.0,3899
785 | 176,24,161859,1.0,41041
786 | 177,24,161859,2.0,41401
787 | 178,24,161859,3.0,53081
788 | 179,24,161859,4.0,25000
789 | 180,25,129635,1.0,41071
790 | 181,25,129635,2.0,25011
791 | 182,25,129635,3.0,41401
792 | 183,25,129635,4.0,4019
793 | 184,26,197661,1.0,99604
794 | 185,26,197661,2.0,4271
795 | 186,26,197661,3.0,4280
796 | 187,26,197661,4.0,42731
797 | 188,26,197661,5.0,41401
798 | 189,26,197661,6.0,412
799 | 190,26,197661,7.0,5939
800 | 191,26,197661,8.0,2720
801 | 192,26,197661,9.0,60000
802 | 193,27,134931,1.0,V3000
803 | 194,27,134931,2.0,7706
804 | 195,27,134931,3.0,V290
805 | 196,27,134931,4.0,V053
806 | 197,28,162569,1.0,41401
807 | 198,28,162569,2.0,4111
808 | 199,28,162569,3.0,496
809 | 200,28,162569,4.0,412
810 | 201,28,162569,5.0,25000
811 | 202,28,162569,6.0,2720
812 | 203,28,162569,7.0,4263
813 | 204,28,162569,8.0,30029
814 | 205,28,162569,9.0,V1582
815 | 206,28,162569,10.0,V4582
816 | 207,28,162569,11.0,V174
817 | 208,30,104557,1.0,99674
818 | 209,30,104557,2.0,4160
819 | 210,30,104557,3.0,4111
820 | 211,30,104557,4.0,4281
821 | 212,30,104557,5.0,4271
822 | 213,30,104557,6.0,41401
823 | 214,30,104557,7.0,4019
824 | 215,30,104557,8.0,2720
825 | 216,30,104557,9.0,5939
826 | 217,31,128652,1.0,3453
827 | 218,31,128652,2.0,20190
828 | 219,31,128652,3.0,515
829 | 220,31,128652,4.0,486
830 | 221,31,128652,5.0,4019
831 | 222,31,128652,6.0,36250
832 | 223,31,128652,7.0,E9331
833 | 224,31,128652,8.0,4371
834 | 225,32,175413,1.0,5191
835 | 226,32,175413,2.0,496
836 | 227,32,175413,3.0,42731
837 | 228,32,175413,4.0,4538
838 | 229,32,175413,5.0,53081
839 | 230,32,175413,6.0,78057
840 | 231,32,175413,7.0,4019
841 | 232,32,175413,8.0,27801
842 | 233,33,176176,1.0,0389
843 | 234,33,176176,2.0,4928
844 | 235,33,176176,3.0,49390
845 | 236,34,115799,1.0,41071
846 | 237,34,115799,2.0,4280
847 | 238,34,115799,3.0,4254
848 | 239,34,115799,4.0,42731
849 | 240,34,115799,5.0,9971
850 | 241,34,115799,6.0,4260
851 | 242,34,115799,7.0,41401
852 | 243,34,115799,8.0,E8790
853 | 244,34,144319,1.0,42789
854 | 245,34,144319,2.0,42822
855 | 246,34,144319,3.0,4263
856 | 247,34,144319,4.0,41401
857 | 248,34,144319,5.0,V5861
858 | 249,34,144319,6.0,4280
859 | 250,34,144319,7.0,2449
860 | 251,34,144319,8.0,3659
861 | 252,35,166707,1.0,3962
862 | 253,35,166707,2.0,4260
863 | 254,35,166707,3.0,2875
864 | 255,35,166707,4.0,9971
865 | 256,35,166707,5.0,42731
866 | 257,35,166707,6.0,42732
867 | 258,35,166707,7.0,41401
868 | 259,35,166707,8.0,4019
869 | 260,35,166707,9.0,2449
870 | 261,35,166707,10.0,25000
871 | 262,35,166707,11.0,71590
872 | 263,36,122659,1.0,99831
873 | 264,36,122659,2.0,99811
874 | 265,36,122659,3.0,41511
875 | 266,36,122659,4.0,4538
876 | 267,36,122659,5.0,99672
877 | 268,36,122659,6.0,496
878 | 269,36,122659,7.0,41401
879 | 270,36,122659,8.0,V4581
880 | 271,36,122659,9.0,4019
881 | 272,36,122659,10.0,60000
882 | 273,36,122659,11.0,53081
883 | 274,36,122659,12.0,V1051
884 | 275,36,165660,1.0,55321
885 | 276,36,165660,2.0,41511
886 | 277,36,165660,3.0,5185
887 | 278,36,165660,4.0,486
888 | 279,36,165660,5.0,99739
889 | 280,36,165660,6.0,5180
890 | 281,36,165660,7.0,41400
891 | 282,36,165660,8.0,496
892 | 283,36,165660,9.0,4019
893 | 284,36,165660,10.0,60000
894 | 285,36,165660,11.0,30000
895 | 286,36,165660,12.0,V1051
896 | 287,36,182104,1.0,41401
897 | 288,36,182104,2.0,4111
898 | 289,36,182104,3.0,496
899 | 290,36,182104,4.0,4019
900 | 291,36,182104,5.0,3051
901 | 292,36,182104,6.0,53081
902 | 293,36,182104,7.0,60000
903 | 294,36,182104,8.0,V1051
904 | 295,36,182104,9.0,5968
905 | 296,37,188670,1.0,41071
906 | 297,37,188670,2.0,4280
907 | 298,37,188670,3.0,496
908 | 299,37,188670,4.0,53551
909 | 300,37,188670,5.0,2851
910 | 301,37,188670,6.0,486
911 | 302,37,188670,7.0,41401
912 | 303,37,188670,8.0,25000
913 | 304,37,188670,9.0,42789
914 | 305,38,185910,1.0,60883
915 | 306,38,185910,2.0,0389
916 | 307,38,185910,3.0,99592
917 | 308,38,185910,4.0,5849
918 | 309,38,185910,5.0,4280
919 | 310,38,185910,6.0,42731
920 | 311,38,185910,7.0,9982
921 | 312,38,185910,8.0,9974
922 | 313,38,185910,9.0,5601
923 | 314,38,185910,10.0,6084
924 | 315,38,185910,11.0,E8708
925 | 316,38,185910,12.0,41400
926 | 317,38,185910,13.0,V4581
927 | 318,39,106266,1.0,V3000
928 | 319,39,106266,2.0,769
929 | 320,39,106266,3.0,7742
930 | 321,39,106266,4.0,2765
931 | 322,39,106266,5.0,7708
932 | 323,39,106266,6.0,76519
933 | 324,39,106266,7.0,V290
934 | 325,39,106266,8.0,V058
935 | 326,39,106266,9.0,V053
936 | 327,41,101757,1.0,1917
937 | 328,41,101757,2.0,5185
938 | 329,41,101757,3.0,5130
939 | 330,41,101757,4.0,48241
940 | 331,41,101757,5.0,5070
941 | 332,41,101757,6.0,70705
942 | 333,41,101757,7.0,1124
943 | 334,41,101757,8.0,496
944 | 335,41,101757,9.0,48282
945 | 336,41,101757,10.0,78820
946 | 337,41,101757,11.0,5121
947 | 338,41,101757,12.0,70703
948 | 339,41,101757,13.0,3485
949 | 340,41,101757,14.0,V1005
950 | 341,41,101757,15.0,V1047
951 | 342,41,101757,16.0,4019
952 | 343,41,101757,17.0,2859
953 | 344,41,101757,18.0,3051
954 | 345,41,101757,19.0,7099
955 | 346,42,119203,1.0,42741
956 | 347,42,119203,2.0,4280
957 | 348,42,119203,3.0,41400
958 | 349,42,119203,4.0,412
959 | 350,42,119203,5.0,4019
960 | 351,42,119203,6.0,43820
961 | 352,42,119203,7.0,43819
962 | 353,43,146828,1.0,8052
963 | 354,43,146828,2.0,5180
964 | 355,43,146828,3.0,E8210
965 | 356,44,181750,1.0,41401
966 | 357,44,181750,2.0,4139
967 | 358,44,181750,3.0,5960
968 | 359,44,181750,4.0,42731
969 | 360,44,181750,5.0,3968
970 | 361,44,181750,6.0,4019
971 | 362,44,181750,7.0,2720
972 | 363,44,181750,8.0,78057
973 | 364,44,181750,9.0,V173
974 | 365,44,181750,10.0,4439
975 | 366,45,157907,1.0,8249
976 | 367,45,157907,2.0,9984
977 | 368,45,157907,3.0,8730
978 | 369,45,157907,4.0,87344
979 | 370,45,157907,5.0,9110
980 | 371,45,157907,6.0,9130
981 | 372,45,157907,7.0,E8122
982 | 373,45,157907,8.0,3051
983 | 374,46,144073,1.0,5768
984 | 375,46,144073,2.0,20300
985 | 376,46,144073,3.0,99659
986 | 377,46,144073,4.0,99811
987 | 378,46,144073,5.0,2851
988 | 379,46,144073,6.0,2809
989 | 380,46,144073,7.0,2811
990 | 381,46,144073,8.0,22809
991 | 382,49,190539,1.0,4241
992 | 383,49,190539,2.0,42731
993 | 384,49,190539,3.0,4280
994 | 385,49,190539,4.0,496
995 | 386,49,190539,5.0,2939
996 | 387,49,190539,6.0,40390
997 | 388,49,190539,7.0,56409
998 | 389,49,190539,8.0,311
999 | 390,49,190539,9.0,V4582
1000 | 391,49,190539,10.0,412
1001 | 392,49,190539,11.0,2724
1002 | 393,50,132761,1.0,V3000
1003 | 394,50,132761,2.0,7746
1004 | 395,50,132761,3.0,7661
1005 | 396,50,132761,4.0,V290
1006 | 397,50,132761,5.0,V293
1007 | 398,51,196010,1.0,V3000
1008 | 399,51,196010,2.0,V502
1009 | 400,51,196010,3.0,V053
1010 | 401,51,196010,4.0,V290
1011 | 402,52,190797,1.0,7907
1012 | 403,52,190797,2.0,78039
1013 | 404,52,190797,3.0,5849
1014 | 405,52,190797,4.0,58089
1015 | 406,52,190797,5.0,5712
1016 | 407,52,190797,6.0,07054
1017 | 408,52,190797,7.0,04111
1018 | 409,52,190797,8.0,5728
1019 | 410,52,190797,9.0,2841
1020 | 411,53,155385,1.0,41021
1021 | 412,53,155385,2.0,30562
1022 | 413,53,155385,3.0,41401
1023 | 414,53,155385,4.0,4019
1024 | 415,53,155385,5.0,53081
1025 | 416,54,138795,1.0,V3001
1026 | 417,54,138795,2.0,V290
1027 | 418,54,138795,3.0,V053
1028 | 419,55,190665,1.0,43310
1029 | 420,55,190665,2.0,4280
1030 | 421,55,190665,3.0,2720
1031 | 422,55,190665,4.0,4019
1032 | 423,55,190665,5.0,2449
1033 | 424,55,190665,6.0,25000
1034 | 425,55,190665,7.0,V1011
1035 | 426,55,190665,8.0,41400
1036 | 427,55,190665,9.0,V4582
1037 | 428,55,190665,10.0,V4502
1038 | 429,56,181711,1.0,1983
1039 | 430,56,181711,2.0,1628
1040 | 431,56,181711,3.0,53140
1041 | 432,56,181711,4.0,2761
1042 | 433,56,181711,5.0,4280
1043 | 434,56,181711,6.0,78039
1044 | 435,56,181711,7.0,2720
1045 | 436,56,181711,8.0,4019
1046 | 437,57,162774,1.0,V3001
1047 | 438,57,162774,2.0,7661
1048 | 439,57,162774,3.0,V053
1049 | 440,57,162774,4.0,V290
1050 | 441,57,162774,5.0,V293
1051 | 442,58,177285,1.0,V3000
1052 | 443,58,177285,2.0,2161
1053 | 444,58,177285,3.0,V053
1054 | 445,58,177285,4.0,V290
1055 | 446,59,104130,1.0,5990
1056 | 447,59,104130,2.0,40391
1057 | 448,59,104130,3.0,5856
1058 | 449,59,104130,4.0,25080
1059 | 450,59,104130,5.0,0414
1060 | 451,59,104130,6.0,4589
1061 | 452,59,104130,7.0,311
1062 | 453,59,104130,8.0,2948
1063 | 454,59,104130,9.0,78701
1064 | 455,59,104130,10.0,2449
1065 | 456,59,104130,11.0,V4501
1066 | 457,59,104130,12.0,28529
1067 | 458,60,198892,1.0,V3401
1068 | 459,60,198892,2.0,76518
1069 | 460,60,198892,3.0,76527
1070 | 461,61,176332,1.0,20280
1071 | 462,61,176332,2.0,2880
1072 | 463,61,176332,3.0,2875
1073 | 464,61,176332,4.0,5781
1074 | 465,61,176332,5.0,2851
1075 | 466,61,176332,6.0,2639
1076 | 467,61,176332,7.0,9998
1077 | 468,61,176332,8.0,5790
1078 | 469,61,176332,9.0,6930
1079 | 470,61,189535,1.0,20280
1080 | 471,61,189535,2.0,2848
1081 | 472,61,189535,3.0,99685
1082 | 473,61,189535,4.0,56983
1083 | 474,61,189535,5.0,5672
1084 | 475,61,189535,6.0,2762
1085 | 476,61,189535,7.0,0389
1086 | 477,61,189535,8.0,99591
1087 | 478,61,189535,9.0,2763
1088 | 479,61,189535,10.0,7994
1089 | 480,61,189535,11.0,1120
1090 | 481,61,189535,12.0,2765
1091 | 482,61,189535,13.0,4589
1092 | 483,61,189535,14.0,42731
1093 | 484,61,189535,15.0,2554
1094 | 485,61,189535,16.0,3510
1095 | 486,61,189535,17.0,0880
1096 | 487,62,116009,1.0,1125
1097 | 488,62,116009,2.0,03849
1098 | 489,62,116009,3.0,7100
1099 | 490,62,116009,4.0,99591
1100 | 491,62,116009,5.0,2859
1101 | 492,62,116009,6.0,7140
1102 | 493,63,195961,1.0,71945
1103 | 494,63,195961,2.0,4280
1104 | 495,63,195961,3.0,496
1105 | 496,63,195961,4.0,57420
1106 | 497,63,195961,5.0,4148
1107 | 498,63,195961,6.0,E8889
1108 | 499,63,195961,7.0,E8498
1109 | 500,63,195961,8.0,7808
1110 | 501,63,195961,9.0,2948
1111 | 502,63,195961,10.0,3079
1112 | 503,64,172056,1.0,4210
1113 | 1000,109,126055,17.0,V4511
1114 | 1001,109,126055,18.0,34590
1115 | 1002,109,126055,19.0,56400
1116 | 1003,109,126055,20.0,28521
1117 | 1004,109,126055,21.0,79092
1118 | 1005,109,126055,22.0,32723
1119 | 1006,109,126055,23.0,51889
1120 | 1007,109,126055,24.0,78659
1121 | 1008,109,126055,25.0,78060
1122 | 1009,109,126055,26.0,7821
1123 | 1010,109,126055,27.0,4168
1124 | 1011,109,126055,28.0,V1251
1125 | 1012,109,126055,29.0,V5861
1126 | 1013,109,128755,1.0,4372
1127 | 1014,109,128755,2.0,78039
1128 | 1015,109,128755,3.0,7100
1129 | 1016,109,128755,4.0,40391
1130 | 1017,109,128755,5.0,4251
1131 | 1018,109,128755,6.0,2859
1132 | 1019,109,131345,1.0,40301
1133 | 1020,109,131345,2.0,58281
1134 | 1021,109,131345,3.0,4254
1135 | 1022,109,131345,4.0,7100
1136 | 1023,109,131345,5.0,2875
1137 | 1024,109,131345,6.0,78702
1138 | 1025,109,131345,7.0,E9426
1139 | 1026,109,131345,8.0,9596
1140 | 1027,109,131345,9.0,E9289
1141 | 1028,109,131345,10.0,4589
1142 | 1029,109,131345,11.0,2859
1143 | 1030,109,131345,12.0,V1251
1144 | 1031,109,131345,13.0,5856
1145 | 1032,109,131345,14.0,V451
1146 | 1033,109,131345,15.0,5990
1147 | 1034,109,131345,16.0,2767
1148 | 1035,109,131345,17.0,2762
1149 | 1036,109,131345,18.0,2753
1150 | 1037,109,131345,19.0,27541
1151 | 1038,109,131345,20.0,58881
1152 | 1039,109,131376,1.0,40301
1153 | 1040,109,131376,2.0,5856
1154 | 1041,109,131376,3.0,58281
1155 | 1042,109,131376,4.0,4254
1156 | 1043,109,131376,5.0,3643
1157 | 1044,109,131376,6.0,2841
1158 | 1045,109,131376,7.0,78959
1159 | 1046,109,131376,8.0,33829
1160 | 1047,109,131376,9.0,78900
1161 | 1048,109,131376,10.0,7100
1162 | 1049,109,131376,11.0,2875
1163 | 1050,109,131376,12.0,28521
1164 | 1051,109,131376,13.0,32723
1165 | 1052,109,131376,14.0,44389
1166 | 1053,109,131376,15.0,28529
1167 | 1054,109,131376,16.0,53190
1168 | 1055,109,131376,17.0,34590
1169 | 1056,109,131376,18.0,V5861
1170 | 1057,109,131376,19.0,V1251
1171 | 1058,109,131376,20.0,V1254
1172 | 1059,109,135923,1.0,40301
1173 | 1060,109,135923,2.0,5856
1174 | 1061,109,135923,3.0,4251
1175 | 1062,109,135923,4.0,7100
1176 | 1063,109,135923,5.0,79902
1177 | 1064,109,135923,6.0,E9352
1178 | 1065,109,135923,7.0,2875
1179 | 1066,109,135923,8.0,28521
1180 | 1067,109,135923,9.0,78909
1181 | 1068,109,135923,10.0,32723
1182 | 1069,109,135923,11.0,3004
1183 | 1070,109,135923,12.0,V4511
1184 | 1071,109,135923,13.0,V1251
1185 | 1072,109,135923,14.0,V5861
1186 | 1073,109,135923,15.0,V4589
1187 | 1074,109,136572,1.0,2766
1188 | 1075,109,136572,2.0,5856
1189 | 1076,109,136572,3.0,40301
1190 | 1077,109,136572,4.0,4254
1191 | 1078,109,136572,5.0,4239
1192 | 1079,109,136572,6.0,28529
1193 | 1080,109,136572,7.0,2767
1194 | 1081,109,136572,8.0,7100
1195 | 1082,109,136572,9.0,78909
1196 | 1083,109,136572,10.0,33829
1197 | 1084,109,136572,11.0,4589
1198 | 1085,109,136572,12.0,53190
1199 | 1086,109,136572,13.0,34590
1200 | 1087,109,136572,14.0,311
1201 | 1088,109,136572,15.0,V1251
1202 | 1089,109,136572,16.0,V4512
1203 | 1090,109,137510,1.0,40301
1204 | 1091,109,137510,2.0,5856
1205 | 1092,109,137510,3.0,3643
1206 | 1093,109,137510,4.0,4254
1207 | 1094,109,137510,5.0,4239
1208 | 1095,109,137510,6.0,2766
1209 | 1096,109,137510,7.0,7100
1210 | 1097,109,137510,8.0,58381
1211 | 1098,109,137510,9.0,V4512
1212 | 1099,109,137510,10.0,V1581
1213 | 1100,109,137510,11.0,V642
1214 | 1101,109,137510,12.0,78904
1215 | 1102,109,137510,13.0,V4511
1216 | 1103,109,137510,14.0,2875
1217 | 1104,109,137510,15.0,28529
1218 | 1105,109,137510,16.0,V1251
1219 | 1106,109,137510,17.0,V5861
1220 | 1107,109,137510,18.0,4439
1221 | 1108,109,137510,19.0,V4578
1222 | 1109,109,137510,20.0,V0254
1223 | 1110,109,139061,1.0,40301
1224 | 1111,109,139061,2.0,58281
1225 | 1112,109,139061,3.0,5855
1226 | 1113,109,139061,4.0,5990
1227 | 1114,109,139061,5.0,4254
1228 | 1115,109,139061,6.0,7100
1229 | 1116,109,139061,7.0,7243
1230 | 1117,109,139061,8.0,2767
1231 | 1118,109,139061,9.0,2875
1232 | 1119,109,139061,10.0,79092
1233 | 1120,109,139061,11.0,25200
1234 | 1121,109,139061,12.0,28529
1235 | 1122,109,139061,13.0,V1251
1236 | 1123,109,140167,1.0,40301
1237 | 1124,109,140167,2.0,5856
1238 | 1125,109,140167,3.0,99656
1239 | 1126,109,140167,4.0,4251
1240 | 1127,109,140167,5.0,4239
1241 | 1128,109,140167,6.0,9951
1242 | 1129,109,140167,7.0,78909
1243 | 1130,109,140167,8.0,7100
1244 | 1131,109,140167,9.0,2874
1245 | 1132,109,140167,10.0,28521
1246 | 1133,109,140167,11.0,3004
1247 | 1134,109,140167,12.0,32723
1248 | 1135,109,140167,13.0,V1251
1249 | 1136,109,140167,14.0,V5865
1250 | 1137,109,140167,15.0,V5861
1251 | 1138,109,140167,16.0,E8781
1252 | 1139,109,140167,17.0,E9426
1253 | 1140,109,147469,1.0,40301
1254 | 1141,109,147469,2.0,5856
1255 | 1142,109,147469,3.0,34839
1256 | 1143,109,147469,4.0,58281
1257 | 1144,109,147469,5.0,5990
1258 | 1145,109,147469,6.0,2762
1259 | 1146,109,147469,7.0,3643
1260 | 1147,109,147469,8.0,2839
1261 | 1148,109,147469,9.0,7100
1262 | 1149,109,147469,10.0,V1251
1263 | 1150,109,147469,11.0,V5861
1264 | 1151,109,147469,12.0,7842
1265 | 1152,109,147469,13.0,2767
1266 | 1153,109,147469,14.0,61172
1267 | 1154,109,147469,15.0,2875
1268 | 1155,109,147469,16.0,27541
1269 | 1156,109,147469,17.0,2753
1270 | 1157,109,151240,1.0,40301
1271 | 1158,109,151240,2.0,5856
1272 | 1159,109,151240,3.0,4254
1273 | 1160,109,151240,4.0,4239
1274 | 1161,109,151240,5.0,7100
1275 | 1162,109,151240,6.0,58381
1276 | 1163,109,151240,7.0,2767
1277 | 1164,109,151240,8.0,78701
1278 | 1165,109,151240,9.0,78791
1279 | 1166,109,151240,10.0,2753
1280 | 1167,109,151240,11.0,28529
1281 | 1168,109,151240,12.0,78904
1282 | 1169,109,151240,13.0,33829
1283 | 1170,109,151240,14.0,2875
1284 | 1171,109,151240,15.0,44389
1285 | 1172,109,151240,16.0,V0254
1286 | 1173,109,151240,17.0,V5861
1287 | 1174,109,151240,18.0,V4512
1288 | 1175,109,151240,19.0,V4511
1289 | 1176,109,151240,20.0,V1581
1290 | 1177,109,155726,1.0,40301
1291 | 1178,109,155726,2.0,5856
1292 | 1179,109,155726,3.0,58281
1293 | 1180,109,155726,4.0,4254
1294 | 1181,109,155726,5.0,78959
1295 | 1182,109,155726,6.0,2875
1296 | 1183,109,155726,7.0,4592
1297 | 1184,109,155726,8.0,2841
1298 | 1185,109,155726,9.0,7100
1299 | 1186,109,155726,10.0,78900
1300 | 1187,109,155726,11.0,33819
1301 | 1188,109,155726,12.0,33829
1302 | 1189,109,155726,13.0,53190
1303 | 1190,109,155726,14.0,53081
1304 | 1191,109,155726,15.0,311
1305 | 1192,109,155726,16.0,28521
1306 | 1193,109,155726,17.0,28529
1307 | 1194,109,155726,18.0,34590
1308 | 1195,109,155726,19.0,73399
1309 | 1196,109,155726,20.0,32723
1310 | 1197,109,155726,21.0,44389
1311 | 1198,109,155726,22.0,62211
1312 | 1199,109,155726,23.0,V4512
1313 | 1200,109,155726,24.0,V1251
1314 | 1201,109,155726,25.0,V5861
1315 | 1202,109,158943,1.0,2766
1316 | 1203,109,158943,2.0,5856
1317 | 1204,109,158943,3.0,40301
1318 | 1205,109,158943,4.0,58281
1319 | 1206,109,158943,5.0,4592
1320 | 1207,109,158943,6.0,4239
1321 | 1208,109,158943,7.0,99662
1322 | 1209,109,158943,8.0,7907
1323 | 1210,109,158943,9.0,28981
1324 | 1211,109,158943,10.0,4254
1325 | 1212,109,158943,11.0,4251
1326 | 1213,109,158943,12.0,78900
1327 | 1214,109,158943,13.0,5990
1328 | 1215,109,158943,14.0,2762
1329 | 1216,109,158943,15.0,78659
1330 | 1217,109,158943,16.0,33829
1331 | 1218,109,158943,17.0,7100
1332 | 1219,109,158943,18.0,V4512
1333 | 1220,109,158943,19.0,2875
1334 | 1221,109,158943,20.0,28521
1335 | 1222,109,158943,21.0,2767
1336 | 1223,109,158943,22.0,04104
1337 | 1224,109,158943,23.0,E8791
1338 | 1225,109,158943,24.0,04112
1339 | 1226,109,158943,25.0,32723
1340 | 1227,109,158943,26.0,V1251
1341 | 1228,109,158943,27.0,V5861
1342 | 1229,109,158995,1.0,96509
1343 | 1230,109,158995,2.0,5856
1344 | 1231,109,158995,3.0,40301
1345 | 1232,109,158995,4.0,58281
1346 | 1233,109,158995,5.0,4466
1347 | 1234,109,158995,6.0,4254
1348 | 1235,109,158995,7.0,2762
1349 | 1236,109,158995,8.0,7100
1350 | 1237,109,158995,9.0,2875
1351 | 1238,109,158995,10.0,78097
1352 | 1239,109,158995,11.0,45829
1353 | 1240,109,158995,12.0,E8502
1354 | 1241,109,158995,13.0,2767
1355 | 1242,109,158995,14.0,28521
1356 | 1243,109,158995,15.0,32723
1357 | 1244,109,158995,16.0,3004
1358 | 1245,109,158995,17.0,72992
1359 | 1246,109,158995,18.0,V4512
1360 | 1247,109,158995,19.0,V5861
1361 | 1248,109,158995,20.0,V1251
1362 | 1249,109,161950,1.0,40301
1363 | 1250,109,161950,2.0,5856
1364 | 1251,109,161950,3.0,78959
1365 | 1252,109,161950,4.0,4251
1366 | 1253,109,161950,5.0,7100
1367 | 1254,109,161950,6.0,7840
1368 | 1255,109,161950,7.0,28521
1369 | 1256,109,161950,8.0,30000
1370 | 1257,109,161950,9.0,78659
1371 | 1258,109,161950,10.0,V1251
1372 | 1259,109,161950,11.0,V5861
1373 | 1260,109,161950,12.0,V4511
1374 | 1261,109,161950,13.0,V4578
1375 | 1262,109,164029,1.0,40301
1376 | 1263,109,164029,2.0,7100
1377 | 1264,109,164029,3.0,5856
1378 | 1265,109,164029,4.0,V4983
1379 | 1266,109,164029,5.0,58381
1380 | 1267,109,164029,6.0,3643
1381 | 1268,109,166018,1.0,4010
1382 | 1269,109,166018,2.0,5856
1383 | 1270,109,166018,3.0,58281
1384 | 1271,109,166018,4.0,4254
1385 | 1272,109,166018,5.0,2841
1386 | 1273,109,166018,6.0,7100
1387 | 1274,109,166018,7.0,2875
1388 | 1275,109,166018,8.0,2859
1389 | 1276,109,166018,9.0,V451
1390 | 1277,109,166018,10.0,V4589
1391 | 1278,109,166018,11.0,V4569
1392 | 1279,109,170149,1.0,4538
1393 | 1280,109,170149,2.0,5856
1394 | 1281,109,170149,3.0,40301
1395 | 1282,109,170149,4.0,4592
1396 | 1283,109,170149,5.0,58281
1397 | 1284,109,170149,6.0,4254
1398 | 1285,109,170149,7.0,2841
1399 | 1286,109,170149,8.0,7100
1400 | 1287,109,170149,9.0,28521
1401 | 1288,109,170149,10.0,2767
1402 | 1289,109,170149,11.0,25200
1403 | 1290,109,170149,12.0,45829
1404 | 1291,109,170149,13.0,78701
1405 | 1292,109,170149,14.0,2874
1406 | 1293,109,170149,15.0,79500
1407 | 1294,109,170149,16.0,78909
1408 | 1295,109,170149,17.0,2518
1409 | 1296,109,170149,18.0,E9320
1410 | 3270,273,158689,12.0,E8500
1411 | 3271,273,158689,13.0,E8543
1412 | 3272,273,158689,14.0,E8541
1413 | 3273,273,158689,15.0,E8498
1414 | 3274,273,158689,16.0,3051
1415 | 3275,274,130546,1.0,430
1416 | 3276,274,130546,2.0,5070
1417 | 3277,274,130546,3.0,2720
1418 | 3278,274,130546,4.0,4019
1419 | 3279,274,130546,5.0,43320
1420 | 3280,275,129886,1.0,0389
1421 | 2955,245,105501,3.0,9971
1422 | 2956,245,105501,4.0,4271
1423 | 2957,245,105501,5.0,78551
1424 | 2958,245,105501,6.0,4280
1425 | 2959,245,105501,7.0,5849
1426 | 2960,245,105501,8.0,3963
1427 | 2961,245,105501,9.0,V667
1428 | 2962,246,197430,1.0,57149
1429 | 2963,246,197430,2.0,1550
1430 | 2964,246,197430,3.0,25002
1431 | 2965,246,197430,4.0,5715
1432 | 2966,246,197430,5.0,5680
1433 | 2967,246,197430,6.0,2720
1434 | 2968,246,197430,7.0,4019
1435 | 2969,246,197430,8.0,V4581
1436 | 2970,246,197430,9.0,V5867
1437 | 2971,246,197430,10.0,27800
1438 | 2972,246,197430,11.0,41400
1439 | 2973,246,197430,12.0,V1301
1440 | 2974,246,197430,13.0,32723
1441 | 2975,247,189521,1.0,41401
1442 | 2976,247,189521,2.0,9971
1443 | 2977,247,189521,3.0,4139
1444 | 2978,247,189521,4.0,42731
1445 | 2979,247,189521,5.0,4019
1446 | 2980,247,189521,6.0,2720
1447 | 2981,247,189521,7.0,311
1448 | 2982,247,189521,8.0,V4582
1449 | 2983,248,175353,1.0,8822
1450 | 2984,248,175353,2.0,85220
1451 | 2985,248,175353,3.0,5185
1452 | 2986,248,175353,4.0,99889
1453 | 2987,248,175353,5.0,5070
1454 | 2988,248,175353,6.0,9579
1455 | 2989,248,175353,7.0,87342
1456 | 2990,248,175353,8.0,E8150
1457 | 2991,248,175353,9.0,2859
1458 | 2992,249,116935,1.0,49322
1459 | 2993,249,116935,2.0,51882
1460 | 2994,249,116935,3.0,41071
1461 | 2995,249,116935,4.0,42841
1462 | 2996,249,116935,5.0,99812
1463 | 2997,249,116935,6.0,5849
1464 | 2998,249,116935,7.0,42731
1465 | 2999,249,116935,8.0,4660
1466 | 3000,249,116935,9.0,4589
1467 | 3001,249,116935,10.0,41401
1468 | 3002,249,116935,11.0,41402
1469 | 3003,249,116935,12.0,2449
1470 | 3004,249,116935,13.0,7921
1471 | 3005,249,116935,14.0,25000
1472 | 3006,249,116935,15.0,53081
1473 | 3007,249,116935,16.0,2859
1474 | 3008,249,149546,1.0,56985
1475 | 3009,249,149546,2.0,41071
1476 | 3010,249,149546,3.0,43411
1477 | 3011,249,149546,4.0,5849
1478 | 3012,249,149546,5.0,2851
1479 | 3013,249,149546,6.0,34280
1480 | 3014,249,149546,7.0,41402
1481 | 3015,249,149546,8.0,42731
1482 | 3016,249,149546,9.0,4280
1483 | 3017,249,149546,10.0,40390
1484 | 3018,249,149546,11.0,78451
1485 | 3019,249,149546,12.0,25000
1486 | 3020,249,149546,13.0,5859
1487 | 3021,249,149546,14.0,2724
1488 | 3022,249,149546,15.0,49320
1489 | 3023,249,149546,16.0,53081
1490 | 3024,249,149546,17.0,2449
1491 | 3025,249,158975,1.0,1534
1492 | 3026,249,158975,2.0,42821
1493 | 3027,249,158975,3.0,1982
1494 | 3028,249,158975,4.0,2639
1495 | 3029,249,158975,5.0,5849
1496 | 3030,249,158975,6.0,5601
1497 | 3031,249,158975,7.0,99811
1498 | 3032,249,158975,8.0,99813
1499 | 3033,249,158975,9.0,42731
1500 | 3034,249,158975,10.0,4280
1501 | 3035,249,158975,11.0,40390
1502 | 3036,249,158975,12.0,5853
1503 | 3037,249,158975,13.0,4139
1504 | 3038,249,158975,14.0,25000
1505 | 3039,249,158975,15.0,53081
1506 | 3040,249,158975,16.0,2449
1507 | 3041,249,158975,17.0,49320
1508 | 3042,249,158975,18.0,412
1509 | 3043,249,158975,19.0,V4581
1510 | 3044,249,158975,20.0,V1254
1511 | 3045,249,158975,21.0,V4986
1512 | 3046,249,158975,22.0,E8788
1513 | 3047,249,158975,23.0,2800
1514 | 3048,249,158975,24.0,45829
1515 | 3049,249,158975,25.0,59971
1516 | 3050,249,158975,26.0,E9342
1517 | 3051,250,124271,1.0,0382
1518 | 3052,250,124271,2.0,78552
1519 | 3053,250,124271,3.0,51881
1520 | 3054,250,124271,4.0,481
1521 | 3055,250,124271,5.0,5849
1522 | 3056,250,124271,6.0,78551
1523 | 3057,250,124271,7.0,9982
1524 | 3058,250,124271,8.0,1970
1525 | 3059,250,124271,9.0,19889
1526 | 3060,250,124271,10.0,99592
1527 | 3061,250,124271,11.0,4239
1528 | 3062,250,124271,12.0,2859
1529 | 3063,251,117937,1.0,85300
1530 | 3064,251,117937,2.0,9130
1531 | 3065,251,117937,3.0,9100
1532 | 3066,251,117937,4.0,30500
1533 | 3067,251,117937,5.0,E8889
1534 | 3068,252,190159,1.0,5712
1535 | 3069,252,190159,2.0,45620
1536 | 3070,252,190159,3.0,5780
1537 | 3071,252,190159,4.0,51881
1538 | 3072,252,190159,5.0,78559
1539 | 3073,252,190159,6.0,5722
1540 | 3074,252,190159,7.0,7895
1541 | 3075,252,190159,8.0,45341
1542 | 3076,252,190159,9.0,5990
1543 | 3077,252,190159,10.0,5849
1544 | 3078,252,190159,11.0,30500
1545 | 3079,252,190159,12.0,2867
1546 | 3080,252,190159,13.0,2761
1547 | 3081,252,190159,14.0,2875
1548 | 3082,252,190159,15.0,486
1549 | 3083,252,190159,16.0,5997
1550 | 3084,252,190159,17.0,8670
1551 | 3085,252,190159,18.0,2639
1552 | 3086,252,190159,19.0,2851
1553 | 3087,252,190159,20.0,5723
1554 | 3088,252,190159,21.0,34831
1555 | 3089,252,190159,22.0,2738
1556 | 3090,252,190159,23.0,5798
1557 | 3091,252,190159,24.0,0701
1558 | 3092,252,190159,25.0,3051
1559 | 3093,252,190159,26.0,V1301
1560 | 3094,252,190159,27.0,E8796
1561 | 3095,252,193470,1.0,5712
1562 | 3096,252,193470,2.0,45620
1563 | 3097,252,193470,3.0,7895
1564 | 3098,252,193470,4.0,2851
1565 | 3099,252,193470,5.0,3575
1566 | 3100,253,176189,1.0,4260
1567 | 3101,253,176189,2.0,486
1568 | 3102,253,176189,3.0,4240
1569 | 3103,253,176189,4.0,2449
1570 | 3104,253,176189,5.0,3310
1571 | 3105,253,176189,6.0,29410
1572 | 3106,253,176189,7.0,4168
1573 | 3107,253,176189,8.0,2720
1574 | 3108,253,176189,9.0,4019
1575 | 3109,255,112013,1.0,60000
1576 | 3110,255,112013,2.0,99811
1577 | 3111,255,112013,3.0,2851
1578 | 3112,255,112013,4.0,42789
1579 | 3113,256,108811,1.0,53240
1580 | 3114,256,108811,2.0,41071
1581 | 3115,256,108811,3.0,53560
1582 | 3116,256,108811,4.0,40390
1583 | 3117,256,108811,5.0,5859
1584 | 2140,175,159223,1.0,80604
1585 | 2141,175,159223,2.0,8052
1586 | 2142,175,159223,3.0,4139
1587 | 2143,175,159223,4.0,42731
1588 | 2144,175,159223,5.0,V422
1589 | 2145,175,159223,6.0,4280
1590 | 2146,175,159223,7.0,E8809
1591 | 2147,175,159223,8.0,80701
1592 | 2148,175,159223,9.0,4414
1593 | 2149,175,159223,10.0,4019
1594 | 2150,175,159223,11.0,V4501
1595 | 2151,175,159223,12.0,4439
1596 | 2152,175,159223,13.0,8730
1597 | 2153,175,159223,14.0,57420
1598 | 2154,175,176764,1.0,42831
1599 | 2155,175,176764,2.0,51881
1600 | 2156,175,176764,3.0,5070
1601 | 2157,175,176764,4.0,42731
1602 | 2158,175,176764,5.0,70707
1603 | 2159,175,176764,6.0,V422
1604 | 2160,175,176764,7.0,2738
1605 | 2161,175,176764,8.0,V5417
1606 | 2162,175,176764,9.0,V4581
1607 | 2163,176,135828,1.0,4280
1608 | 2164,176,135828,2.0,42731
1609 | 2165,176,135828,3.0,4251
1610 | 2166,176,135828,4.0,5997
1611 | 2167,176,135828,5.0,41401
1612 | 2168,176,135828,6.0,42781
1613 | 2169,176,135828,7.0,V4501
1614 | 2170,176,135828,8.0,V5861
1615 | 2171,176,135828,9.0,V1046
1616 | 2172,177,143120,1.0,4280
1617 | 2173,177,143120,2.0,51881
1618 | 2174,177,143120,3.0,5119
1619 | 2175,177,143120,4.0,496
1620 | 2176,177,143120,5.0,03811
1621 | 2177,177,143120,6.0,99672
1622 | 2178,177,143120,7.0,4240
1623 | 2179,177,143120,8.0,48241
1624 | 2180,177,143120,9.0,5070
1625 | 2181,177,196896,1.0,5789
1626 | 2182,177,196896,2.0,41091
1627 | 2183,177,196896,3.0,5990
1628 | 2184,177,196896,4.0,42731
1629 | 2185,177,196896,5.0,2761
1630 | 2186,177,196896,6.0,53010
1631 | 2187,177,196896,7.0,2720
1632 | 2188,177,196896,8.0,4019
1633 | 2189,177,196896,9.0,3320
1634 | 2190,178,196159,1.0,55321
1635 | 2191,178,196159,2.0,99812
1636 | 2192,178,196159,3.0,2851
1637 | 2193,178,196159,4.0,E8788
1638 | 2194,178,196159,5.0,5569
1639 | 2195,178,196159,6.0,42731
1640 | 2196,178,196159,7.0,3949
1641 | 2197,178,196159,8.0,4019
1642 | 2198,178,196159,9.0,V4501
1643 | 2199,179,161310,1.0,51881
1644 | 2200,179,161310,2.0,8600
1645 | 2201,179,161310,3.0,44489
1646 | 2202,179,161310,4.0,27651
1647 | 2203,179,161310,5.0,99881
1648 | 2204,179,161310,6.0,80700
1649 | 2205,179,161310,7.0,92400
1650 | 2206,179,161310,8.0,E9600
1651 | 2207,179,161310,9.0,514
1652 | 2208,179,161310,10.0,45829
1653 | 2209,180,155820,1.0,V3101
1654 | 2210,180,155820,2.0,76517
1655 | 2211,180,155820,3.0,76497
1656 | 2212,180,155820,4.0,V290
1657 | 2213,180,155820,5.0,7708
1658 | 2214,180,155820,6.0,76383
1659 | 2215,180,155820,7.0,75261
1660 | 2216,181,102631,1.0,4411
1661 | 2217,181,102631,2.0,4241
1662 | 2218,181,102631,3.0,9971
1663 | 2219,181,102631,4.0,4281
1664 | 2220,181,102631,5.0,44103
1665 | 2221,182,146080,1.0,2181
1666 | 2222,182,146080,2.0,2851
1667 | 2223,182,146080,3.0,2800
1668 | 2224,182,146080,4.0,24200
1669 | 2225,183,113341,1.0,85300
1670 | 2226,183,113341,2.0,95901
1671 | 2227,183,113341,3.0,E8120
1672 | 2228,184,137477,1.0,1919
1673 | 2229,184,137477,2.0,6826
1674 | 2230,184,137477,3.0,486
1675 | 2231,184,137477,4.0,2554
1676 | 2232,184,137477,5.0,25000
1677 | 2233,184,137477,6.0,3594
1678 | 2234,184,137477,7.0,E9320
1679 | 2235,184,137526,1.0,1916
1680 | 2236,184,137526,2.0,78039
1681 | 2237,184,137526,3.0,2554
1682 | 2238,184,137526,4.0,486
1683 | 2239,184,137526,5.0,7872
1684 | 2240,184,137526,6.0,34830
1685 | 2241,184,137526,7.0,2859
1686 | 2242,185,152056,1.0,V3000
1687 | 2243,185,152056,2.0,V053
1688 | 2244,185,152056,3.0,V290
1689 | 2245,186,164405,1.0,4560
1690 | 2246,186,164405,2.0,5070
1691 | 2247,186,164405,3.0,340
1692 | 2248,186,164405,4.0,51881
1693 | 2249,186,164405,5.0,57149
1694 | 2250,186,164405,6.0,27652
1695 | 2251,186,164405,7.0,4568
1696 | 2252,186,164405,8.0,4019
1697 | 2253,186,164405,9.0,25000
1698 | 2254,186,164405,10.0,2720
1699 | 2255,186,164405,11.0,4589
1700 | 2256,187,199724,1.0,0383
1701 | 2257,187,199724,2.0,9992
1702 | 2258,187,199724,3.0,41071
1703 | 2259,187,199724,4.0,496
1704 | 2260,187,199724,5.0,2762
1705 | 2261,187,199724,6.0,45182
1706 | 2262,187,199724,7.0,2768
1707 | 2263,187,199724,8.0,3310
1708 | 2264,187,199724,9.0,29410
1709 | 2265,188,123860,1.0,99682
1710 | 2266,188,123860,2.0,51881
1711 | 2267,188,123860,3.0,5849
1712 | 2268,188,123860,4.0,7907
1713 | 2269,188,123860,5.0,07044
1714 | 2270,188,123860,6.0,2762
1715 | 2271,188,123860,7.0,2763
1716 | 2272,188,123860,8.0,25541
1717 | 2273,188,123860,9.0,78959
1718 | 2274,188,123860,10.0,2760
1719 | 2275,188,123860,11.0,2768
1720 | 2276,188,123860,12.0,V4983
1721 | 2277,188,123860,13.0,5715
1722 | 2278,188,123860,14.0,5859
1723 | 2279,188,123860,15.0,25080
1724 | 2280,188,123860,16.0,45621
1725 | 2281,188,123860,17.0,04109
1726 | 2282,188,123860,18.0,V1007
1727 | 2283,188,123860,19.0,40390
1728 | 2284,188,123860,20.0,E8780
1729 | 2285,188,132401,1.0,3241
1730 | 2286,188,132401,2.0,51881
1731 | 2287,188,132401,3.0,486
1732 | 2288,188,132401,4.0,99931
1733 | 2289,188,132401,5.0,73008
1734 | 2290,188,132401,6.0,7907
1735 | 2291,188,132401,7.0,99682
1736 | 2292,188,132401,8.0,99811
1737 | 2293,188,132401,9.0,07044
1738 | 2294,188,132401,10.0,5856
1739 | 2295,188,132401,11.0,25541
1740 | 2296,188,132401,12.0,78959
1741 | 2297,188,132401,13.0,40391
1742 | 2298,188,132401,14.0,2761
1743 | 2299,188,132401,15.0,2762
1744 | 2300,188,132401,16.0,5789
1745 | 2301,188,132401,17.0,2867
1746 | 2302,188,132401,18.0,V4983
1747 | 2303,188,132401,19.0,2875
1748 | 2304,188,132401,20.0,5723
1749 | 2305,188,132401,21.0,72293
1750 | 2306,188,132401,22.0,04119
1751 | 2307,188,132401,23.0,33399
1752 | 2308,188,132401,24.0,E9390
1753 | 2309,188,132401,25.0,E8780
1754 | 2310,188,132401,26.0,25000
1755 | 2311,188,132401,27.0,53789
1756 | 2312,188,132401,28.0,V1007
1757 | 2313,188,132401,29.0,28521
1758 | 2314,188,132401,30.0,73730
1759 | 2315,188,150463,1.0,99811
1760 | 2316,188,150463,2.0,99682
1761 | 2317,188,150463,3.0,5715
1762 | 2318,188,150463,4.0,07054
1763 | 2319,188,150463,5.0,E8788
1764 | 2320,188,150463,6.0,E8780
1765 | 2321,188,150463,7.0,4019
1766 | 2322,188,160697,1.0,570
1767 | 2323,188,160697,2.0,07054
1768 | 2324,188,160697,3.0,1552
1769 | 2325,188,160697,4.0,5723
1770 | 2326,188,160697,5.0,78071
1771 | 2327,188,164735,1.0,4552
1772 | 2328,188,164735,2.0,7907
1773 | 2329,188,164735,3.0,99682
1774 | 2330,188,164735,4.0,99931
1775 | 2331,188,164735,5.0,5856
1776 | 2332,188,164735,6.0,99811
1777 | 2333,188,164735,7.0,99731
1778 | 2334,188,164735,8.0,2851
1779 | 2335,188,164735,9.0,25541
1780 | 2336,188,164735,10.0,2875
1781 | 2337,188,164735,11.0,5715
1782 | 2338,188,164735,12.0,V4983
1783 | 2339,188,164735,13.0,07054
1784 | 2340,188,164735,14.0,80702
1785 | 2341,188,164735,15.0,04104
1786 | 2342,188,164735,16.0,4555
1787 | 2343,188,164735,17.0,E8788
1788 | 2344,188,164735,18.0,E8844
1789 | 2345,188,164735,19.0,E8497
1790 | 2346,188,164735,20.0,28521
1791 | 2347,188,164735,21.0,E8780
1792 | 2348,188,164735,22.0,25000
1793 | 2349,188,164735,23.0,V5867
1794 | 2350,188,164735,24.0,53789
1795 | 1735,138,105764,2.0,4254
1796 | 1736,138,105764,3.0,4280
1797 | 1737,138,105764,4.0,V4502
1798 | 1738,138,105764,5.0,V5861
1799 | 1739,138,105764,6.0,V433
1800 | 1740,138,105764,7.0,412
1801 | 1325,109,173633,15.0,V1251
1802 | 837,105,161160,3.0,27651
1803 | 838,105,161160,4.0,7895
1804 | 839,105,161160,5.0,5119
1805 | 840,105,161160,6.0,4254
1806 | 841,105,161160,7.0,42731
1807 | 842,105,161160,8.0,5849
1808 | 843,105,161160,9.0,99591
1809 | 844,105,161160,10.0,42789
1810 | 845,105,161160,11.0,3334
1811 | 846,105,161160,12.0,2859
1812 | 847,105,161160,13.0,7906
1813 | 984,109,126055,1.0,4010
1814 | 985,109,126055,2.0,5856
1815 | 986,109,126055,3.0,58281
1816 | 987,109,126055,4.0,4239
1817 | 988,109,126055,5.0,78959
1818 | 989,109,126055,6.0,2762
1819 | 990,109,126055,7.0,2761
1820 | 991,109,126055,8.0,78909
1821 | 992,109,126055,9.0,78906
1822 | 993,109,126055,10.0,78701
1823 | 994,109,126055,11.0,78791
1824 | 995,109,126055,12.0,7100
1825 | 996,109,126055,13.0,25200
1826 | 997,109,126055,14.0,2859
1827 | 998,109,126055,15.0,2875
1828 | 999,109,126055,16.0,53081
1829 | 2953,245,105501,1.0,41071
1830 | 2954,245,105501,2.0,41401
1831 | 3118,256,108811,6.0,04186
1832 | 3119,256,108811,7.0,41401
1833 | 3120,256,108811,8.0,2724
1834 | 3121,256,108811,9.0,496
1835 | 3122,256,108811,10.0,42731
1836 | 3123,256,108811,11.0,V4581
1837 | 3259,273,158689,1.0,96501
1838 | 3260,273,158689,2.0,30421
1839 | 3261,273,158689,3.0,07070
1840 | 3262,273,158689,4.0,07030
1841 | 3263,273,158689,5.0,51881
1842 | 3264,273,158689,6.0,30401
1843 | 3265,273,158689,7.0,4280
1844 | 3266,273,158689,8.0,2920
1845 | 3267,273,158689,9.0,30431
1846 | 3268,273,158689,10.0,9708
1847 | 3269,273,158689,11.0,9696
1848 | 3281,275,129886,2.0,51881
1849 | 3282,275,129886,3.0,78552
1850 | 3283,275,129886,4.0,5849
1851 | 3284,275,129886,5.0,4538
1852 | 3285,275,129886,6.0,2869
1853 | 3286,275,129886,7.0,85221
1854 | 3287,275,129886,8.0,5990
1855 | 3288,275,129886,9.0,99592
1856 | 3289,275,129886,10.0,3320
1857 | 3290,275,129886,11.0,V667
1858 | 3291,275,129886,12.0,33182
1859 | 3292,275,129886,13.0,29410
1860 | 3293,275,129886,14.0,4019
1861 | 3294,275,129886,15.0,E8889
1862 | 3295,275,129886,16.0,V1582
1863 |
--------------------------------------------------------------------------------
/tests/icd_test/input/pop.csv:
--------------------------------------------------------------------------------
1 | ID
2 | 172335
3 | 173633
4 | 174105
5 | 109976
6 | 178393
7 | 114585
8 | 127203
9 | 140784
10 | 164853
11 | 147035
12 | 135738
13 | 188923
14 | 135750
15 | 195632
16 | 112906
17 | 134369
18 | 138376
19 | 172461
20 | 157348
21 | 176860
22 | 141647
23 | 180872
24 | 164174
25 | 113323
26 | 198214
27 | 171781
28 | 160192
29 | 191817
30 | 167887
31 | 192180
32 | 199634
33 | 184644
34 | 151583
35 | 105764
36 | 172056
37 | 143430
38 | 104518
39 | 155252
40 | 186474
41 | 108329
42 | 170467
43 | 190201
44 | 178596
45 | 111944
46 | 156857
47 | 194730
48 | 182637
49 | 112086
50 | 142768
51 | 100536
52 | 181542
53 | 115385
54 | 175016
55 | 110641
56 | 158569
57 | 120969
58 | 166401
59 | 112077
60 | 116630
61 | 190243
62 | 190659
63 | 123010
64 | 188646
65 | 121205
66 | 142807
67 | 160481
68 | 140037
69 | 183686
70 | 160891
71 | 170324
72 | 127870
73 | 188606
74 | 187373
75 | 153952
76 | 175533
77 | 195700
78 | 130744
79 | 133550
80 | 164025
81 | 128744
82 | 161160
83 | 163353
84 | 145834
85 | 185777
86 | 178980
87 | 107064
88 | 118037
89 | 159514
90 | 150750
91 | 184167
92 | 194540
93 | 112213
94 | 143045
95 | 103251
96 | 161087
97 | 194023
98 | 188822
99 | 109235
100 | 157681
101 | 109451
102 | 111970
103 | 165315
104 | 124321
105 | 152223
106 | 161859
107 | 129635
108 | 197661
109 | 134931
110 | 162569
111 | 104557
112 | 128652
113 | 175413
114 | 176176
115 | 115799
116 | 144319
117 | 166707
118 | 122659
119 | 165660
120 | 182104
121 | 188670
122 | 185910
123 | 106266
124 | 101757
125 | 119203
126 | 146828
127 | 181750
128 | 157907
129 | 144073
130 | 190539
131 | 132761
132 | 196010
133 | 190797
134 | 155385
135 | 138795
136 | 190665
137 | 181711
138 | 162774
139 | 177285
140 | 104130
141 | 198892
142 | 176332
143 | 189535
144 | 116009
145 | 195961
146 | 126055
147 | 128755
148 | 131345
149 | 131376
150 | 135923
151 | 136572
152 | 137510
153 | 139061
154 | 140167
155 | 147469
156 | 151240
157 | 155726
158 | 158943
159 | 158995
160 | 161950
161 | 164029
162 | 166018
163 | 170149
164 | 158689
165 | 130546
166 | 129886
167 | 105501
168 | 197430
169 | 189521
170 | 175353
171 | 116935
172 | 149546
173 | 158975
174 | 124271
175 | 117937
176 | 190159
177 | 193470
178 | 176189
179 | 112013
180 | 108811
181 | 159223
182 | 176764
183 | 135828
184 | 143120
185 | 196896
186 | 196159
187 | 161310
188 | 155820
189 | 102631
190 | 146080
191 | 113341
192 | 137477
193 | 137526
194 | 152056
195 | 164405
196 | 199724
197 | 123860
198 | 132401
199 | 150463
200 | 160697
201 | 164735
202 |
--------------------------------------------------------------------------------
/tests/icd_time_test/input/config-0.yaml:
--------------------------------------------------------------------------------
1 | hierarchical_sep: ':'
2 | hierarchical_levels: [0]
3 |
4 | value_types:
5 | ICD9_CODE: hierarchical_ICD9
6 |
--------------------------------------------------------------------------------
/tests/icd_time_test/input/config-1.yaml:
--------------------------------------------------------------------------------
1 | hierarchical_sep: ':'
2 | hierarchical_levels: [0,1]
3 |
--------------------------------------------------------------------------------
/tests/icd_time_test/input/config-2.yaml:
--------------------------------------------------------------------------------
1 | hierarchical_sep: ':'
2 | hierarchical_levels: [0,1,2]
3 |
--------------------------------------------------------------------------------
/tests/icd_time_test/input/pop.csv:
--------------------------------------------------------------------------------
1 | ID
2 | 172335
3 | 173633
4 | 174105
5 | 109976
6 | 178393
7 | 114585
8 | 127203
9 | 140784
10 | 164853
11 | 147035
12 | 135738
13 | 188923
14 | 135750
15 | 195632
16 | 112906
17 | 134369
18 | 138376
19 | 172461
20 | 157348
21 | 176860
22 | 141647
23 | 180872
24 | 164174
25 | 113323
26 | 198214
27 | 171781
28 | 160192
29 | 191817
30 | 167887
31 | 192180
32 | 199634
33 | 184644
34 | 151583
35 | 105764
36 | 172056
37 | 143430
38 | 104518
39 | 155252
40 | 186474
41 | 108329
42 | 170467
43 | 190201
44 | 178596
45 | 111944
46 | 156857
47 | 194730
48 | 182637
49 | 112086
50 | 142768
51 | 100536
52 | 181542
53 | 115385
54 | 175016
55 | 110641
56 | 158569
57 | 120969
58 | 166401
59 | 112077
60 | 116630
61 | 190243
62 | 190659
63 | 123010
64 | 188646
65 | 121205
66 | 142807
67 | 160481
68 | 140037
69 | 183686
70 | 160891
71 | 170324
72 | 127870
73 | 188606
74 | 187373
75 | 153952
76 | 175533
77 | 195700
78 | 130744
79 | 133550
80 | 164025
81 | 128744
82 | 161160
83 | 163353
84 | 145834
85 | 185777
86 | 178980
87 | 107064
88 | 118037
89 | 159514
90 | 150750
91 | 184167
92 | 194540
93 | 112213
94 | 143045
95 | 103251
96 | 161087
97 | 194023
98 | 188822
99 | 109235
100 | 157681
101 | 109451
102 | 111970
103 | 165315
104 | 124321
105 | 152223
106 | 161859
107 | 129635
108 | 197661
109 | 134931
110 | 162569
111 | 104557
112 | 128652
113 | 175413
114 | 176176
115 | 115799
116 | 144319
117 | 166707
118 | 122659
119 | 165660
120 | 182104
121 | 188670
122 | 185910
123 | 106266
124 | 101757
125 | 119203
126 | 146828
127 | 181750
128 | 157907
129 | 144073
130 | 190539
131 | 132761
132 | 196010
133 | 190797
134 | 155385
135 | 138795
136 | 190665
137 | 181711
138 | 162774
139 | 177285
140 | 104130
141 | 198892
142 | 176332
143 | 189535
144 | 116009
145 | 195961
146 | 126055
147 | 128755
148 | 131345
149 | 131376
150 | 135923
151 | 136572
152 | 137510
153 | 139061
154 | 140167
155 | 147469
156 | 151240
157 | 155726
158 | 158943
159 | 158995
160 | 161950
161 | 164029
162 | 166018
163 | 170149
164 | 158689
165 | 130546
166 | 129886
167 | 105501
168 | 197430
169 | 189521
170 | 175353
171 | 116935
172 | 149546
173 | 158975
174 | 124271
175 | 117937
176 | 190159
177 | 193470
178 | 176189
179 | 112013
180 | 108811
181 | 159223
182 | 176764
183 | 135828
184 | 143120
185 | 196896
186 | 196159
187 | 161310
188 | 155820
189 | 102631
190 | 146080
191 | 113341
192 | 137477
193 | 137526
194 | 152056
195 | 164405
196 | 199724
197 | 123860
198 | 132401
199 | 150463
200 | 160697
201 | 164735
202 |
--------------------------------------------------------------------------------
/tests/large_test/input/config-1-parallel.yaml:
--------------------------------------------------------------------------------
1 | discretize: yes
2 | use_ordinal_encoding: no
3 |
4 | parallel: yes
5 | n_jobs: 4
6 |
--------------------------------------------------------------------------------
/tests/large_test/input/config-2-parallel.yaml:
--------------------------------------------------------------------------------
1 | discretize: yes
2 | use_ordinal_encoding: yes
3 |
4 | parallel: yes
5 | n_jobs: 4
6 |
--------------------------------------------------------------------------------
/tests/large_test/input/config-3-parallel.yaml:
--------------------------------------------------------------------------------
1 | discretize: no
2 |
3 | parallel: yes
4 | n_jobs: 4
5 |
--------------------------------------------------------------------------------
/tests/large_test/input/pop.csv:
--------------------------------------------------------------------------------
1 | ID
2 | 200001
3 | 200010
4 | 200016
5 | 200033
6 | 200034
7 | 200035
8 | 200038
9 | 200040
10 | 200049
11 | 200050
12 | 200055
13 | 200061
14 | 200063
15 | 200072
16 | 200075
17 | 200079
18 | 200081
19 | 200087
20 | 200094
21 | 200098
22 | 200099
23 | 200104
24 | 200116
25 | 200126
26 | 200133
27 | 200135
28 | 200143
29 | 200150
30 | 200153
31 | 200163
32 | 200169
33 | 200172
34 | 200174
35 | 200191
36 | 200192
37 | 200200
38 | 200215
39 | 200217
40 | 200223
41 | 200224
42 | 200225
43 | 200227
44 | 200231
45 | 200234
46 | 200256
47 | 200262
48 | 200263
49 | 200265
50 | 200267
51 | 200277
52 | 200282
53 | 200284
54 | 200286
55 | 200292
56 | 200295
57 | 200311
58 | 200315
59 | 200330
60 | 200346
61 | 200349
62 | 200352
63 | 200357
64 | 200359
65 | 200368
66 | 200383
67 | 200392
68 | 200399
69 | 200402
70 | 200408
71 | 200416
72 | 200430
73 | 200439
74 | 200441
75 | 200445
76 | 200450
77 | 200451
78 | 200454
79 | 200457
80 | 200463
81 | 200481
82 | 200486
83 | 200487
84 | 200489
85 | 200509
86 | 200525
87 | 200529
88 | 200530
89 | 200550
90 | 200552
91 | 200553
92 | 200562
93 | 200563
94 | 200566
95 | 200571
96 | 200575
97 | 200579
98 | 200580
99 | 200583
100 | 200591
101 | 200599
102 | 200603
103 | 200606
104 | 200610
105 | 200612
106 | 200616
107 | 200621
108 | 200622
109 | 200625
110 | 200642
111 | 200659
112 | 200661
113 | 200662
114 | 200664
115 | 200665
116 | 200671
117 | 200683
118 | 200696
119 | 200697
120 | 200701
121 | 200708
122 | 200710
123 | 200711
124 | 200715
125 | 200723
126 | 200724
127 | 200729
128 | 200735
129 | 200737
130 | 200746
131 | 200747
132 | 200748
133 | 200749
134 | 200758
135 | 200759
136 | 200764
137 | 200773
138 | 200783
139 | 200788
140 | 200806
141 | 200813
142 | 200824
143 | 200825
144 | 200827
145 | 200855
146 | 200861
147 | 200873
148 | 200888
149 | 200897
150 | 200899
151 | 200908
152 | 200909
153 | 200913
154 | 200916
155 | 200932
156 | 200934
157 | 200935
158 | 200937
159 | 200940
160 | 200943
161 | 200944
162 | 200946
163 | 200966
164 | 200969
165 | 200972
166 | 200973
167 | 200975
168 | 200977
169 | 200983
170 | 200985
171 | 200988
172 | 200989
173 | 200993
174 | 200998
175 | 200999
176 | 201004
177 | 201018
178 | 201027
179 | 201029
180 | 201034
181 | 201039
182 | 201045
183 | 201046
184 | 201047
185 | 201053
186 | 201065
187 | 201073
188 | 201080
189 | 201081
190 | 201082
191 | 201083
192 | 201091
193 | 201092
194 | 201095
195 | 201104
196 | 201109
197 | 201110
198 | 201113
199 | 201124
200 | 201125
201 | 201128
202 |
--------------------------------------------------------------------------------
/tests/small_test/input/X_all.discretization.json:
--------------------------------------------------------------------------------
1 | {"DRUG_A_RATE_value": null, "DRUG_A_ROUTE_value": null, "LAB_X_value": null, "HR_delta_time": [0.0, 1.0, 2.0], "HR_value": [61.0, 69.2, 73.6, 76.2, 82.00000000000001, 90.0], "HR_min": [60.0, 68.4, 73.0, 75.0, 82.00000000000001, 90.0], "HR_max": [61.0, 69.2, 73.6, 76.2, 82.00000000000001, 90.0], "HR_mean": [60.333333333333336, 68.80000000000001, 73.6, 75.2, 82.00000000000001, 90.0]}
--------------------------------------------------------------------------------
/tests/small_test/input/config-1.yaml:
--------------------------------------------------------------------------------
1 | discretize: no
2 |
3 | parallel: no
4 | n_jobs: 1
5 |
6 | value_types:
7 | ROOM: Categorical
8 |
--------------------------------------------------------------------------------
/tests/small_test/input/config-2-bins.yaml:
--------------------------------------------------------------------------------
1 | discretize: yes
2 | use_ordinal_encoding: no
3 | S_discretization_bins: 'input/S_all.discretization.json'
4 | X_discretization_bins: 'input/X_all.discretization.json'
5 |
6 | parallel: no
7 | n_jobs: 1
8 |
9 | value_types:
10 | ROOM: Categorical
11 |
--------------------------------------------------------------------------------
/tests/small_test/input/config-2.yaml:
--------------------------------------------------------------------------------
1 | discretize: yes
2 | use_ordinal_encoding: no
3 |
4 | parallel: no
5 | n_jobs: 1
6 |
7 | value_types:
8 | ROOM: Categorical
9 |
--------------------------------------------------------------------------------
/tests/small_test/input/config-3.yaml:
--------------------------------------------------------------------------------
1 | discretize: yes
2 | use_ordinal_encoding: yes
3 |
4 | parallel: no
5 | n_jobs: 1
6 |
7 | value_types:
8 | ROOM: Categorical
9 |
--------------------------------------------------------------------------------
/tests/small_test/input/data.csv:
--------------------------------------------------------------------------------
1 | ID,t,variable_name,variable_value
2 | 1,NULL,AGE,50
3 | 2,NULL,AGE,33
4 | 3,NULL,AGE,40
5 | 1,NULL,SEX,M
6 | 2,NULL,SEX,M
7 | 3,NULL,SEX,F
8 | 1,NULL,ROOM,101
9 | 2,NULL,ROOM,102
10 | 3,NULL,ROOM,103
11 | 1,0.1,HR,70
12 | 1,0.9,HR,71
13 | 1,1.5,HR,72
14 | 1,1.9,HR,73
15 | 1,2.9,HR,74
16 | 1,3.5,HR,75
17 | 2,0.1,HR,60
18 | 2,0.8,HR,60
19 | 2,0.9,HR,61
20 | 2,2.1,HR,73
21 | 2,2.9,HR,78
22 | 2,3.5,HR,75
23 | 3,1.7,HR,90
24 | 4,0.7,HR,80
25 | 4,2.5,HR,62
26 | 4,3.9,HR,73
27 | 1,2.3,DRUG_A_RATE,48
28 | 2,3.4,DRUG_A_RATE,48
29 | 1,2.3,DRUG_A_ROUTE,Oral
30 | 2,3.4,DRUG_A_ROUTE,IV
31 | 3,1,DRUG_A_ROUTE,Bolus
32 | 1,2.3,LAB_X,<1
33 | 3,2.7,LAB_X,5
--------------------------------------------------------------------------------
/tests/small_test/input/pop.csv:
--------------------------------------------------------------------------------
1 | ID
2 | 3
3 | 4
4 | 1
5 | 2
6 |
--------------------------------------------------------------------------------
/tests/small_test/input/s_all.discretization.json:
--------------------------------------------------------------------------------
1 | {"AGE_value": [33.0, 35.8, 38.6, 42.0, 46.0, 50.0], "ROOM_value": null, "SEX_value": null}
--------------------------------------------------------------------------------
/tests/small_test/reference-1/df_S.csv:
--------------------------------------------------------------------------------
1 | ID,AGE_value,ROOM_value:_101,ROOM_value:_102,ROOM_value:_103,SEX_value:F,SEX_value:M
2 | 1,50.0,1.0,0.0,0.0,0.0,1.0
3 | 2,33.0,0.0,1.0,0.0,0.0,1.0
4 | 3,40.0,0.0,0.0,1.0,1.0,0.0
5 | 4,41.0,0.0,0.0,0.0,0.0,0.0
6 |
--------------------------------------------------------------------------------
/tests/small_test/reference-1/df_X.csv:
--------------------------------------------------------------------------------
1 | ID,t_range,HR_mask,DRUG_A_RATE_value,DRUG_A_ROUTE_value:Bolus,DRUG_A_ROUTE_value:IV,DRUG_A_ROUTE_value:Oral,LAB_X_value,HR_delta_time,HR_value,HR_min,HR_max,HR_mean,LAB_X_value_str:<1
2 | 1,"[0.0, 1.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,71.0,70.0,71.0,70.5,0.0
3 | 1,"[1.0, 2.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,73.0,72.0,73.0,72.5,0.0
4 | 1,"[2.0, 3.0)",1.0,48.0,0.0,0.0,1.0,5.0,0.0,74.0,74.0,74.0,74.0,1.0
5 | 1,"[3.0, 4.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,75.0,75.0,75.0,75.0,0.0
6 | 2,"[0.0, 1.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,61.0,60.0,61.0,60.333333333333336,0.0
7 | 2,"[1.0, 2.0)",0.0,48.0,0.0,0.0,0.0,5.0,1.0,61.0,61.0,61.0,61.0,0.0
8 | 2,"[2.0, 3.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,78.0,73.0,78.0,75.5,0.0
9 | 2,"[3.0, 4.0)",1.0,48.0,0.0,1.0,0.0,5.0,0.0,75.0,75.0,75.0,75.0,0.0
10 | 3,"[0.0, 1.0)",0.0,48.0,0.0,0.0,0.0,5.0,0.0,75.53333333333333,75.0,75.53333333333333,75.25555555555556,0.0
11 | 3,"[1.0, 2.0)",1.0,48.0,1.0,0.0,0.0,5.0,0.0,90.0,90.0,90.0,90.0,0.0
12 | 3,"[2.0, 3.0)",0.0,48.0,0.0,0.0,0.0,5.0,1.0,90.0,90.0,90.0,90.0,0.0
13 | 3,"[3.0, 4.0)",0.0,48.0,0.0,0.0,0.0,5.0,2.0,90.0,90.0,90.0,90.0,0.0
14 | 4,"[0.0, 1.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,80.0,80.0,80.0,80.0,0.0
15 | 4,"[1.0, 2.0)",0.0,48.0,0.0,0.0,0.0,5.0,1.0,80.0,80.0,80.0,80.0,0.0
16 | 4,"[2.0, 3.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,62.0,62.0,62.0,62.0,0.0
17 | 4,"[3.0, 4.0)",1.0,48.0,0.0,0.0,0.0,5.0,0.0,73.0,73.0,73.0,73.0,0.0
18 |
--------------------------------------------------------------------------------