In [1]:
import lightgbm as lgb
from sklearn import *
import pandas as pd
import numpy as np
pd.set_option('max_columns', None)

path = '../../Data/'
#from top scoring kernels and blends - for testing only
# sub1 = pd.read_csv('../input/best-ensemble-score-made-available-0-68/SHAZ13_ENS_LEAKS.csv')
# sub2 = pd.read_csv('../input/best-ensemble-score-made-available-0-67/SHAZ13_ENS_LEAKS.csv')

#standard
train = pd.read_csv(path + '/train.csv', index_col = 'ID')
# test = pd.read_csv(path + '/test.csv')
# print(train.shape, test.shape)


/usr/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  return f(*args, **kwds)
/usr/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  return f(*args, **kwds)
/usr/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  return f(*args, **kwds)
/usr/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  return f(*args, **kwds)
/usr/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  return f(*args, **kwds)
/usr/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: numpy.dtype size changed, may indicate binary incompatibility. Expected 96, got 88
  return f(*args, **kwds)
/usr/local/lib/python3.5/dist-packages/sklearn/cross_validation.py:41: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.
  "This module will be removed in 0.20.", DeprecationWarning)
/usr/local/lib/python3.5/dist-packages/sklearn/ensemble/weight_boosting.py:29: DeprecationWarning: numpy.core.umath_tests is an internal NumPy module and should not be imported. It will be removed in a future NumPy release.
  from numpy.core.umath_tests import inner1d
/usr/local/lib/python3.5/dist-packages/sklearn/grid_search.py:42: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. This module will be removed in 0.20.
  DeprecationWarning)
/usr/local/lib/python3.5/dist-packages/sklearn/learning_curve.py:22: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the functions are moved. This module will be removed in 0.20
  DeprecationWarning)

In [7]:
from leak_rows import *
from leak_cols import *
from lag_list import *


def row_equal(df, r1, r2, lag):
#     if lag >= df.shape[1]:
#         return False
    return np.all(df.loc[r1].iloc[:-(lag)].values == df.loc[r2].iloc[lag:].values)
        
def check_leak_cols(df, leak_cols, leak_rows):
    # If df.shape[1] >= 3, we must have equal number between tow rows
    # Else if df.shape[1] == 2, we must have at least one row pair has equal number
#     dim = len(leak_cols)
#     has_equal_row_pair = False
    for i in range(len(leak_rows) - 1):
        r = leak_rows[i]
        r_next = leak_rows[i + 1]
        if not row_equal(df[leak_cols], r, r_next, LAG_LIST[i]):
            return False
#             print ('Leak cols are wrong: ', leak_cols)
#             if dim >= 3:
#                 return False
#         else:
#             has_equal_row_pair = True
    return True

def find_leak_col_use_row_check(leak_cols, candidate_cols, leak_rows, all_leak_cols_set, head_tail_flag):
#     if len(leak_cols) == 1:
#         ## If need cold start, we should find max equal cnt columns
#         leak_cols = find_leak_col(leak_cols, candidate_cols, leak_rows)
#     if len(leak_cols) == 1:
#         return leak_cols
    valid_df = train.loc[leak_rows]
    head_match = False
    tail_match = False
    for col in candidate_cols:
        leak_cols_set = set(leak_cols)
        if col in leak_cols_set or col in all_leak_cols_set:
            continue
        
        if head_tail_flag == 0 or head_tail_flag == 2:
            new_leak_cols = [col] + leak_cols
            if check_leak_cols(valid_df, new_leak_cols[:3], leak_rows):
                head_match = True
                leak_cols = new_leak_cols
                print ('found head: ', col)
        
        if head_tail_flag == 1 or head_tail_flag == 2:
            new_leak_cols = leak_cols + [col]
            if check_leak_cols(valid_df, new_leak_cols[-3:], leak_rows):
                tail_match = True
                leak_cols = new_leak_cols
                print ('found tail: ', col)
    return leak_cols, head_match, tail_match

In [4]:
# for leak_cols in LEAK_LIST:
#     if not (check_leak_cols(train, leak_cols, LEAK_ROWS)):
#         print (leak_cols)
all_leak_cols = [col for cols in LEAK_LIST for col in cols]
len(set(all_leak_cols))


Out[4]:
2600

In [10]:
local_leak_list = []
i = 0
all_leak_cols = ["target"] + [col for cols in LEAK_LIST for col in cols]
all_leak_cols_set = set(all_leak_cols)

candidate_cols = []
for col in train.columns:
    if col not in all_leak_cols_set:
        candidate_cols.append(col)
print ('candidate_cols number: ', len(candidate_cols))
# head_dict = {}
# tail_dict = {}
uniq_vals = train.loc[LEAK_ROWS[0], candidate_cols].unique()
eq_cnt_dict = {}
for val in uniq_vals:
    if val == 0:
        cnt = train.loc[LEAK_ROWS, candidate_cols].apply(lambda x: len(x[x == val]))
        eq_cnt_dict[val] = cnt[cnt != 0].shape
val_array = pd.Series(eq_cnt_dict).sort_values(ascending = False).index.values


candidate_cols number:  2391

In [12]:
for val in val_array:
    if val == 0:
        eq_cnt = train.loc[LEAK_ROWS, candidate_cols].apply(lambda x: len(x[x == val]))
        eq_cnt_nz_len = len(eq_cnt[eq_cnt != 0])
        if True: # :
            print (val, eq_cnt.max(), eq_cnt_nz_len)
            leak_cols_candidate = eq_cnt[eq_cnt != 0].sort_values(ascending = True).index.values
            for col in leak_cols_candidate:
                if col in all_leak_cols_set:
                    continue
                print ('start col: ', col)
                local_leak_cols = [col]
                previous_leak_len = len(local_leak_cols)
                # search from columns from fill cnt
                while True:
                    local_leak_cols, _, _ = find_leak_col_use_row_check(local_leak_cols, leak_cols_candidate, 
                                                                  LEAK_ROWS, all_leak_cols_set, 2)
                    if len(local_leak_cols) == previous_leak_len:
                        print ('search ', len(local_leak_cols), ' cols from columns from fill cnt')
                        break
                    previous_leak_len = len(local_leak_cols)
                # pure search
                previous_leak_len = len(local_leak_cols)
                
                head_tail_flag = 2
                while True:
                    local_leak_cols, head_match, tail_match = find_leak_col_use_row_check(local_leak_cols, candidate_cols, 
                                                                  LEAK_ROWS, all_leak_cols_set, head_tail_flag)
                    if head_match and tail_match:
                        head_tail_flag = 2
                    elif head_match:
                        head_tail_flag = 0
                    elif tail_match:
                        head_tail_flag = 1
                    else:
                        break
                local_leak_list.append((local_leak_cols, val))
                all_leak_cols += local_leak_cols
                all_leak_cols_set = set(all_leak_cols)
                print ('Leak cols: ', local_leak_cols)
    if i % 10 == 0:
        print ('process vals: ', i)
    i += 1
import pickle
with open(path + 'leak_cols_val_0.pickle', 'wb+') as handle:
    pickle.dump(local_leak_list, handle, protocol=pickle.HIGHEST_PROTOCOL)
# train.loc[valid_index, leak_cols]
# valid_df[leak_col]
# train.loc[valid_index, eq_cnt[eq_cnt != 0].sort_values().index]
# eq_cnt[eq_cnt != 0].sort_values()
# eq_cnt[eq_cnt != 0].sort_values()
# find_leak_col(eq_cnt[eq_cnt != 0].sort_values())
# train.loc[valid_rows.iloc[0].name, other_cols][train.loc[valid_rows.iloc[0].name, other_cols] != 0].unique


0.0 83 2391
start col:  50a900e26
found tail:  ca4eab5c5
found head:  4d9538272
found tail:  8c564ae48
found head:  f8de3e357
found head:  4bf2b8e7c
found tail:  16a9296fd
found head:  0892b3439
found tail:  9bed59a71
found head:  376474413
found head:  75d240f7b
found tail:  683d89bf1
found tail:  736fce873
found tail:  60b76e463
found tail:  6a3b5a968
found tail:  890163e1a
found tail:  2c136905e
found tail:  08d203407
found tail:  08af3dd45
found tail:  fbe52b1b2
found tail:  e2b4d4ef7
found tail:  78c239acf
found tail:  3da2882fd
found tail:  10596ddee
found tail:  2135da74a
found tail:  3e0e55648
found tail:  acee6ff41
found tail:  93c1eecb4
found tail:  b6e38a517
found tail:  e9c7ccc05
found tail:  2bf7dc91d
found tail:  06b19b6c4
found tail:  b0e45a9f7
found tail:  fd206ec4d
found tail:  c63090352
found tail:  df1ed6b50
found tail:  28dc3cc44
found tail:  7b1ddbabf
found tail:  5a88e3d89
found tail:  f2520b601
search  40  cols from columns from fill cnt
Leak cols:  ['75d240f7b', '376474413', '0892b3439', '4bf2b8e7c', 'f8de3e357', '4d9538272', '50a900e26', 'ca4eab5c5', '8c564ae48', '16a9296fd', '9bed59a71', '683d89bf1', '736fce873', '60b76e463', '6a3b5a968', '890163e1a', '2c136905e', '08d203407', '08af3dd45', 'fbe52b1b2', 'e2b4d4ef7', '78c239acf', '3da2882fd', '10596ddee', '2135da74a', '3e0e55648', 'acee6ff41', '93c1eecb4', 'b6e38a517', 'e9c7ccc05', '2bf7dc91d', '06b19b6c4', 'b0e45a9f7', 'fd206ec4d', 'c63090352', 'df1ed6b50', '28dc3cc44', '7b1ddbabf', '5a88e3d89', 'f2520b601']
start col:  bbfff6091
found tail:  c08bf12d7
found tail:  555e960e5
found tail:  d00757989
found tail:  7f41309db
found tail:  cdd16fdd1
found tail:  ee39e4ce0
found tail:  2684a37d2
found tail:  1d871bff1
found tail:  8f21c5b89
found tail:  7961b255d
found tail:  da2d942d5
found tail:  044c7e993
found tail:  7ec8cff44
found tail:  be5c8f449
found tail:  a72e0bf30
found tail:  b58127585
found tail:  10b318bda
found tail:  4af7c76b9
found tail:  675d9ac8b
found tail:  d817823ff
found tail:  8c94e6a4b
found tail:  9e45b15cd
found tail:  63f968fa6
found tail:  6eefca12e
found tail:  ea2bef361
found tail:  92b047b55
found tail:  06f6a7287
found tail:  2ca23426b
found tail:  7a27eda46
found tail:  3908749a1
found tail:  61f7bc574
found tail:  39abf0d03
found tail:  b33b29b75
found tail:  81e4c7077
found tail:  073470b04
found tail:  0929d922b
found tail:  35c5fe0ff
found tail:  205b0cfef
found tail:  a38ea1ca7
search  40  cols from columns from fill cnt
Leak cols:  ['bbfff6091', 'c08bf12d7', '555e960e5', 'd00757989', '7f41309db', 'cdd16fdd1', 'ee39e4ce0', '2684a37d2', '1d871bff1', '8f21c5b89', '7961b255d', 'da2d942d5', '044c7e993', '7ec8cff44', 'be5c8f449', 'a72e0bf30', 'b58127585', '10b318bda', '4af7c76b9', '675d9ac8b', 'd817823ff', '8c94e6a4b', '9e45b15cd', '63f968fa6', '6eefca12e', 'ea2bef361', '92b047b55', '06f6a7287', '2ca23426b', '7a27eda46', '3908749a1', '61f7bc574', '39abf0d03', 'b33b29b75', '81e4c7077', '073470b04', '0929d922b', '35c5fe0ff', '205b0cfef', 'a38ea1ca7']
start col:  4d294d2cf
found head:  a924cf47a
found tail:  1f0a4e1f9
found head:  a6fd11a84
found tail:  e369704a1
found tail:  daedcafad
found tail:  51ee03895
found tail:  7bddf55e1
found tail:  91fd68481
found tail:  0809c8241
found tail:  bea06dade
found tail:  8c922fa9a
found tail:  00b309c64
found tail:  b261b0abe
found tail:  afa9b3198
found tail:  0c49d75af
found tail:  e506de1e1
found tail:  090fba3ad
found tail:  b67c7783e
found tail:  0badd2fa2
found tail:  c333aa06c
found tail:  f98d7054f
found tail:  4d1f9e4d7
found tail:  903749e8a
found tail:  6ba70f5f8
found tail:  6cd2424c4
found tail:  9f5a3b3c0
found tail:  864b62f7d
found tail:  4411325ed
found tail:  e5587ec32
found tail:  0761cbb48
found tail:  a47445036
found tail:  ce408348f
found tail:  c85a3dcc4
found tail:  c47fe5e84
found tail:  284d07c28
found tail:  ae3aa1abd
found tail:  8706aa459
found tail:  a1f73b0d3
found tail:  693972ceb
search  40  cols from columns from fill cnt
Leak cols:  ['a6fd11a84', 'a924cf47a', '4d294d2cf', '1f0a4e1f9', 'e369704a1', 'daedcafad', '51ee03895', '7bddf55e1', '91fd68481', '0809c8241', 'bea06dade', '8c922fa9a', '00b309c64', 'b261b0abe', 'afa9b3198', '0c49d75af', 'e506de1e1', '090fba3ad', 'b67c7783e', '0badd2fa2', 'c333aa06c', 'f98d7054f', '4d1f9e4d7', '903749e8a', '6ba70f5f8', '6cd2424c4', '9f5a3b3c0', '864b62f7d', '4411325ed', 'e5587ec32', '0761cbb48', 'a47445036', 'ce408348f', 'c85a3dcc4', 'c47fe5e84', '284d07c28', 'ae3aa1abd', '8706aa459', 'a1f73b0d3', '693972ceb']
start col:  29c64fa08
found head:  1ac1a10d6
found tail:  82e9efdd8
found head:  24fef0850
found tail:  befe0f9c4
found tail:  4f0d3819a
found tail:  849c542c3
found head:  55e30b08f
found tail:  4f325b517
found tail:  57e01acca
found tail:  54481feaa
found tail:  3ebf86dd5
found tail:  849c464e7
found tail:  248db7ce7
found tail:  82c164590
found tail:  7fd7c9eae
found tail:  9fe78f046
found tail:  e92c373a6
found tail:  abace6b29
found tail:  d6be59f6a
found tail:  2d1dd55ed
found tail:  9a9b4a012
found tail:  0ae364eb9
found tail:  db1b70fc8
found tail:  916ac9986
found tail:  545d84e13
found tail:  049e4daae
found tail:  95837bbfb
found tail:  9b8eff1d7
found tail:  17a6e2978
found tail:  b7ae337fe
found tail:  256f1449f
found tail:  89a26cda9
found tail:  1930cefda
found tail:  42451bcbf
found tail:  722a0187a
found tail:  5a86cabd0
found tail:  e14727834
found tail:  21a3176c5
found tail:  16bf8b4ec
search  40  cols from columns from fill cnt
Leak cols:  ['55e30b08f', '24fef0850', '1ac1a10d6', '29c64fa08', '82e9efdd8', 'befe0f9c4', '4f0d3819a', '849c542c3', '4f325b517', '57e01acca', '54481feaa', '3ebf86dd5', '849c464e7', '248db7ce7', '82c164590', '7fd7c9eae', '9fe78f046', 'e92c373a6', 'abace6b29', 'd6be59f6a', '2d1dd55ed', '9a9b4a012', '0ae364eb9', 'db1b70fc8', '916ac9986', '545d84e13', '049e4daae', '95837bbfb', '9b8eff1d7', '17a6e2978', 'b7ae337fe', '256f1449f', '89a26cda9', '1930cefda', '42451bcbf', '722a0187a', '5a86cabd0', 'e14727834', '21a3176c5', '16bf8b4ec']
start col:  437ff8730
found head:  b80f3eab2
found head:  c8a66413e
found tail:  e289bbcc3
found head:  acc744336
found tail:  dd48ed481
found tail:  90db65912
found head:  9d2835f75
found head:  9539d34c8
found tail:  9eab942f8
found tail:  753e0a307
found tail:  5e1085022
found head:  643ef6977
found head:  133e6f674
found tail:  a4529b4ef
found tail:  c9c6b51aa
found tail:  1346d1df0
found head:  7fd35c77a
found tail:  0a9735aba
found tail:  64226e620
found head:  df03d1653
found tail:  de5e74ae7
found tail:  d00f7d768
found tail:  b4e4a184a
found tail:  ef139d7ac
found tail:  a6f5de07f
found tail:  cb9333bd7
found tail:  4dfa4bc61
found tail:  5089bf842
found tail:  6f44294b2
found tail:  ae1bd05ee
found tail:  f807767c5
found tail:  067bcb836
found tail:  d1cf68555
found tail:  e5499c39d
found tail:  0bb06f4b5
found tail:  b6336ff10
found tail:  a84bafe34
found tail:  3e37bffde
found tail:  093b92da5
search  40  cols from columns from fill cnt
Leak cols:  ['df03d1653', '7fd35c77a', '133e6f674', '643ef6977', '9539d34c8', '9d2835f75', 'acc744336', 'c8a66413e', 'b80f3eab2', '437ff8730', 'e289bbcc3', 'dd48ed481', '90db65912', '9eab942f8', '753e0a307', '5e1085022', 'a4529b4ef', 'c9c6b51aa', '1346d1df0', '0a9735aba', '64226e620', 'de5e74ae7', 'd00f7d768', 'b4e4a184a', 'ef139d7ac', 'a6f5de07f', 'cb9333bd7', '4dfa4bc61', '5089bf842', '6f44294b2', 'ae1bd05ee', 'f807767c5', '067bcb836', 'd1cf68555', 'e5499c39d', '0bb06f4b5', 'b6336ff10', 'a84bafe34', '3e37bffde', '093b92da5']
start col:  8677d6620
found tail:  75b846f12
found tail:  3a01b4018
found tail:  23d6be31e
found tail:  52695ed4a
found tail:  ba9f3a42c
found tail:  135091a07
found tail:  19537e282
found tail:  d5d4f936e
found tail:  578a07608
found tail:  63df94487
found tail:  169875559
found tail:  b6ae5f5ca
found tail:  315b44e13
found tail:  5150b1a17
found tail:  c8c6fe1a0
found tail:  d918835ca
found tail:  8768af50f
found tail:  2cc11689d
found tail:  51c9aee7e
found tail:  188a6e279
found tail:  649d727e1
found tail:  a8e878643
found tail:  8d4f4c571
found tail:  f990bddac
found tail:  5719bbfc3
found tail:  12d3a67b0
found tail:  5f76b9c2f
found tail:  c33a4095a
found tail:  aac0c81ba
found tail:  2ba3b18ee
found tail:  be90775f4
found tail:  651124842
found tail:  51d5e73a8
found tail:  8016f08af
found tail:  f80259ab3
found tail:  3685524f4
found tail:  532740e5d
found tail:  30347e683
found tail:  806dfdd51
search  40  cols from columns from fill cnt
Leak cols:  ['8677d6620', '75b846f12', '3a01b4018', '23d6be31e', '52695ed4a', 'ba9f3a42c', '135091a07', '19537e282', 'd5d4f936e', '578a07608', '63df94487', '169875559', 'b6ae5f5ca', '315b44e13', '5150b1a17', 'c8c6fe1a0', 'd918835ca', '8768af50f', '2cc11689d', '51c9aee7e', '188a6e279', '649d727e1', 'a8e878643', '8d4f4c571', 'f990bddac', '5719bbfc3', '12d3a67b0', '5f76b9c2f', 'c33a4095a', 'aac0c81ba', '2ba3b18ee', 'be90775f4', '651124842', '51d5e73a8', '8016f08af', 'f80259ab3', '3685524f4', '532740e5d', '30347e683', '806dfdd51']
start col:  e3fd6fa46
found tail:  53bba91b7
found head:  932b61d77
found head:  8ba7eacbb
found tail:  d24a55c98
found head:  7bde71e2f
found tail:  93f686d09
found head:  1b20c5c27
found head:  d40eb2705
found head:  2123a2089
found tail:  fc5690e51
found head:  025172af5
found tail:  0ac076350
found head:  67ddf8bdd
found tail:  18e3e1563
found head:  776e9945e
found head:  0019109c4
found head:  acd43607d
found tail:  d3ff41260
found tail:  c40750aed
found head:  8a158bbb8
found tail:  f2c0fa7cf
found head:  eea698cf2
found head:  30d424f24
found head:  bb6a5b6e2
found tail:  3c9f7809d
found tail:  c65ab9cb9
found tail:  6e738ec87
found tail:  3475c6ad7
found tail:  5964f1856
found tail:  a6bf610b3
found tail:  7f9f72202
found tail:  f57ebfed7
found tail:  3dd4cc7a8
found tail:  8ec06d490
found tail:  99fc30923
found tail:  71b203550
found tail:  09bf8b0cf
found tail:  5c1f412ce
found tail:  236910072
search  40  cols from columns from fill cnt
Leak cols:  ['bb6a5b6e2', '30d424f24', 'eea698cf2', '8a158bbb8', 'acd43607d', '0019109c4', '776e9945e', '67ddf8bdd', '025172af5', '2123a2089', 'd40eb2705', '1b20c5c27', '7bde71e2f', '8ba7eacbb', '932b61d77', 'e3fd6fa46', '53bba91b7', 'd24a55c98', '93f686d09', 'fc5690e51', '0ac076350', '18e3e1563', 'd3ff41260', 'c40750aed', 'f2c0fa7cf', '3c9f7809d', 'c65ab9cb9', '6e738ec87', '3475c6ad7', '5964f1856', 'a6bf610b3', '7f9f72202', 'f57ebfed7', '3dd4cc7a8', '8ec06d490', '99fc30923', '71b203550', '09bf8b0cf', '5c1f412ce', '236910072']
start col:  015c3e354
found tail:  26419fa97
found tail:  0b9a18ebf
found head:  425c08bf3
found tail:  bbd7e6282
found head:  b93c33953
found tail:  6fec5a793
found tail:  e4eac6fc5
found head:  dbf75ea9f
found head:  d08c4204c
found head:  d5de50af2
found tail:  99ea04b86
found head:  1cec80910
found head:  32313055b
found tail:  24292d615
found tail:  72ad5471c
found tail:  2f489369f
found tail:  35d9497eb
found tail:  42d321127
found tail:  48aa6d627
found tail:  94516b63e
found tail:  55d7eb6d2
found tail:  8dbd95b8d
found tail:  1d2df346e
found tail:  181e91b1c
found tail:  4a29bc92b
found tail:  0f14ab429
found tail:  22b3a9853
found tail:  defcc2c50
found tail:  6a9e2b09d
found tail:  42b795e64
found tail:  b65627fab
found tail:  7af2b8f44
found tail:  1ce5f7bde
found tail:  dd2fc85d7
found tail:  013127235
found tail:  916d17652
found tail:  a697e9248
found tail:  24addf864
found tail:  a63aaf7cc
search  40  cols from columns from fill cnt
Leak cols:  ['32313055b', '1cec80910', 'd5de50af2', 'd08c4204c', 'dbf75ea9f', 'b93c33953', '425c08bf3', '015c3e354', '26419fa97', '0b9a18ebf', 'bbd7e6282', '6fec5a793', 'e4eac6fc5', '99ea04b86', '24292d615', '72ad5471c', '2f489369f', '35d9497eb', '42d321127', '48aa6d627', '94516b63e', '55d7eb6d2', '8dbd95b8d', '1d2df346e', '181e91b1c', '4a29bc92b', '0f14ab429', '22b3a9853', 'defcc2c50', '6a9e2b09d', '42b795e64', 'b65627fab', '7af2b8f44', '1ce5f7bde', 'dd2fc85d7', '013127235', '916d17652', 'a697e9248', '24addf864', 'a63aaf7cc']
start col:  9ecfbd198
found head:  87ee785b5
found tail:  49ebf51c6
found tail:  5d4b3b236
found tail:  9f62e4134
found tail:  5f7942448
found tail:  29d7f1ebd
found tail:  c8306d5b6
found tail:  6cb207ac9
found tail:  ce3e5685e
found tail:  175795887
found tail:  27859b383
found tail:  f3ee34336
found tail:  f402f59ff
found tail:  813536f90
found tail:  b4c2843b9
found tail:  3fe84d157
found tail:  94e568b42
found tail:  0704e7155
found tail:  f357f5ffb
found tail:  fd7c50a10
found tail:  8c2f8a59c
found tail:  c224ec4d9
found tail:  83b151006
found tail:  c23810d14
found tail:  b192dacc4
found tail:  c4d38135f
found tail:  e86d346f8
found tail:  f8b0c7834
found tail:  5c78454d2
found tail:  ca67f1baa
found tail:  c61dd62d9
found tail:  e66856e20
found tail:  3bfa8340b
found tail:  df443d0ce
found tail:  9be6f99a8
found tail:  2e278fe94
found tail:  6e4f74c35
found tail:  5cf6f9d23
found tail:  039b8bbc6
search  40  cols from columns from fill cnt
Leak cols:  ['87ee785b5', '9ecfbd198', '49ebf51c6', '5d4b3b236', '9f62e4134', '5f7942448', '29d7f1ebd', 'c8306d5b6', '6cb207ac9', 'ce3e5685e', '175795887', '27859b383', 'f3ee34336', 'f402f59ff', '813536f90', 'b4c2843b9', '3fe84d157', '94e568b42', '0704e7155', 'f357f5ffb', 'fd7c50a10', '8c2f8a59c', 'c224ec4d9', '83b151006', 'c23810d14', 'b192dacc4', 'c4d38135f', 'e86d346f8', 'f8b0c7834', '5c78454d2', 'ca67f1baa', 'c61dd62d9', 'e66856e20', '3bfa8340b', 'df443d0ce', '9be6f99a8', '2e278fe94', '6e4f74c35', '5cf6f9d23', '039b8bbc6']
start col:  5cfc625f1
found tail:  8984e4066
found head:  9ddd6d137
found tail:  0ccd6454a
found tail:  9397535c7
found tail:  de7063efa
found tail:  74f3ac6af
found tail:  6bee3733e
found tail:  20e2c484e
found tail:  5adfe7419
found tail:  03a4ccd7c
found tail:  ecbd077d0
found tail:  851697562
found tail:  60cb16e88
found tail:  73a8a4d75
found tail:  4c48708d8
found tail:  ea72c62a1
found tail:  bbd16b7a0
found tail:  3fa6c395f
found tail:  dba14a5d4
found tail:  5d60b9ba7
found tail:  7f9e0d947
found tail:  a636266f3
found tail:  6931ed626
found tail:  76e9423c3
found tail:  6723b1708
found tail:  d80abf8bc
found tail:  7194699cd
found tail:  e3846e931
found tail:  b66bf9d44
found tail:  c436c7e73
found tail:  b74ef4294
found tail:  a2a1975d6
found tail:  1c4157dfd
found tail:  e32ad270b
found tail:  c30399758
found tail:  d45fd5508
found tail:  e97fa47e4
found tail:  02827212f
found tail:  6f53aee73
search  40  cols from columns from fill cnt
Leak cols:  ['9ddd6d137', '5cfc625f1', '8984e4066', '0ccd6454a', '9397535c7', 'de7063efa', '74f3ac6af', '6bee3733e', '20e2c484e', '5adfe7419', '03a4ccd7c', 'ecbd077d0', '851697562', '60cb16e88', '73a8a4d75', '4c48708d8', 'ea72c62a1', 'bbd16b7a0', '3fa6c395f', 'dba14a5d4', '5d60b9ba7', '7f9e0d947', 'a636266f3', '6931ed626', '76e9423c3', '6723b1708', 'd80abf8bc', '7194699cd', 'e3846e931', 'b66bf9d44', 'c436c7e73', 'b74ef4294', 'a2a1975d6', '1c4157dfd', 'e32ad270b', 'c30399758', 'd45fd5508', 'e97fa47e4', '02827212f', '6f53aee73']
start col:  939ae6e4a
found tail:  1e783ae1e
found head:  c90b0b8a7
found tail:  ebaaead05
found tail:  7417a6759
found head:  7eacd712f
found head:  43d99f930
found tail:  260ff750c
found head:  027e67ec7
found tail:  ee99f8a68
found head:  7ba2e35d6
found tail:  78144b68c
found tail:  ce47f8cae
found head:  c83ce87d0
found tail:  fb59499f9
found head:  ff793343c
found tail:  8ff55a752
found tail:  25a2e8b49
found head:  07c9d1f37
found tail:  f9870621e
found head:  770bef1c6
found tail:  27c5d13c9
found head:  b5b797f71
found tail:  8cc831c8b
found head:  d709df8f9
found tail:  2e51c4645
found head:  1c2a63f01
found tail:  b169c8b90
found head:  54a1765cc
found head:  e84eed5ae
found head:  9488c30e3
found head:  4ca7f1312
found head:  fe758841a
found head:  a4bbe86e5
found head:  f960e93ae
found head:  b0f5ed414
found head:  ad7fbe4b5
found head:  d4c72ccf2
found head:  a20b1603b
found head:  ca010e4f8
search  40  cols from columns from fill cnt
Leak cols:  ['ca010e4f8', 'a20b1603b', 'd4c72ccf2', 'ad7fbe4b5', 'b0f5ed414', 'f960e93ae', 'a4bbe86e5', 'fe758841a', '4ca7f1312', '9488c30e3', 'e84eed5ae', '54a1765cc', '1c2a63f01', 'd709df8f9', 'b5b797f71', '770bef1c6', '07c9d1f37', 'ff793343c', 'c83ce87d0', '7ba2e35d6', '027e67ec7', '43d99f930', '7eacd712f', 'c90b0b8a7', '939ae6e4a', '1e783ae1e', 'ebaaead05', '7417a6759', '260ff750c', 'ee99f8a68', '78144b68c', 'ce47f8cae', 'fb59499f9', '8ff55a752', '25a2e8b49', 'f9870621e', '27c5d13c9', '8cc831c8b', '2e51c4645', 'b169c8b90']
start col:  a1868e9ec
found tail:  98c05b5b4
found head:  422acfada
found tail:  8ff5cf8c3
found head:  0895b9597
found tail:  bf257a3bc
found head:  5d52b2d2b
found tail:  f86eabcb9
found tail:  c77f6dbfe
found head:  d9fbf30dd
found head:  81f4bc3d8
found tail:  014574363
found head:  184166328
found head:  2e22a32fd
found tail:  bf2b3327b
found tail:  74f15ad1c
found head:  357784061
found tail:  7d9979702
found head:  0989e152f
found head:  433d408b2
found head:  d974e8584
found head:  afc08501b
found head:  638d0b2e0
found head:  da59aa67e
found head:  2585a26fe
found head:  d7db08081
found head:  06283f348
found head:  73eeb092f
found head:  3b67e9641
found head:  398cdc105
found head:  d4087a281
found head:  232ecc840
found head:  f6240919f
found head:  f29217d2f
found head:  006e72749
found head:  0b2e88d2d
found head:  175891ff4
found head:  4fc9da4e3
found head:  81e3fed66
found head:  e1c250dbf
search  40  cols from columns from fill cnt
Leak cols:  ['e1c250dbf', '81e3fed66', '4fc9da4e3', '175891ff4', '0b2e88d2d', '006e72749', 'f29217d2f', 'f6240919f', '232ecc840', 'd4087a281', '398cdc105', '3b67e9641', '73eeb092f', '06283f348', 'd7db08081', '2585a26fe', 'da59aa67e', '638d0b2e0', 'afc08501b', 'd974e8584', '433d408b2', '0989e152f', '357784061', '2e22a32fd', '184166328', '81f4bc3d8', 'd9fbf30dd', '5d52b2d2b', '0895b9597', '422acfada', 'a1868e9ec', '98c05b5b4', '8ff5cf8c3', 'bf257a3bc', 'f86eabcb9', 'c77f6dbfe', '014574363', 'bf2b3327b', '74f15ad1c', '7d9979702']
start col:  2ed7f4cca
found head:  b6ccc5fcb
found tail:  086c13b6c
found head:  0427cdb39
found tail:  f14a940a2
found head:  6fee0d7b4
found head:  6cd6037bd
found head:  19543bce7
found tail:  493466e96
found tail:  3871fd3ac
found head:  a7bbfdace
found head:  42b147ade
found tail:  efaee7633
found head:  593d5a082
found tail:  5a7e898a1
found tail:  3da6f8d52
found head:  d95cab24f
found head:  71cebf11c
found tail:  9da65044c
found head:  236d276f3
found tail:  f8341140d
found tail:  f31b73813
found tail:  f9fad35ac
found tail:  01816048b
found tail:  88321cb27
found tail:  30eca0501
found tail:  01c16cc5a
found tail:  655fe23b2
found tail:  2cb50edc7
found tail:  295f155e7
found tail:  5dae1d1e8
found tail:  8045561f7
found tail:  dca3856ad
found tail:  22610c726
found tail:  56b9c3eb3
found tail:  a320c9747
found tail:  dc54bd249
found tail:  50b2ed3a8
found tail:  0b398dcb9
found tail:  d13a77c9b
search  40  cols from columns from fill cnt
Leak cols:  ['236d276f3', '71cebf11c', 'd95cab24f', '593d5a082', '42b147ade', 'a7bbfdace', '19543bce7', '6cd6037bd', '6fee0d7b4', '0427cdb39', 'b6ccc5fcb', '2ed7f4cca', '086c13b6c', 'f14a940a2', '493466e96', '3871fd3ac', 'efaee7633', '5a7e898a1', '3da6f8d52', '9da65044c', 'f8341140d', 'f31b73813', 'f9fad35ac', '01816048b', '88321cb27', '30eca0501', '01c16cc5a', '655fe23b2', '2cb50edc7', '295f155e7', '5dae1d1e8', '8045561f7', 'dca3856ad', '22610c726', '56b9c3eb3', 'a320c9747', 'dc54bd249', '50b2ed3a8', '0b398dcb9', 'd13a77c9b']
start col:  9c4073190
found head:  b6d60e4d5
found tail:  1aca2cf15
found head:  b59179d17
found tail:  701aaedab
found head:  c60453293
found tail:  ad17d2065
found tail:  4fa7f2b3c
found tail:  6078280eb
found tail:  caa272114
found tail:  6fff36435
found tail:  c6d84869a
found tail:  548c02798
found tail:  c6d27ddbb
found tail:  5e5189189
found tail:  859993c8b
found tail:  455b51392
found tail:  89a2d70f9
found tail:  1cb237c61
found tail:  7c4d628cf
found tail:  98dea9e42
found tail:  1b6c8debf
found tail:  9aa14041f
found tail:  95abd1cf2
found tail:  903f6fed0
found tail:  1b7ec860b
found tail:  3621a6388
found tail:  26b260c2b
found tail:  8643f2a4a
found tail:  9379a6483
found tail:  e75a24ec3
found tail:  3ce1dedc9
search  32  cols from columns from fill cnt
Leak cols:  ['c60453293', 'b59179d17', 'b6d60e4d5', '9c4073190', '1aca2cf15', '701aaedab', 'ad17d2065', '4fa7f2b3c', '6078280eb', 'caa272114', '6fff36435', 'c6d84869a', '548c02798', 'c6d27ddbb', '5e5189189', '859993c8b', '455b51392', '89a2d70f9', '1cb237c61', '7c4d628cf', '98dea9e42', '1b6c8debf', '9aa14041f', '95abd1cf2', '903f6fed0', '1b7ec860b', '3621a6388', '26b260c2b', '8643f2a4a', '9379a6483', 'e75a24ec3', '3ce1dedc9']
start col:  155912a6b
found head:  3072d6ac4
search  2  cols from columns from fill cnt
Leak cols:  ['3072d6ac4', '155912a6b']
start col:  6d1a3b508
found head:  dd3e0f1d7
found tail:  9b053a045
found head:  c036f4785
found tail:  46b02f955
found tail:  27c4472c3
found tail:  1d6069c98
found head:  9e38af23b
found head:  12491af5d
found head:  ee39f2138
found head:  ccd2ef877
found head:  eca6cc5fd
found head:  96f83a237
found head:  4b624857b
found head:  9450dfed2
found head:  f40da20f4
found head:  3694b34c5
found head:  e1769f3fd
found head:  907e76fa9
found head:  2838d63f7
found head:  137efaa80
found head:  a79c71dc0
found head:  c5b30277a
found head:  5bf03599f
found head:  b86161bff
found head:  b1a7086ac
search  26  cols from columns from fill cnt
Leak cols:  ['b1a7086ac', 'b86161bff', '5bf03599f', 'c5b30277a', 'a79c71dc0', '137efaa80', '2838d63f7', '907e76fa9', 'e1769f3fd', '3694b34c5', 'f40da20f4', '9450dfed2', '4b624857b', '96f83a237', 'eca6cc5fd', 'ccd2ef877', 'ee39f2138', '12491af5d', '9e38af23b', 'c036f4785', 'dd3e0f1d7', '6d1a3b508', '9b053a045', '46b02f955', '27c4472c3', '1d6069c98']
start col:  95e23c636
found tail:  234664d1b
found tail:  8fd2fadca
found head:  470cea05f
found tail:  c45d71aeb
found head:  2d29edb0a
found tail:  c2de35a69
found tail:  417fdb325
found head:  a7bc83f57
found head:  6820130f1
found tail:  203c64df6
found head:  fee2d3bf9
found head:  53948b2f5
found head:  01b72b3dc
search  14  cols from columns from fill cnt
Leak cols:  ['01b72b3dc', '53948b2f5', 'fee2d3bf9', '6820130f1', 'a7bc83f57', '2d29edb0a', '470cea05f', '95e23c636', '234664d1b', '8fd2fadca', 'c45d71aeb', 'c2de35a69', '417fdb325', '203c64df6']
start col:  b2f4d49d1
found head:  2f5688490
found tail:  e82967f3f
search  3  cols from columns from fill cnt
Leak cols:  ['2f5688490', 'b2f4d49d1', 'e82967f3f']
start col:  f1a0b77a5
found tail:  9060e5b59
found head:  f4393161a
found tail:  649ba759c
found head:  9d77330d2
found tail:  465717e24
found tail:  ad57dea17
found head:  a22d58a16
found tail:  e15e1513d
found head:  2c76aca6a
found head:  210f2139a
found head:  edc919c58
found head:  5341a81d1
found head:  e838549ac
found head:  810a254cf
found head:  c38ca8ae3
found head:  e975d3be7
found head:  812e9b700
found head:  5355ec916
found head:  9c92cbc0c
search  20  cols from columns from fill cnt
Leak cols:  ['9c92cbc0c', '5355ec916', '812e9b700', 'e975d3be7', 'c38ca8ae3', '810a254cf', 'e838549ac', '5341a81d1', 'edc919c58', '210f2139a', '2c76aca6a', 'a22d58a16', '9d77330d2', 'f4393161a', 'f1a0b77a5', '9060e5b59', '649ba759c', '465717e24', 'ad57dea17', 'e15e1513d']
start col:  b0dedf365
found tail:  26e2c24e3
found head:  45b68f38e
found head:  9d2a850a3
found tail:  69e8244a3
found tail:  1aa44bdf8
found tail:  a24ff79e5
search  7  cols from columns from fill cnt
Leak cols:  ['9d2a850a3', '45b68f38e', 'b0dedf365', '26e2c24e3', '69e8244a3', '1aa44bdf8', 'a24ff79e5']
start col:  354d9a875
found tail:  2fff1237e
found head:  96e03563a
found tail:  90a420609
found head:  b794c5b62
found tail:  b95a93172
found head:  f3901acd1
found tail:  338f04484
found head:  d5fa5ffba
found tail:  295de7381
found head:  f8a3bb673
found tail:  4b336f62e
found tail:  78b3125cf
search  13  cols from columns from fill cnt
Leak cols:  ['f8a3bb673', 'd5fa5ffba', 'f3901acd1', 'b794c5b62', '96e03563a', '354d9a875', '2fff1237e', '90a420609', 'b95a93172', '338f04484', '295de7381', '4b336f62e', '78b3125cf']
start col:  7b5650f35
found tail:  c4e5eb1f1
search  2  cols from columns from fill cnt
Leak cols:  ['7b5650f35', 'c4e5eb1f1']
start col:  ded346ef9
found tail:  a2bd73c67
found head:  ebfc53bb0
found head:  d30f53496
found tail:  10d7e8a17
found head:  67a590e8a
found tail:  b2a22ec15
found tail:  b21f5b472
found head:  b9e8c09d1
found tail:  a05794fa5
found head:  2fbc7a055
found head:  fbc6c2b78
found tail:  a246962f5
found head:  a4151c1dc
found head:  f227c1b60
found tail:  7a91cb0bc
found head:  6fc3be3e7
found tail:  0554bac3e
found head:  018f23166
found tail:  f49c1d119
found head:  f5c5884de
found tail:  78f45daba
found tail:  baccae68e
found head:  ce724eda8
found head:  ea3f3029c
found tail:  ea3f3029c
found head:  54df5e66f
found tail:  7c482420c
found head:  0f73ff7fa
found tail:  fa9e059a1
found tail:  9f2619218
found tail:  8e0dce2be
found tail:  70d96c477
found tail:  4563c7ee5
found tail:  1413972fe
found tail:  2ce7f870e
found tail:  b97f08b24
found tail:  504c7e3bb
found tail:  bfc7c09df
found tail:  9f57a28e7
found tail:  42481ff40
search  41  cols from columns from fill cnt
Leak cols:  ['0f73ff7fa', '54df5e66f', 'ea3f3029c', 'ce724eda8', 'f5c5884de', '018f23166', '6fc3be3e7', 'f227c1b60', 'a4151c1dc', 'fbc6c2b78', '2fbc7a055', 'b9e8c09d1', '67a590e8a', 'd30f53496', 'ebfc53bb0', 'ded346ef9', 'a2bd73c67', '10d7e8a17', 'b2a22ec15', 'b21f5b472', 'a05794fa5', 'a246962f5', '7a91cb0bc', '0554bac3e', 'f49c1d119', '78f45daba', 'baccae68e', 'ea3f3029c', '7c482420c', 'fa9e059a1', '9f2619218', '8e0dce2be', '70d96c477', '4563c7ee5', '1413972fe', '2ce7f870e', 'b97f08b24', '504c7e3bb', 'bfc7c09df', '9f57a28e7', '42481ff40']
start col:  ce3c09a74
found head:  38f5efd6d
found tail:  a6182b737
found tail:  1a44834bf
found tail:  940151347
found head:  17e2a7989
found head:  a77d3eb03
found tail:  a77d3eb03
found head:  6e00fdaad
found tail:  034bec11b
found tail:  11b0ebe2a
found tail:  0db69e82d
found tail:  2c338b4d6
found tail:  f34f48706
found tail:  ea397d576
found tail:  ca6c23686
found tail:  371ff7a11
found tail:  cb162bd89
found tail:  2e762ec53
found tail:  1d79bc053
found tail:  912f4f5de
found tail:  a25bc2d4a
found tail:  c16a7d537
found tail:  268040457
found tail:  45cda25bb
found tail:  506e25985
found tail:  afc17ad79
found tail:  a8ef2a0d2
found tail:  67f9e982f
found tail:  0f49e0f05
found tail:  85f50c67d
found tail:  c959d372a
found tail:  89db78d8e
found tail:  f366072e4
found tail:  13d853d22
found tail:  7bf58da23
found tail:  da5814d9b
found tail:  357a1f6b5
found tail:  19f721ba0
found tail:  cb22f8a26
search  40  cols from columns from fill cnt
Leak cols:  ['6e00fdaad', 'a77d3eb03', '17e2a7989', '38f5efd6d', 'ce3c09a74', 'a6182b737', '1a44834bf', '940151347', 'a77d3eb03', '034bec11b', '11b0ebe2a', '0db69e82d', '2c338b4d6', 'f34f48706', 'ea397d576', 'ca6c23686', '371ff7a11', 'cb162bd89', '2e762ec53', '1d79bc053', '912f4f5de', 'a25bc2d4a', 'c16a7d537', '268040457', '45cda25bb', '506e25985', 'afc17ad79', 'a8ef2a0d2', '67f9e982f', '0f49e0f05', '85f50c67d', 'c959d372a', '89db78d8e', 'f366072e4', '13d853d22', '7bf58da23', 'da5814d9b', '357a1f6b5', '19f721ba0', 'cb22f8a26']
start col:  e7962beb9
found tail:  93715fe15
found head:  4415f4c2b
found tail:  24218ec6a
found tail:  34b15f335
found head:  f65d1049f
found tail:  c6e8b5b5c
found head:  36d75938f
found tail:  262e3fc42
found head:  6eebf3ca4
found tail:  c5da3db1d
found tail:  3c649dad8
found head:  fa422ab84
found tail:  127e5767c
found head:  aab0aeb4b
found tail:  f0742e2c4
found head:  589e8bd6f
found head:  489dde24b
found tail:  befca8b7e
found head:  1614f0f84
found head:  ce573744f
found tail:  ce573744f
found head:  be83085df
found tail:  bbcb92ecf
found head:  db7c939c5
found tail:  db7c939c5
found tail:  96d9b7754
found head:  57b902085
found head:  b7ce8464e
found tail:  b7ce8464e
found head:  cff75dd09
found tail:  667132e4b
found head:  b87e3036b
found tail:  b87e3036b
found head:  b2bc178d8
found head:  b914cfbb4
found head:  ad064d609
found head:  526a2282d
search  38  cols from columns from fill cnt
Leak cols:  ['526a2282d', 'ad064d609', 'b914cfbb4', 'b2bc178d8', 'b87e3036b', 'cff75dd09', 'b7ce8464e', '57b902085', 'db7c939c5', 'be83085df', 'ce573744f', '1614f0f84', '489dde24b', '589e8bd6f', 'aab0aeb4b', 'fa422ab84', '6eebf3ca4', '36d75938f', 'f65d1049f', '4415f4c2b', 'e7962beb9', '93715fe15', '24218ec6a', '34b15f335', 'c6e8b5b5c', '262e3fc42', 'c5da3db1d', '3c649dad8', '127e5767c', 'f0742e2c4', 'befca8b7e', 'ce573744f', 'bbcb92ecf', 'db7c939c5', '96d9b7754', 'b7ce8464e', '667132e4b', 'b87e3036b']
start col:  292471107
found tail:  fe919be32
found head:  5bc10886b
search  3  cols from columns from fill cnt
Leak cols:  ['5bc10886b', '292471107', 'fe919be32']
start col:  440d9ff74
found tail:  2a7787202
found tail:  bb6f59108
search  3  cols from columns from fill cnt
Leak cols:  ['440d9ff74', '2a7787202', 'bb6f59108']
start col:  5a9a395c7
found tail:  f5c3dec81
found tail:  ccba7a40b
---------------------------------------------------------------------------
KeyboardInterrupt                         Traceback (most recent call last)
<ipython-input-12-3381dc8b96bb> in <module>()
     15                 while True:
     16                     local_leak_cols, _, _ = find_leak_col_use_row_check(local_leak_cols, leak_cols_candidate, 
---> 17                                                                   LEAK_ROWS, all_leak_cols_set, 2)
     18                     if len(local_leak_cols) == previous_leak_len:
     19                         print ('search ', len(local_leak_cols), ' cols from columns from fill cnt')

<ipython-input-7-ec6c58c89ec4> in find_leak_col_use_row_check(leak_cols, candidate_cols, leak_rows, all_leak_cols_set, head_tail_flag)
     49         if head_tail_flag == 1 or head_tail_flag == 2:
     50             new_leak_cols = leak_cols + [col]
---> 51             if check_leak_cols(valid_df, new_leak_cols[-3:], leak_rows):
     52                 tail_match = True
     53                 leak_cols = new_leak_cols

<ipython-input-7-ec6c58c89ec4> in check_leak_cols(df, leak_cols, leak_rows)
     17         r = leak_rows[i]
     18         r_next = leak_rows[i + 1]
---> 19         if not row_equal(df[leak_cols], r, r_next, LAG_LIST[i]):
     20             return False
     21 #             print ('Leak cols are wrong: ', leak_cols)

/usr/local/lib/python3.5/dist-packages/pandas/core/frame.py in __getitem__(self, key)
   2680         if isinstance(key, (Series, np.ndarray, Index, list)):
   2681             # either boolean or fancy integer index
-> 2682             return self._getitem_array(key)
   2683         elif isinstance(key, DataFrame):
   2684             return self._getitem_frame(key)

/usr/local/lib/python3.5/dist-packages/pandas/core/frame.py in _getitem_array(self, key)
   2724             return self._take(indexer, axis=0)
   2725         else:
-> 2726             indexer = self.loc._convert_to_indexer(key, axis=1)
   2727             return self._take(indexer, axis=1)
   2728 

/usr/local/lib/python3.5/dist-packages/pandas/core/indexing.py in _convert_to_indexer(self, obj, axis, is_setter)
   1312                 # unique index
   1313                 if labels.is_unique:
-> 1314                     indexer = check = labels.get_indexer(objarr)
   1315 
   1316                 # non-unique (dups)

/usr/local/lib/python3.5/dist-packages/pandas/core/indexes/base.py in get_indexer(self, target, method, limit, tolerance)
   3220     def get_indexer(self, target, method=None, limit=None, tolerance=None):
   3221         method = missing.clean_reindex_fill_method(method)
-> 3222         target = _ensure_index(target)
   3223         if tolerance is not None:
   3224             tolerance = self._convert_tolerance(tolerance, target)

/usr/local/lib/python3.5/dist-packages/pandas/core/indexes/base.py in _ensure_index(index_like, copy)
   4972             index_like = copy(index_like)
   4973 
-> 4974     return Index(index_like)
   4975 
   4976 

/usr/local/lib/python3.5/dist-packages/pandas/core/indexes/base.py in __new__(cls, data, dtype, copy, name, fastpath, tupleize_cols, **kwargs)
    429                         except IncompatibleFrequency:
    430                             pass
--> 431             return cls._simple_new(subarr, name)
    432 
    433         elif hasattr(data, '__array__'):

/usr/local/lib/python3.5/dist-packages/pandas/core/indexes/base.py in _simple_new(cls, values, name, dtype, **kwargs)
    479         Must be careful not to recurse.
    480         """
--> 481         if not hasattr(values, 'dtype'):
    482             if (values is None or not len(values)) and dtype is not None:
    483                 values = np.empty(0, dtype=dtype)

KeyboardInterrupt: 

In [ ]:
# train.loc[leak_rows, ['2e7f340f2', '22f95560c']]
# leak_cols = LEAK_LIST[0]
# lag_list = []
# for i in range(len(LEAK_ROWS) - 1):
#     r = LEAK_ROWS[i]
#     r_next = LEAK_ROWS[i + 1]
#     if row_equal(train.loc[LEAK_ROWS, leak_cols], r, r_next, 1):
#     #             print ('Leak cols are wrong: ', leak_cols)
#         lag_list.append(1)
#     else:
#         lag_list.append(2)
uniq_vals = train.loc[LEAK_ROWS[0], candidate_cols].unique()
eq_cnt = {}
for val in uniq_vals:
    if val != 0:
        cnt = train.loc[LEAK_ROWS, candidate_cols].apply(lambda x: len(x[x == val]))
        eq_cnt[val] = cnt[cnt != 0].shape

In [45]:
pd.Series(eq_cnt).sort_values(ascending = False).index


Out[45]:
Float64Index([  400000.0,   200000.0,  4000000.0,  1500000.0,  2000000.0,
                360000.0,   120000.0,    80000.0,  3000000.0,   790000.0,
                144000.0,  1032000.0,  1674000.0,  1540000.0,  2400000.0,
                174000.0,  5600000.0,   346000.0,  4600000.0,   278000.0,
                182000.0,  2202500.0,   210000.0,  812666.66,  4677000.0,
                604000.0,  1830000.0, 7255906.66, 34714000.0],
             dtype='float64')

In [237]:
# eq_cnt = train.loc[valid_index, other_cols].apply(lambda x: len(x[x == 1674000.0]))
# eq_cols = eq_cnt[eq_cnt != 0].sort_values().index.values #['29ab304b9', 'bd8f989f1', '74d7998d4', 'f58fb412c', 'c7775aabf', '8a088af55', '4824c1e90', '7a7da3079', '20604ed8f', 'c976a87ad', 'a1db86e3b', '50e4f96cf', '18c35d2ea', '0c8063d63', '4ead853dc', 'b599b0064', '58ed8fb53', 'fd99c18b5', 'a75d400b8', 'ff65215db', 'beb7f98fd', '47cd6e6e4', '1d9078f84', 'd83a2b684', '64e483341', '5dca793da', 'fb5a3097e', '8c0a1fa32', '9884166a7', '5f341a818', 'd26279f1a', 'db147ffca', '4fe8154c8', '400e9303d', '762cbd0ab', 'f514fdb2e']
# print (eq_cols)
def find_leak_row(leak_rows, leak_cols):
    leak_rows_set = set(leak_rows)
    leak_cols_df = train[leak_cols]
    for r in train.index:
        if r in leak_rows_set:
            continue
        
        if row_equal(leak_cols_df, leak_rows[-1], r, 1):
            print ('found tail', r)
            leak_rows += [r]
        elif row_equal(leak_cols_df, leak_rows[-1], r, 2):
            print ('found tail', r)
            leak_rows += [r]
            
        if row_equal(leak_cols_df, r, leak_rows[0], 1):
            print ('found head', r)
            leak_rows = [r] + leak_rows
        elif row_equal(leak_cols_df, r, leak_rows[0], 2):
            print ('found head', r)
            leak_rows = [r] + leak_rows
    return leak_rows

local_leak_cols = top_cols #['f0317ca4f', '402b0d650', '7e78d546b', '2ad744c57', '47abb3cb4', '71ac2b961', '5b8c88c94', '293e2698e', '4bdeca0d2', '2ef8b7f4f', 'c380056bb', '2488e17f5', '20442bac4', '8e8736fc8', '8a4c53d3e', '62c547c8e', '86f13324d', 'da52febdb', '64e38e7a2', 'b0310a768', '0d866c3d7', '34a2f580b', '24bcc2f15', 'e1e8947d8', '05f11f48f', '8c8616b62', '79e0c374a', 'ad1466df8', 'f642213a6', 'f8405f8b9', '1ae0db9d5', '9dbb6b717', '0f7ae26ce', '81ec47b4c', 'ad4e33a4c', 'a78f85d49', '8de6fcbf1', '3aab2691c', 'd2ef684ed', '9e39c29d0']
# while len(leak_cols) < 40:
#     leak_cols = find_leak_col(leak_cols, other_cols)
# print (leak_cols)
# local_leak_cols = find_leak_col(local_leak_cols, other_cols)
# local_leak_cols
# valid_index = valid_rows.index.copy()
# leak_rows = list(valid_index.values)
# valid_rows
leak_rows_len = len(leak_rows)
while True:
    leak_rows = find_leak_row(leak_rows, local_leak_cols)
    if len(leak_rows) == leak_rows_len:
        break
    leak_rows_len = len(leak_rows)
# leak_rows
train.loc[leak_rows, local_leak_cols]


found tail f51433ccc
Out[237]:
f190486d6 58e2e02e6 eeb9cd3aa 9fd594eec 6eef030c1 15ace8c9f fb0f5dbfe 58e056e12 20aa07010 024c577b9 d6bb78916 b43a7cfd5 58232a6fb 1702b5bf0 324921c7b 62e59a501 2ec5b290f 241f0f867 fb49e4212 66ace2992 f74e8f13d 5c6487af1 963a49cdc 26fc93eb7 1931ccfdd 703885424 70feb1494 491b9ee45 23310aa6f e176a204a 6619d81fc 1db387535 fc99f9426 91f701ba2 0572565c2 190db8488 adb64ff71 c47340d97 c5a231d81 0ff32eb98
ID
6726fff18 1015000.00 1.563412e+06 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
d94655f86 540000.00 1.015000e+06 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
1df3ca92e 115636.36 5.400000e+05 1.015000e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
d8e48b069 834800.00 1.156364e+05 5.400000e+05 1015000.00 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
24204cd10 296444.44 8.348000e+05 1.156364e+05 540000.00 1.015000e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
bf6c2d1ef 247166.66 2.964444e+05 8.348000e+05 115636.36 5.400000e+05 1015000.00 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
eacc7ab9e 550000.00 2.471667e+05 2.964444e+05 834800.00 1.156364e+05 540000.00 1.015000e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
4a5425356 440000.00 3.076667e+06 5.500000e+05 247166.66 2.964444e+05 834800.00 1.156364e+05 540000.00 1.015000e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
f0a57697d 0.00 4.400000e+05 3.076667e+06 550000.00 2.471667e+05 296444.44 8.348000e+05 115636.36 5.400000e+05 1015000.00 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
625e88875 1600000.00 0.000000e+00 4.400000e+05 3076666.66 5.500000e+05 247166.66 2.964444e+05 834800.00 1.156364e+05 540000.00 1.015000e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
ca6cab485 466461.54 1.600000e+06 0.000000e+00 440000.00 3.076667e+06 550000.00 2.471667e+05 296444.44 8.348000e+05 115636.36 5.400000e+05 1.015000e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
2e8ee92a7 3147200.00 4.664615e+05 1.600000e+06 0.00 4.400000e+05 3076666.66 5.500000e+05 247166.66 2.964444e+05 834800.00 1.156364e+05 5.400000e+05 1.015000e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
0e8c830c4 75000.00 3.147200e+06 4.664615e+05 1600000.00 0.000000e+00 440000.00 3.076667e+06 550000.00 2.471667e+05 296444.44 8.348000e+05 1.156364e+05 5.400000e+05 1.015000e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
502cdea84 1477600.00 1.586889e+06 7.500000e+04 3147200.00 4.664615e+05 1600000.00 0.000000e+00 440000.00 3.076667e+06 550000.00 2.471667e+05 2.964444e+05 8.348000e+05 1.156364e+05 5.400000e+05 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
7862786dc 0.00 1.477600e+06 1.586889e+06 75000.00 3.147200e+06 466461.54 1.600000e+06 0.00 4.400000e+05 3076666.66 5.500000e+05 2.471667e+05 2.964444e+05 8.348000e+05 1.156364e+05 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
c95732596 310000.00 0.000000e+00 1.477600e+06 1586888.88 7.500000e+04 3147200.00 4.664615e+05 1600000.00 0.000000e+00 440000.00 3.076667e+06 5.500000e+05 2.471667e+05 2.964444e+05 8.348000e+05 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
16a02e67a 3513333.34 3.100000e+05 0.000000e+00 1477600.00 1.586889e+06 75000.00 3.147200e+06 466461.54 1.600000e+06 0.00 4.400000e+05 3.076667e+06 5.500000e+05 2.471667e+05 2.964444e+05 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
ad960f947 160000.00 3.513333e+06 3.100000e+05 0.00 1.477600e+06 1586888.88 7.500000e+04 3147200.00 4.664615e+05 1600000.00 0.000000e+00 4.400000e+05 3.076667e+06 5.500000e+05 2.471667e+05 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
8adafbb52 2352551.72 1.600000e+05 3.513333e+06 310000.00 0.000000e+00 1477600.00 1.586889e+06 75000.00 3.147200e+06 466461.54 1.600000e+06 0.000000e+00 4.400000e+05 3.076667e+06 5.500000e+05 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fd0c7cfc2 280000.00 2.352552e+06 1.600000e+05 3513333.34 3.100000e+05 0.00 1.477600e+06 1586888.88 7.500000e+04 3147200.00 4.664615e+05 1.600000e+06 0.000000e+00 4.400000e+05 3.076667e+06 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
a36b78ff7 5450500.00 2.800000e+05 2.352552e+06 160000.00 3.513333e+06 310000.00 0.000000e+00 1477600.00 1.586889e+06 75000.00 3.147200e+06 4.664615e+05 1.600000e+06 0.000000e+00 4.400000e+05 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
e42aae1b8 1359000.00 5.450500e+06 2.800000e+05 2352551.72 1.600000e+05 3513333.34 3.100000e+05 0.00 1.477600e+06 1586888.88 7.500000e+04 3.147200e+06 4.664615e+05 1.600000e+06 0.000000e+00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
0b132f2c6 60000.00 1.359000e+06 5.450500e+06 280000.00 2.352552e+06 160000.00 3.513333e+06 310000.00 0.000000e+00 1477600.00 1.586889e+06 7.500000e+04 3.147200e+06 4.664615e+05 1.600000e+06 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
448efbb28 12000000.00 6.000000e+04 1.359000e+06 5450500.00 2.800000e+05 2352551.72 1.600000e+05 3513333.34 3.100000e+05 0.00 1.477600e+06 1.586889e+06 7.500000e+04 3.147200e+06 4.664615e+05 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
ca98b17ca 500000.00 1.200000e+07 6.000000e+04 1359000.00 5.450500e+06 280000.00 2.352552e+06 160000.00 3.513333e+06 310000.00 0.000000e+00 1.477600e+06 1.586889e+06 7.500000e+04 3.147200e+06 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
2e57ec99f 1878571.42 5.000000e+05 1.200000e+07 60000.00 1.359000e+06 5450500.00 2.800000e+05 2352551.72 1.600000e+05 3513333.34 3.100000e+05 0.000000e+00 1.477600e+06 1.586889e+06 7.500000e+04 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fef33cb02 814800.00 1.878571e+06 5.000000e+05 12000000.00 6.000000e+04 1359000.00 5.450500e+06 280000.00 2.352552e+06 160000.00 3.513333e+06 3.100000e+05 0.000000e+00 1.477600e+06 1.586889e+06 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
d4546ed8f 307000.00 8.148000e+05 1.878571e+06 500000.00 1.200000e+07 60000.00 1.359000e+06 5450500.00 2.800000e+05 2352551.72 1.600000e+05 3.513333e+06 3.100000e+05 0.000000e+00 1.477600e+06 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
0e1920aa8 528666.66 3.070000e+05 8.148000e+05 1878571.42 5.000000e+05 12000000.00 6.000000e+04 1359000.00 5.450500e+06 280000.00 2.352552e+06 1.600000e+05 3.513333e+06 3.100000e+05 0.000000e+00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
500d02a95 609200.00 5.286667e+05 3.070000e+05 814800.00 1.878571e+06 500000.00 1.200000e+07 60000.00 1.359000e+06 5450500.00 2.800000e+05 2.352552e+06 1.600000e+05 3.513333e+06 3.100000e+05 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fae83c142 448666.66 4.060000e+05 6.092000e+05 528666.66 3.070000e+05 814800.00 1.878571e+06 500000.00 1.200000e+07 60000.00 1.359000e+06 5.450500e+06 2.800000e+05 2.352552e+06 1.600000e+05 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
c5e859554 0.00 4.486667e+05 4.060000e+05 609200.00 5.286667e+05 307000.00 8.148000e+05 1878571.42 5.000000e+05 12000000.00 6.000000e+04 1.359000e+06 5.450500e+06 2.800000e+05 2.352552e+06 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fba64a995 400000.00 0.000000e+00 4.486667e+05 406000.00 6.092000e+05 528666.66 3.070000e+05 814800.00 1.878571e+06 500000.00 1.200000e+07 6.000000e+04 1.359000e+06 5.450500e+06 2.800000e+05 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76
35dcc0108 60666.66 4.000000e+05 0.000000e+00 448666.66 4.060000e+05 609200.00 5.286667e+05 307000.00 8.148000e+05 1878571.42 5.000000e+05 1.200000e+07 6.000000e+04 1.359000e+06 5.450500e+06 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76
b9713bb06 267428.58 6.066666e+04 4.000000e+05 0.00 4.486667e+05 406000.00 6.092000e+05 528666.66 3.070000e+05 814800.00 1.878571e+06 5.000000e+05 1.200000e+07 6.000000e+04 1.359000e+06 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76
2514ad945 1304800.00 2.674286e+05 6.066666e+04 400000.00 0.000000e+00 448666.66 4.060000e+05 609200.00 5.286667e+05 307000.00 8.148000e+05 1.878571e+06 5.000000e+05 1.200000e+07 6.000000e+04 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76
cc8cf9c8b 380000.00 8.120000e+06 1.304800e+06 267428.58 6.066666e+04 400000.00 0.000000e+00 448666.66 4.060000e+05 609200.00 5.286667e+05 3.070000e+05 8.148000e+05 1.878571e+06 5.000000e+05 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00
dbf23d64e 0.00 3.800000e+05 8.120000e+06 1304800.00 2.674286e+05 60666.66 4.000000e+05 0.00 4.486667e+05 406000.00 6.092000e+05 5.286667e+05 3.070000e+05 8.148000e+05 1.878571e+06 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36
2e6e6851e 3244909.10 4.500000e+05 0.000000e+00 380000.00 8.120000e+06 1304800.00 2.674286e+05 60666.66 4.000000e+05 0.00 4.486667e+05 4.060000e+05 6.092000e+05 5.286667e+05 3.070000e+05 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44
55b8efb3f 1933333.34 3.244909e+06 4.500000e+05 0.00 3.800000e+05 8120000.00 1.304800e+06 267428.58 6.066666e+04 400000.00 0.000000e+00 4.486667e+05 4.060000e+05 6.092000e+05 5.286667e+05 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66
bb8d7aab5 35050000.00 2.186000e+06 1.933333e+06 3244909.10 4.500000e+05 0.00 3.800000e+05 8120000.00 1.304800e+06 267428.58 6.066666e+04 4.000000e+05 0.000000e+00 4.486667e+05 4.060000e+05 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66
18d789f9f 908000.00 9.500000e+05 3.505000e+07 2186000.00 1.933333e+06 3244909.10 4.500000e+05 0.00 3.800000e+05 8120000.00 1.304800e+06 2.674286e+05 6.066666e+04 4.000000e+05 0.000000e+00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00
735f22d30 430000.00 9.080000e+05 9.500000e+05 35050000.00 2.186000e+06 1933333.34 3.244909e+06 450000.00 0.000000e+00 380000.00 8.120000e+06 1.304800e+06 2.674286e+05 6.066666e+04 4.000000e+05 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00
ccf7284d8 374000.00 3.700000e+05 4.300000e+05 908000.00 9.500000e+05 35050000.00 2.186000e+06 1933333.34 3.244909e+06 450000.00 0.000000e+00 3.800000e+05 8.120000e+06 1.304800e+06 2.674286e+05 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00
5658fd75e 4900000.00 3.740000e+05 3.700000e+05 430000.00 9.080000e+05 950000.00 3.505000e+07 2186000.00 1.933333e+06 3244909.10 4.500000e+05 0.000000e+00 3.800000e+05 8.120000e+06 1.304800e+06 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00
95c895d3a 16733333.34 4.900000e+06 3.740000e+05 370000.00 4.300000e+05 908000.00 9.500000e+05 35050000.00 2.186000e+06 1933333.34 3.244909e+06 4.500000e+05 0.000000e+00 3.800000e+05 8.120000e+06 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88
510de59ed 922000.00 1.673333e+07 4.900000e+06 374000.00 3.700000e+05 430000.00 9.080000e+05 950000.00 3.505000e+07 2186000.00 1.933333e+06 3.244909e+06 4.500000e+05 0.000000e+00 3.800000e+05 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00
5244e20bb 356000.00 2.300000e+06 9.220000e+05 16733333.34 4.900000e+06 374000.00 3.700000e+05 430000.00 9.080000e+05 950000.00 3.505000e+07 2.186000e+06 1.933333e+06 3.244909e+06 4.500000e+05 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00
e6df75d80 1838333.34 0.000000e+00 3.560000e+05 2300000.00 9.220000e+05 16733333.34 4.900000e+06 374000.00 3.700000e+05 430000.00 9.080000e+05 9.500000e+05 3.505000e+07 2.186000e+06 1.933333e+06 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00
a70090dc7 600000.00 4.870000e+06 1.838333e+06 0.00 3.560000e+05 2300000.00 9.220000e+05 16733333.34 4.900000e+06 374000.00 3.700000e+05 4.300000e+05 9.080000e+05 9.500000e+05 3.505000e+07 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00
ca6c4ea0d 400000.00 0.000000e+00 6.000000e+05 4870000.00 1.838333e+06 0.00 3.560000e+05 2300000.00 9.220000e+05 16733333.34 4.900000e+06 3.740000e+05 3.700000e+05 4.300000e+05 9.080000e+05 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00
242407fc6 707000.00 4.000000e+05 0.000000e+00 600000.00 4.870000e+06 1838333.34 0.000000e+00 356000.00 2.300000e+06 922000.00 1.673333e+07 4.900000e+06 3.740000e+05 3.700000e+05 4.300000e+05 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00
7ff66b22b 547000.00 7.070000e+05 4.000000e+05 0.00 6.000000e+05 4870000.00 1.838333e+06 0.00 3.560000e+05 2300000.00 9.220000e+05 1.673333e+07 4.900000e+06 3.740000e+05 3.700000e+05 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00
c9573f4ac 2253333.34 1.111520e+07 5.470000e+05 707000.00 4.000000e+05 0.00 6.000000e+05 4870000.00 1.838333e+06 0.00 3.560000e+05 2.300000e+06 9.220000e+05 1.673333e+07 4.900000e+06 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42
08f544828 819750.00 2.530000e+07 2.253333e+06 11115200.00 5.470000e+05 707000.00 4.000000e+05 0.00 6.000000e+05 4870000.00 1.838333e+06 0.000000e+00 3.560000e+05 2.300000e+06 9.220000e+05 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00
61636fa41 25100000.00 4.000000e+04 8.197500e+05 25300000.00 2.253333e+06 11115200.00 5.470000e+05 707000.00 4.000000e+05 0.00 6.000000e+05 4.870000e+06 1.838333e+06 0.000000e+00 3.560000e+05 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00
414871b56 2090000.00 2.213400e+07 2.510000e+07 40000.00 8.197500e+05 25300000.00 2.253333e+06 11115200.00 5.470000e+05 707000.00 4.000000e+05 0.000000e+00 6.000000e+05 4.870000e+06 1.838333e+06 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66
9eb93baef 30000000.00 3.252500e+06 2.090000e+06 22134000.00 2.510000e+07 40000.00 8.197500e+05 25300000.00 2.253333e+06 11115200.00 5.470000e+05 7.070000e+05 4.000000e+05 0.000000e+00 6.000000e+05 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00
db9ddeb12 450000.00 2.398500e+07 3.000000e+07 3252500.00 2.090000e+06 22134000.00 2.510000e+07 40000.00 8.197500e+05 25300000.00 2.253333e+06 1.111520e+07 5.470000e+05 7.070000e+05 4.000000e+05 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58
680ecfac8 1448888.88 2.190000e+06 4.500000e+05 23985000.00 3.000000e+07 3252500.00 2.090000e+06 22134000.00 2.510000e+07 40000.00 8.197500e+05 2.530000e+07 2.253333e+06 1.111520e+07 5.470000e+05 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00
eb850ef06 8260400.00 1.414500e+07 1.448889e+06 2190000.00 4.500000e+05 23985000.00 3.000000e+07 3252500.00 2.090000e+06 22134000.00 2.510000e+07 4.000000e+04 8.197500e+05 2.530000e+07 2.253333e+06 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00
6edaf114d 3420000.00 8.260400e+06 1.414500e+07 1448888.88 2.190000e+06 450000.00 2.398500e+07 30000000.00 3.252500e+06 2090000.00 2.213400e+07 2.510000e+07 4.000000e+04 8.197500e+05 2.530000e+07 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00
3f48ded44 2286500.00 1.470909e+05 3.420000e+06 8260400.00 1.414500e+07 1448888.88 2.190000e+06 450000.00 2.398500e+07 30000000.00 3.252500e+06 2.090000e+06 2.213400e+07 2.510000e+07 4.000000e+04 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34
b3b9034fe 0.00 2.286500e+06 1.470909e+05 3420000.00 8.260400e+06 14145000.00 1.448889e+06 2190000.00 4.500000e+05 23985000.00 3.000000e+07 3.252500e+06 2.090000e+06 2.213400e+07 2.510000e+07 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00
f06c4b881 16818666.66 0.000000e+00 2.286500e+06 147090.90 3.420000e+06 8260400.00 1.414500e+07 1448888.88 2.190000e+06 450000.00 2.398500e+07 3.000000e+07 3.252500e+06 2.090000e+06 2.213400e+07 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00
f080bc65d 10491200.00 1.681867e+07 0.000000e+00 2286500.00 1.470909e+05 3420000.00 8.260400e+06 14145000.00 1.448889e+06 2190000.00 4.500000e+05 2.398500e+07 3.000000e+07 3.252500e+06 2.090000e+06 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00
0a6e926ca 3012000.00 1.049120e+07 1.681867e+07 0.00 2.286500e+06 147090.90 3.420000e+06 8260400.00 1.414500e+07 1448888.88 2.190000e+06 4.500000e+05 2.398500e+07 3.000000e+07 3.252500e+06 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00
e012e104f 5352666.66 3.012000e+06 1.049120e+07 16818666.66 0.000000e+00 2286500.00 1.470909e+05 3420000.00 8.260400e+06 14145000.00 1.448889e+06 2.190000e+06 4.500000e+05 2.398500e+07 3.000000e+07 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00
077787b5d 11973333.34 5.352667e+06 3.012000e+06 10491200.00 1.681867e+07 0.00 2.286500e+06 147090.90 3.420000e+06 8260400.00 1.414500e+07 1.448889e+06 2.190000e+06 4.500000e+05 2.398500e+07 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00
4618a456e 3056888.88 1.197333e+07 5.352667e+06 3012000.00 1.049120e+07 16818666.66 0.000000e+00 2286500.00 1.470909e+05 3420000.00 8.260400e+06 1.414500e+07 1.448889e+06 2.190000e+06 4.500000e+05 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00
52bfe707e 282333.34 1.081467e+07 3.056889e+06 11973333.34 5.352667e+06 3012000.00 1.049120e+07 16818666.66 0.000000e+00 2286500.00 1.470909e+05 3.420000e+06 8.260400e+06 1.414500e+07 1.448889e+06 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34
cfee36e7e 1554666.66 4.200000e+04 2.823333e+05 10814666.66 3.056889e+06 11973333.34 5.352667e+06 3012000.00 1.049120e+07 16818666.66 0.000000e+00 2.286500e+06 1.470909e+05 3.420000e+06 8.260400e+06 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00
9af4c0edd 3862000.00 4.005500e+06 1.554667e+06 42000.00 2.823333e+05 10814666.66 3.056889e+06 11973333.34 5.352667e+06 3012000.00 1.049120e+07 1.681867e+07 0.000000e+00 2.286500e+06 1.470909e+05 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00
e10172455 972000.00 1.117913e+08 3.862000e+06 4005500.00 1.554667e+06 42000.00 2.823333e+05 10814666.66 3.056889e+06 11973333.34 5.352667e+06 3.012000e+06 1.049120e+07 1.681867e+07 0.000000e+00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00
6d93dcb5f 1859333.34 9.720000e+05 1.117913e+08 3862000.00 4.005500e+06 1554666.66 4.200000e+04 282333.34 1.081467e+07 3056888.88 1.197333e+07 5.352667e+06 3.012000e+06 1.049120e+07 1.681867e+07 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00
fcf9edf33 1060000.00 7.279000e+06 1.859333e+06 972000.00 1.117913e+08 3862000.00 4.005500e+06 1554666.66 4.200000e+04 282333.34 1.081467e+07 3.056889e+06 1.197333e+07 5.352667e+06 3.012000e+06 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00
06cd03d09 3530500.00 0.000000e+00 1.060000e+06 7279000.00 1.859333e+06 972000.00 1.117913e+08 3862000.00 4.005500e+06 1554666.66 4.200000e+04 2.823333e+05 1.081467e+07 3.056889e+06 1.197333e+07 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00
a9b6b48d9 3095200.00 2.000000e+07 3.530500e+06 0.00 1.060000e+06 7279000.00 1.859333e+06 972000.00 1.117913e+08 3862000.00 4.005500e+06 1.554667e+06 4.200000e+04 2.823333e+05 1.081467e+07 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34
f5fcec8dd 121000.00 6.814000e+06 3.095200e+06 20000000.00 3.530500e+06 0.00 1.060000e+06 7279000.00 1.859333e+06 972000.00 1.117913e+08 3.862000e+06 4.005500e+06 1.554667e+06 4.200000e+04 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00
97dc5416f 5187333.34 1.210000e+05 6.814000e+06 3095200.00 2.000000e+07 3530500.00 0.000000e+00 1060000.00 7.279000e+06 1859333.34 9.720000e+05 1.117913e+08 3.862000e+06 4.005500e+06 1.554667e+06 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00
a5c7e6ca0 588000.00 5.187333e+06 1.210000e+05 6814000.00 3.095200e+06 20000000.00 3.530500e+06 0.00 1.060000e+06 7279000.00 1.859333e+06 9.720000e+05 1.117913e+08 3.862000e+06 4.005500e+06 1554666.66 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00
950eeb8e9 2779666.66 5.880000e+05 5.187333e+06 121000.00 6.814000e+06 3095200.00 2.000000e+07 3530500.00 0.000000e+00 1060000.00 7.279000e+06 1.859333e+06 9.720000e+05 1.117913e+08 3.862000e+06 4005500.00 1554666.66 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00
f51433ccc 1227333.34 2.779667e+06 5.880000e+05 5187333.34 1.210000e+05 6814000.00 3.095200e+06 20000000.00 3.530500e+06 0.00 1.060000e+06 7.279000e+06 1.859333e+06 9.720000e+05 1.117913e+08 3862000.00 4005500.00 1554666.66 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00

In [239]:
previous_leak_len = len(local_leak_cols)
# search from columns from fill cnt
while True:
    local_leak_cols = find_leak_col(local_leak_cols, other_cols, leak_rows)
    if len(local_leak_cols) == previous_leak_len:
        break
    previous_leak_len = len(local_leak_cols)


found head target max_head_cnt 29

In [240]:
pd.set_option('max_rows', None)
train.loc[leak_rows, top_cols]


Out[240]:
f190486d6 58e2e02e6 eeb9cd3aa 9fd594eec 6eef030c1 15ace8c9f fb0f5dbfe 58e056e12 20aa07010 024c577b9 d6bb78916 b43a7cfd5 58232a6fb 1702b5bf0 324921c7b 62e59a501 2ec5b290f 241f0f867 fb49e4212 66ace2992 f74e8f13d 5c6487af1 963a49cdc 26fc93eb7 1931ccfdd 703885424 70feb1494 491b9ee45 23310aa6f e176a204a 6619d81fc 1db387535 fc99f9426 91f701ba2 0572565c2 190db8488 adb64ff71 c47340d97 c5a231d81 0ff32eb98
ID
6726fff18 1015000.00 1.563412e+06 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
d94655f86 540000.00 1.015000e+06 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
1df3ca92e 115636.36 5.400000e+05 1.015000e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
d8e48b069 834800.00 1.156364e+05 5.400000e+05 1015000.00 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
24204cd10 296444.44 8.348000e+05 1.156364e+05 540000.00 1.015000e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
bf6c2d1ef 247166.66 2.964444e+05 8.348000e+05 115636.36 5.400000e+05 1015000.00 1.563412e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
eacc7ab9e 550000.00 2.471667e+05 2.964444e+05 834800.00 1.156364e+05 540000.00 1.015000e+06 1563411.76 1.563412e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
4a5425356 440000.00 3.076667e+06 5.500000e+05 247166.66 2.964444e+05 834800.00 1.156364e+05 540000.00 1.015000e+06 1563411.76 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
f0a57697d 0.00 4.400000e+05 3.076667e+06 550000.00 2.471667e+05 296444.44 8.348000e+05 115636.36 5.400000e+05 1015000.00 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
625e88875 1600000.00 0.000000e+00 4.400000e+05 3076666.66 5.500000e+05 247166.66 2.964444e+05 834800.00 1.156364e+05 540000.00 1.015000e+06 1.563412e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
ca6cab485 466461.54 1.600000e+06 0.000000e+00 440000.00 3.076667e+06 550000.00 2.471667e+05 296444.44 8.348000e+05 115636.36 5.400000e+05 1.015000e+06 1.563412e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
2e8ee92a7 3147200.00 4.664615e+05 1.600000e+06 0.00 4.400000e+05 3076666.66 5.500000e+05 247166.66 2.964444e+05 834800.00 1.156364e+05 5.400000e+05 1.015000e+06 1.563412e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
0e8c830c4 75000.00 3.147200e+06 4.664615e+05 1600000.00 0.000000e+00 440000.00 3.076667e+06 550000.00 2.471667e+05 296444.44 8.348000e+05 1.156364e+05 5.400000e+05 1.015000e+06 1.563412e+06 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
502cdea84 1477600.00 1.586889e+06 7.500000e+04 3147200.00 4.664615e+05 1600000.00 0.000000e+00 440000.00 3.076667e+06 550000.00 2.471667e+05 2.964444e+05 8.348000e+05 1.156364e+05 5.400000e+05 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
7862786dc 0.00 1.477600e+06 1.586889e+06 75000.00 3.147200e+06 466461.54 1.600000e+06 0.00 4.400000e+05 3076666.66 5.500000e+05 2.471667e+05 2.964444e+05 8.348000e+05 1.156364e+05 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
c95732596 310000.00 0.000000e+00 1.477600e+06 1586888.88 7.500000e+04 3147200.00 4.664615e+05 1600000.00 0.000000e+00 440000.00 3.076667e+06 5.500000e+05 2.471667e+05 2.964444e+05 8.348000e+05 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
16a02e67a 3513333.34 3.100000e+05 0.000000e+00 1477600.00 1.586889e+06 75000.00 3.147200e+06 466461.54 1.600000e+06 0.00 4.400000e+05 3.076667e+06 5.500000e+05 2.471667e+05 2.964444e+05 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
ad960f947 160000.00 3.513333e+06 3.100000e+05 0.00 1.477600e+06 1586888.88 7.500000e+04 3147200.00 4.664615e+05 1600000.00 0.000000e+00 4.400000e+05 3.076667e+06 5.500000e+05 2.471667e+05 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
8adafbb52 2352551.72 1.600000e+05 3.513333e+06 310000.00 0.000000e+00 1477600.00 1.586889e+06 75000.00 3.147200e+06 466461.54 1.600000e+06 0.000000e+00 4.400000e+05 3.076667e+06 5.500000e+05 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fd0c7cfc2 280000.00 2.352552e+06 1.600000e+05 3513333.34 3.100000e+05 0.00 1.477600e+06 1586888.88 7.500000e+04 3147200.00 4.664615e+05 1.600000e+06 0.000000e+00 4.400000e+05 3.076667e+06 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
a36b78ff7 5450500.00 2.800000e+05 2.352552e+06 160000.00 3.513333e+06 310000.00 0.000000e+00 1477600.00 1.586889e+06 75000.00 3.147200e+06 4.664615e+05 1.600000e+06 0.000000e+00 4.400000e+05 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
e42aae1b8 1359000.00 5.450500e+06 2.800000e+05 2352551.72 1.600000e+05 3513333.34 3.100000e+05 0.00 1.477600e+06 1586888.88 7.500000e+04 3.147200e+06 4.664615e+05 1.600000e+06 0.000000e+00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
0b132f2c6 60000.00 1.359000e+06 5.450500e+06 280000.00 2.352552e+06 160000.00 3.513333e+06 310000.00 0.000000e+00 1477600.00 1.586889e+06 7.500000e+04 3.147200e+06 4.664615e+05 1.600000e+06 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
448efbb28 12000000.00 6.000000e+04 1.359000e+06 5450500.00 2.800000e+05 2352551.72 1.600000e+05 3513333.34 3.100000e+05 0.00 1.477600e+06 1.586889e+06 7.500000e+04 3.147200e+06 4.664615e+05 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
ca98b17ca 500000.00 1.200000e+07 6.000000e+04 1359000.00 5.450500e+06 280000.00 2.352552e+06 160000.00 3.513333e+06 310000.00 0.000000e+00 1.477600e+06 1.586889e+06 7.500000e+04 3.147200e+06 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
2e57ec99f 1878571.42 5.000000e+05 1.200000e+07 60000.00 1.359000e+06 5450500.00 2.800000e+05 2352551.72 1.600000e+05 3513333.34 3.100000e+05 0.000000e+00 1.477600e+06 1.586889e+06 7.500000e+04 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fef33cb02 814800.00 1.878571e+06 5.000000e+05 12000000.00 6.000000e+04 1359000.00 5.450500e+06 280000.00 2.352552e+06 160000.00 3.513333e+06 3.100000e+05 0.000000e+00 1.477600e+06 1.586889e+06 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
d4546ed8f 307000.00 8.148000e+05 1.878571e+06 500000.00 1.200000e+07 60000.00 1.359000e+06 5450500.00 2.800000e+05 2352551.72 1.600000e+05 3.513333e+06 3.100000e+05 0.000000e+00 1.477600e+06 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
0e1920aa8 528666.66 3.070000e+05 8.148000e+05 1878571.42 5.000000e+05 12000000.00 6.000000e+04 1359000.00 5.450500e+06 280000.00 2.352552e+06 1.600000e+05 3.513333e+06 3.100000e+05 0.000000e+00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
500d02a95 609200.00 5.286667e+05 3.070000e+05 814800.00 1.878571e+06 500000.00 1.200000e+07 60000.00 1.359000e+06 5450500.00 2.800000e+05 2.352552e+06 1.600000e+05 3.513333e+06 3.100000e+05 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fae83c142 448666.66 4.060000e+05 6.092000e+05 528666.66 3.070000e+05 814800.00 1.878571e+06 500000.00 1.200000e+07 60000.00 1.359000e+06 5.450500e+06 2.800000e+05 2.352552e+06 1.600000e+05 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
c5e859554 0.00 4.486667e+05 4.060000e+05 609200.00 5.286667e+05 307000.00 8.148000e+05 1878571.42 5.000000e+05 12000000.00 6.000000e+04 1.359000e+06 5.450500e+06 2.800000e+05 2.352552e+06 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76 1563411.76
fba64a995 400000.00 0.000000e+00 4.486667e+05 406000.00 6.092000e+05 528666.66 3.070000e+05 814800.00 1.878571e+06 500000.00 1.200000e+07 6.000000e+04 1.359000e+06 5.450500e+06 2.800000e+05 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76 1563411.76
35dcc0108 60666.66 4.000000e+05 0.000000e+00 448666.66 4.060000e+05 609200.00 5.286667e+05 307000.00 8.148000e+05 1878571.42 5.000000e+05 1.200000e+07 6.000000e+04 1.359000e+06 5.450500e+06 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76 1563411.76
b9713bb06 267428.58 6.066666e+04 4.000000e+05 0.00 4.486667e+05 406000.00 6.092000e+05 528666.66 3.070000e+05 814800.00 1.878571e+06 5.000000e+05 1.200000e+07 6.000000e+04 1.359000e+06 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76 1563411.76
2514ad945 1304800.00 2.674286e+05 6.066666e+04 400000.00 0.000000e+00 448666.66 4.060000e+05 609200.00 5.286667e+05 307000.00 8.148000e+05 1.878571e+06 5.000000e+05 1.200000e+07 6.000000e+04 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00 1015000.00 1563411.76
cc8cf9c8b 380000.00 8.120000e+06 1.304800e+06 267428.58 6.066666e+04 400000.00 0.000000e+00 448666.66 4.060000e+05 609200.00 5.286667e+05 3.070000e+05 8.148000e+05 1.878571e+06 5.000000e+05 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36 540000.00
dbf23d64e 0.00 3.800000e+05 8.120000e+06 1304800.00 2.674286e+05 60666.66 4.000000e+05 0.00 4.486667e+05 406000.00 6.092000e+05 5.286667e+05 3.070000e+05 8.148000e+05 1.878571e+06 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44 834800.00 115636.36
2e6e6851e 3244909.10 4.500000e+05 0.000000e+00 380000.00 8.120000e+06 1304800.00 2.674286e+05 60666.66 4.000000e+05 0.00 4.486667e+05 4.060000e+05 6.092000e+05 5.286667e+05 3.070000e+05 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66 296444.44
55b8efb3f 1933333.34 3.244909e+06 4.500000e+05 0.00 3.800000e+05 8120000.00 1.304800e+06 267428.58 6.066666e+04 400000.00 0.000000e+00 4.486667e+05 4.060000e+05 6.092000e+05 5.286667e+05 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66 550000.00 247166.66
bb8d7aab5 35050000.00 2.186000e+06 1.933333e+06 3244909.10 4.500000e+05 0.00 3.800000e+05 8120000.00 1.304800e+06 267428.58 6.066666e+04 4.000000e+05 0.000000e+00 4.486667e+05 4.060000e+05 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00 440000.00 3076666.66
18d789f9f 908000.00 9.500000e+05 3.505000e+07 2186000.00 1.933333e+06 3244909.10 4.500000e+05 0.00 3.800000e+05 8120000.00 1.304800e+06 2.674286e+05 6.066666e+04 4.000000e+05 0.000000e+00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00 0.00
735f22d30 430000.00 9.080000e+05 9.500000e+05 35050000.00 2.186000e+06 1933333.34 3.244909e+06 450000.00 0.000000e+00 380000.00 8.120000e+06 1.304800e+06 2.674286e+05 6.066666e+04 4.000000e+05 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00 466461.54 1600000.00
ccf7284d8 374000.00 3.700000e+05 4.300000e+05 908000.00 9.500000e+05 35050000.00 2.186000e+06 1933333.34 3.244909e+06 450000.00 0.000000e+00 3.800000e+05 8.120000e+06 1.304800e+06 2.674286e+05 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00 3147200.00
5658fd75e 4900000.00 3.740000e+05 3.700000e+05 430000.00 9.080000e+05 950000.00 3.505000e+07 2186000.00 1.933333e+06 3244909.10 4.500000e+05 0.000000e+00 3.800000e+05 8.120000e+06 1.304800e+06 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88 75000.00
95c895d3a 16733333.34 4.900000e+06 3.740000e+05 370000.00 4.300000e+05 908000.00 9.500000e+05 35050000.00 2.186000e+06 1933333.34 3.244909e+06 4.500000e+05 0.000000e+00 3.800000e+05 8.120000e+06 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00 1586888.88
510de59ed 922000.00 1.673333e+07 4.900000e+06 374000.00 3.700000e+05 430000.00 9.080000e+05 950000.00 3.505000e+07 2186000.00 1.933333e+06 3.244909e+06 4.500000e+05 0.000000e+00 3.800000e+05 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00 0.00 1477600.00
5244e20bb 356000.00 2.300000e+06 9.220000e+05 16733333.34 4.900000e+06 374000.00 3.700000e+05 430000.00 9.080000e+05 950000.00 3.505000e+07 2.186000e+06 1.933333e+06 3.244909e+06 4.500000e+05 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00 3513333.34 310000.00
e6df75d80 1838333.34 0.000000e+00 3.560000e+05 2300000.00 9.220000e+05 16733333.34 4.900000e+06 374000.00 3.700000e+05 430000.00 9.080000e+05 9.500000e+05 3.505000e+07 2.186000e+06 1.933333e+06 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00 2352551.72 160000.00
a70090dc7 600000.00 4.870000e+06 1.838333e+06 0.00 3.560000e+05 2300000.00 9.220000e+05 16733333.34 4.900000e+06 374000.00 3.700000e+05 4.300000e+05 9.080000e+05 9.500000e+05 3.505000e+07 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00 5450500.00 280000.00
ca6c4ea0d 400000.00 0.000000e+00 6.000000e+05 4870000.00 1.838333e+06 0.00 3.560000e+05 2300000.00 9.220000e+05 16733333.34 4.900000e+06 3.740000e+05 3.700000e+05 4.300000e+05 9.080000e+05 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00 1359000.00
242407fc6 707000.00 4.000000e+05 0.000000e+00 600000.00 4.870000e+06 1838333.34 0.000000e+00 356000.00 2.300000e+06 922000.00 1.673333e+07 4.900000e+06 3.740000e+05 3.700000e+05 4.300000e+05 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00 60000.00
7ff66b22b 547000.00 7.070000e+05 4.000000e+05 0.00 6.000000e+05 4870000.00 1.838333e+06 0.00 3.560000e+05 2300000.00 9.220000e+05 1.673333e+07 4.900000e+06 3.740000e+05 3.700000e+05 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42 500000.00 12000000.00
c9573f4ac 2253333.34 1.111520e+07 5.470000e+05 707000.00 4.000000e+05 0.00 6.000000e+05 4870000.00 1.838333e+06 0.00 3.560000e+05 2.300000e+06 9.220000e+05 1.673333e+07 4.900000e+06 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00 814800.00 1878571.42
08f544828 819750.00 2.530000e+07 2.253333e+06 11115200.00 5.470000e+05 707000.00 4.000000e+05 0.00 6.000000e+05 4870000.00 1.838333e+06 0.000000e+00 3.560000e+05 2.300000e+06 9.220000e+05 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00 528666.66 307000.00
61636fa41 25100000.00 4.000000e+04 8.197500e+05 25300000.00 2.253333e+06 11115200.00 5.470000e+05 707000.00 4.000000e+05 0.00 6.000000e+05 4.870000e+06 1.838333e+06 0.000000e+00 3.560000e+05 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66 406000.00 609200.00
414871b56 2090000.00 2.213400e+07 2.510000e+07 40000.00 8.197500e+05 25300000.00 2.253333e+06 11115200.00 5.470000e+05 707000.00 4.000000e+05 0.000000e+00 6.000000e+05 4.870000e+06 1.838333e+06 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00 0.00 448666.66
9eb93baef 30000000.00 3.252500e+06 2.090000e+06 22134000.00 2.510000e+07 40000.00 8.197500e+05 25300000.00 2.253333e+06 11115200.00 5.470000e+05 7.070000e+05 4.000000e+05 0.000000e+00 6.000000e+05 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58 60666.66 400000.00
db9ddeb12 450000.00 2.398500e+07 3.000000e+07 3252500.00 2.090000e+06 22134000.00 2.510000e+07 40000.00 8.197500e+05 25300000.00 2.253333e+06 1.111520e+07 5.470000e+05 7.070000e+05 4.000000e+05 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00 1304800.00 267428.58
680ecfac8 1448888.88 2.190000e+06 4.500000e+05 23985000.00 3.000000e+07 3252500.00 2.090000e+06 22134000.00 2.510000e+07 40000.00 8.197500e+05 2.530000e+07 2.253333e+06 1.111520e+07 5.470000e+05 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00 380000.00 8120000.00
eb850ef06 8260400.00 1.414500e+07 1.448889e+06 2190000.00 4.500000e+05 23985000.00 3.000000e+07 3252500.00 2.090000e+06 22134000.00 2.510000e+07 4.000000e+04 8.197500e+05 2.530000e+07 2.253333e+06 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00 0.00
6edaf114d 3420000.00 8.260400e+06 1.414500e+07 1448888.88 2.190000e+06 450000.00 2.398500e+07 30000000.00 3.252500e+06 2090000.00 2.213400e+07 2.510000e+07 4.000000e+04 8.197500e+05 2.530000e+07 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34 3244909.10 450000.00
3f48ded44 2286500.00 1.470909e+05 3.420000e+06 8260400.00 1.414500e+07 1448888.88 2.190000e+06 450000.00 2.398500e+07 30000000.00 3.252500e+06 2.090000e+06 2.213400e+07 2.510000e+07 4.000000e+04 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00 1933333.34
b3b9034fe 0.00 2.286500e+06 1.470909e+05 3420000.00 8.260400e+06 14145000.00 1.448889e+06 2190000.00 4.500000e+05 23985000.00 3.000000e+07 3.252500e+06 2.090000e+06 2.213400e+07 2.510000e+07 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00 2186000.00
f06c4b881 16818666.66 0.000000e+00 2.286500e+06 147090.90 3.420000e+06 8260400.00 1.414500e+07 1448888.88 2.190000e+06 450000.00 2.398500e+07 3.000000e+07 3.252500e+06 2.090000e+06 2.213400e+07 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00 35050000.00
f080bc65d 10491200.00 1.681867e+07 0.000000e+00 2286500.00 1.470909e+05 3420000.00 8.260400e+06 14145000.00 1.448889e+06 2190000.00 4.500000e+05 2.398500e+07 3.000000e+07 3.252500e+06 2.090000e+06 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00 950000.00
0a6e926ca 3012000.00 1.049120e+07 1.681867e+07 0.00 2.286500e+06 147090.90 3.420000e+06 8260400.00 1.414500e+07 1448888.88 2.190000e+06 4.500000e+05 2.398500e+07 3.000000e+07 3.252500e+06 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00 908000.00
e012e104f 5352666.66 3.012000e+06 1.049120e+07 16818666.66 0.000000e+00 2286500.00 1.470909e+05 3420000.00 8.260400e+06 14145000.00 1.448889e+06 2.190000e+06 4.500000e+05 2.398500e+07 3.000000e+07 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00 430000.00
077787b5d 11973333.34 5.352667e+06 3.012000e+06 10491200.00 1.681867e+07 0.00 2.286500e+06 147090.90 3.420000e+06 8260400.00 1.414500e+07 1.448889e+06 2.190000e+06 4.500000e+05 2.398500e+07 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00 370000.00
4618a456e 3056888.88 1.197333e+07 5.352667e+06 3012000.00 1.049120e+07 16818666.66 0.000000e+00 2286500.00 1.470909e+05 3420000.00 8.260400e+06 1.414500e+07 1.448889e+06 2.190000e+06 4.500000e+05 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34 4900000.00 374000.00
52bfe707e 282333.34 1.081467e+07 3.056889e+06 11973333.34 5.352667e+06 3012000.00 1.049120e+07 16818666.66 0.000000e+00 2286500.00 1.470909e+05 3.420000e+06 8.260400e+06 1.414500e+07 1.448889e+06 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00 922000.00 16733333.34
cfee36e7e 1554666.66 4.200000e+04 2.823333e+05 10814666.66 3.056889e+06 11973333.34 5.352667e+06 3012000.00 1.049120e+07 16818666.66 0.000000e+00 2.286500e+06 1.470909e+05 3.420000e+06 8.260400e+06 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00 356000.00 2300000.00
9af4c0edd 3862000.00 4.005500e+06 1.554667e+06 42000.00 2.823333e+05 10814666.66 3.056889e+06 11973333.34 5.352667e+06 3012000.00 1.049120e+07 1.681867e+07 0.000000e+00 2.286500e+06 1.470909e+05 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00 1838333.34 0.00
e10172455 972000.00 1.117913e+08 3.862000e+06 4005500.00 1.554667e+06 42000.00 2.823333e+05 10814666.66 3.056889e+06 11973333.34 5.352667e+06 3.012000e+06 1.049120e+07 1.681867e+07 0.000000e+00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00 4870000.00
6d93dcb5f 1859333.34 9.720000e+05 1.117913e+08 3862000.00 4.005500e+06 1554666.66 4.200000e+04 282333.34 1.081467e+07 3056888.88 1.197333e+07 5.352667e+06 3.012000e+06 1.049120e+07 1.681867e+07 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00 0.00 600000.00
fcf9edf33 1060000.00 7.279000e+06 1.859333e+06 972000.00 1.117913e+08 3862000.00 4.005500e+06 1554666.66 4.200000e+04 282333.34 1.081467e+07 3.056889e+06 1.197333e+07 5.352667e+06 3.012000e+06 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00 707000.00 400000.00
06cd03d09 3530500.00 0.000000e+00 1.060000e+06 7279000.00 1.859333e+06 972000.00 1.117913e+08 3862000.00 4.005500e+06 1554666.66 4.200000e+04 2.823333e+05 1.081467e+07 3.056889e+06 1.197333e+07 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34 11115200.00 547000.00
a9b6b48d9 3095200.00 2.000000e+07 3.530500e+06 0.00 1.060000e+06 7279000.00 1.859333e+06 972000.00 1.117913e+08 3862000.00 4.005500e+06 1.554667e+06 4.200000e+04 2.823333e+05 1.081467e+07 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00 25300000.00 2253333.34
f5fcec8dd 121000.00 6.814000e+06 3.095200e+06 20000000.00 3.530500e+06 0.00 1.060000e+06 7279000.00 1.859333e+06 972000.00 1.117913e+08 3.862000e+06 4.005500e+06 1.554667e+06 4.200000e+04 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00 819750.00
97dc5416f 5187333.34 1.210000e+05 6.814000e+06 3095200.00 2.000000e+07 3530500.00 0.000000e+00 1060000.00 7.279000e+06 1859333.34 9.720000e+05 1.117913e+08 3.862000e+06 4.005500e+06 1.554667e+06 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00 40000.00
a5c7e6ca0 588000.00 5.187333e+06 1.210000e+05 6814000.00 3.095200e+06 20000000.00 3.530500e+06 0.00 1.060000e+06 7279000.00 1.859333e+06 9.720000e+05 1.117913e+08 3.862000e+06 4.005500e+06 1554666.66 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00 25100000.00
950eeb8e9 2779666.66 5.880000e+05 5.187333e+06 121000.00 6.814000e+06 3095200.00 2.000000e+07 3530500.00 0.000000e+00 1060000.00 7.279000e+06 1.859333e+06 9.720000e+05 1.117913e+08 3.862000e+06 4005500.00 1554666.66 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00 22134000.00
f51433ccc 1227333.34 2.779667e+06 5.880000e+05 5187333.34 1.210000e+05 6814000.00 3.095200e+06 20000000.00 3.530500e+06 0.00 1.060000e+06 7.279000e+06 1.859333e+06 9.720000e+05 1.117913e+08 3862000.00 4005500.00 1554666.66 42000.00 282333.34 10814666.66 3056888.88 11973333.34 5352666.66 3012000.00 10491200.00 16818666.66 0.00 2286500.00 147090.90 3420000.00 8260400.00 14145000.00 1448888.88 2190000.00 450000.00 23985000.00 30000000.00 3252500.00 2090000.00

In [252]:
from leak_rows import *
from leak_cols import *

def row_equal(df, r1, r2, lag):
    return np.all(df.loc[r1].iloc[:-(lag)].values == df.loc[r2].iloc[lag:].values)
        
def check_leak_cols(df, leak_cols, leak_rows):
    for i in range(len(leak_rows) - 1):
        r = leak_rows[i]
        r_next = leak_rows[i + 1]
        if not (row_equal(df[leak_cols], r, r_next, 1) or row_equal(df[leak_cols], r, r_next, 2)):
#             print ('Leak cols are wrong: ', leak_cols)
            return False
    return True

for i in range(len(leak_list)):
    if not check_leak_cols(train, leak_list[i], leak_rows):
        print (i)


32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
54
55
56
57
58
59
60
61
62
63
64
65
66
67
71
72

In [243]:
len(set(leak_rows))


Out[243]:
83

In [196]:
from leak_rows import leak_list

leak_cols = []
tot_len = 0
i = 0
for cols in leak_list:
    tot_len += len(cols)
    print (i, len(cols))
    leak_cols += cols
    if i == 31:
        break
    i += 1
print(tot_len, len(set(leak_cols)))
# i = 31
# print(len(leak_list[i]))
# train.loc[valid_index, leak_list[i]]
# leak_col = leak_list[i]
# find_leak_col(leak_col, other_cols)
# val = 45138000
# train_leaks = train[leak_list[i]].apply(lambda x: len(x[x == val]), axis = 1)
# train_leaks[train_leaks != 0].sort_values(ascending = False).shape


0 40
1 40
2 40
3 40
4 40
5 40
6 40
7 40
8 40
9 40
10 40
11 40
12 40
13 40
14 40
15 40
16 40
17 40
18 40
19 40
20 40
21 40
22 40
23 40
24 40
25 40
26 40
27 40
28 40
29 41
30 40
31 40
1281 1281