Commit be12257b7252a05d261bce8d29bd74de5f23ecd2

Authored by Chunk
1 parent b93fbc48

data-feat-model framework almost established.

@@ -12,6 +12,8 @@ import time @@ -12,6 +12,8 @@ import time
12 import StringIO 12 import StringIO
13 import ConfigParser 13 import ConfigParser
14 14
  15 +import numpy as np
  16 +
15 17
16 class Timer(): 18 class Timer():
17 def __init__(self): 19 def __init__(self):
@@ -134,19 +136,18 @@ def bits2bytes(arry_bits): @@ -134,19 +136,18 @@ def bits2bytes(arry_bits):
134 """ 136 """
135 str_bits = ''.join(map(str, arry_bits)) 137 str_bits = ''.join(map(str, arry_bits))
136 arry_bytes = [int(str_bits[i:i + 8], 2) for i in range(0, len(str_bits), 8)] 138 arry_bytes = [int(str_bits[i:i + 8], 2) for i in range(0, len(str_bits), 8)]
137 - return np.array(arry_bytes,dtype=np.uint8).ravel()  
138 -  
139 - 139 + return np.array(arry_bytes, dtype=np.uint8).ravel()
140 140
141 141
142 def test_grammer(): 142 def test_grammer():
143 - a = 'fsaf'  
144 - b = ['dasf', 'dff']  
145 - c = 'dgfsfdg'  
146 - # print a + b  
147 - print [a] + b # ['fsaf', 'dasf', 'dff']  
148 - print [a] + [b] # ['fsaf', ['dasf', 'dff']]  
149 - print [a] + [c] # ['fsaf', 'dgfsfdg'] 143 + a = 'fsaf'
  144 + b = ['dasf', 'dff']
  145 + c = 'dgfsfdg'
  146 + # print a + b
  147 + print [a] + b # ['fsaf', 'dasf', 'dff']
  148 + print [a] + [b] # ['fsaf', ['dasf', 'dff']]
  149 + print [a] + [c] # ['fsaf', 'dgfsfdg']
  150 +
150 151
151 if __name__ == '__main__': 152 if __name__ == '__main__':
152 timer = Timer() 153 timer = Timer()
common.pyc
No preview for this file type
1 __author__ = 'chunk' 1 __author__ = 'chunk'
2 2
3 from mdata import * 3 from mdata import *
4 -from mfeat import HOG 4 +from mfeat import HOG, IntraBlockDiff
5 5
6 import os, sys 6 import os, sys
7 from PIL import Image 7 from PIL import Image
@@ -138,19 +138,40 @@ class DataCV(DataDumperBase): @@ -138,19 +138,40 @@ class DataCV(DataDumperBase):
138 pass 138 pass
139 139
140 140
141 - def get_feat(self, feattype='hog'): 141 + def get_feat(self, image, feattype='hog', **kwargs):
  142 + size = kwargs.get('size', (48, 48))
142 143
143 - dict_tagbuf = {} 144 + if feattype == 'hog':
  145 + feater = HOG.FeatHOG(size=size)
  146 + elif feattype == 'ibd':
  147 + feater = IntraBlockDiff.FeatIntraBlockDiff()
  148 + else:
  149 + raise Exception("Unknown feature type!")
  150 +
  151 + desc = feater.feat(image)
  152 +
  153 + return desc
  154 +
  155 + def extract_feat(self, feattype='hog'):
  156 +
  157 + if feattype == 'hog':
  158 + feater = HOG.FeatHOG(size=(48, 48))
  159 + elif feattype == 'ibd':
  160 + feater = IntraBlockDiff.FeatIntraBlockDiff()
  161 + else:
  162 + raise Exception("Unknown feature type!")
  163 +
  164 + list_image = []
144 with open(self.list_file, 'rb') as tsvfile: 165 with open(self.list_file, 'rb') as tsvfile:
145 tsvfile = csv.reader(tsvfile, delimiter='\t') 166 tsvfile = csv.reader(tsvfile, delimiter='\t')
146 for line in tsvfile: 167 for line in tsvfile:
147 - dict_tagbuf[line[0] + '.jpg'] = line[1] 168 + list_image.append(line[0])
148 169
149 dict_featbuf = {} 170 dict_featbuf = {}
150 - for imgname, imgtag in dict_tagbuf.items(): 171 + for imgname in list_image:
151 # if imgtag == 'True': 172 # if imgtag == 'True':
152 - image = self.img_dir + imgname[:3] + '/' + imgname[3:]  
153 - desc = HOG.FeatHOG().feat(image, size=(48, 48)) 173 + image = self.img_dir + imgname[:3] + '/' + imgname[3:] + '.jpg'
  174 + desc = feater.feat(image)
154 dict_featbuf[imgname] = desc 175 dict_featbuf[imgname] = desc
155 176
156 for imgname, desc in dict_featbuf.items(): 177 for imgname, desc in dict_featbuf.items():
@@ -184,3 +205,33 @@ class DataCV(DataDumperBase): @@ -184,3 +205,33 @@ class DataCV(DataDumperBase):
184 raise 205 raise
185 pass 206 pass
186 207
  208 + def load_data(self, mode='local', feattype='hog'):
  209 + INDEX = []
  210 + X = []
  211 + Y = []
  212 +
  213 + if mode == "local":
  214 +
  215 + dict_tagbuf = {}
  216 + with open(self.list_file, 'rb') as tsvfile:
  217 + tsvfile = csv.reader(tsvfile, delimiter='\t')
  218 + for line in tsvfile:
  219 + imgname = line[0] + '.jpg'
  220 + dict_tagbuf[imgname] = line[1]
  221 +
  222 + dict_dataset = {}
  223 + for path, subdirs, files in os.walk(self.feat_dir):
  224 + for name in files:
  225 + featpath = os.path.join(path, name)
  226 + with open(featpath, 'rb') as featfile:
  227 + imgname = path.split('/')[-1] + name.replace('.' + feattype, '.jpg')
  228 + dict_dataset[imgname] = json.loads(featfile.read())
  229 +
  230 + for imgname, tag in dict_tagbuf.items():
  231 + tag = 1 if tag == 'True' else 0
  232 + INDEX.append(imgname)
  233 + X.append(dict_dataset[imgname])
  234 + Y.append(tag)
  235 +
  236 + return X, Y
  237 +
mdata/CV.pyc
No preview for this file type
1 __author__ = 'chunk' 1 __author__ = 'chunk'
2 2
3 from mdata import * 3 from mdata import *
4 -from mfeat import * 4 +from mfeat import HOG, IntraBlockDiff
5 5
6 import os, sys 6 import os, sys
7 import base64 7 import base64
@@ -146,8 +146,73 @@ class DataMSR(DataDumperBase): @@ -146,8 +146,73 @@ class DataMSR(DataDumperBase):
146 raise 146 raise
147 pass 147 pass
148 148
149 - def get_feat(self, feattype):  
150 - pass  
151 149
152 - def store_feat(self, feattype):  
153 - pass 150 + def get_feat(self, image, feattype='ibd', **kwargs):
  151 + size = kwargs.get('size', (48, 48))
  152 +
  153 + if feattype == 'hog':
  154 + feater = HOG.FeatHOG(size=size)
  155 + elif feattype == 'ibd':
  156 + feater = IntraBlockDiff.FeatIntraBlockDiff()
  157 + else:
  158 + raise Exception("Unknown feature type!")
  159 +
  160 + desc = feater.feat(image)
  161 +
  162 + return desc
  163 +
  164 + def extract_feat(self, feattype='ibd'):
  165 +
  166 + if feattype == 'hog':
  167 + feater = HOG.FeatHOG(size=(48, 48))
  168 + elif feattype == 'ibd':
  169 + feater = IntraBlockDiff.FeatIntraBlockDiff()
  170 + else:
  171 + raise Exception("Unknown feature type!")
  172 +
  173 + list_image = []
  174 + with open(self.list_file, 'rb') as tsvfile:
  175 + tsvfile = csv.reader(tsvfile, delimiter='\t')
  176 + for line in tsvfile:
  177 + list_image.append(line[0])
  178 +
  179 + dict_featbuf = {}
  180 + for imgname in list_image:
  181 + # if imgtag == 'True':
  182 + image = self.img_dir + imgname
  183 + desc = feater.feat(image)
  184 + dict_featbuf[imgname] = desc
  185 +
  186 + for imgname, desc in dict_featbuf.items():
  187 + # print imgname, desc
  188 + dir = self.feat_dir + imgname[:4]
  189 + if not os.path.exists(dir):
  190 + os.makedirs(dir)
  191 + featpath = dir + imgname[4:].split('.')[0] + '.' + feattype
  192 + with open(featpath, 'wb') as featfile:
  193 + featfile.write(json.dumps(desc.tolist()))
  194 +
  195 + def store_feat(self, feattype='ibd'):
  196 + if self.table == None:
  197 + self.table = self.get_table()
  198 +
  199 + dict_featbuf = {}
  200 + for path, subdirs, files in os.walk(self.feat_dir):
  201 + for name in files:
  202 + featpath = os.path.join(path, name)
  203 + # print featpath
  204 + with open(featpath, 'rb') as featfile:
  205 + imgname = path.split('/')[-1] + name.replace('.' + feattype, '.jpg')
  206 + dict_featbuf[imgname] = featfile.read()
  207 +
  208 + try:
  209 + # with self.table.batch(batch_size=5000) as b:
  210 + # for imgname, featdesc in dict_featbuf.items():
  211 + # b.put(imgname, {'cf_feat:' + feattype: featdesc})
  212 + with self.table.batch(batch_size=5000) as b:
  213 + for key, data in self.table.scan():
  214 + b.put(key, {'cf_feat:' + feattype: dict_featbuf[key]})
  215 +
  216 + except ValueError:
  217 + raise
  218 + pass
mdata/MSR.pyc
No preview for this file type
mdata/__init__.py
@@ -9,6 +9,7 @@ class DataDumperBase(object): @@ -9,6 +9,7 @@ class DataDumperBase(object):
9 Base class for image data dumping & retrieving. 9 Base class for image data dumping & retrieving.
10 A regular directory pattern would be like this: 10 A regular directory pattern would be like this:
11 11
  12 + dst
12 ├── Dev (category) 13 ├── Dev (category)
13 ├── file-tag.tsv (list_file) 14 ├── file-tag.tsv (list_file)
14 15
@@ -50,8 +51,9 @@ class DataDumperBase(object): @@ -50,8 +51,9 @@ class DataDumperBase(object):
50 └── ... 51 └── ...
51 52
52 53
53 - convention:  
54 - 'img' for image file data while 'image' for file path; 54 + Convention:
  55 +
  56 + 'im' or 'img' is for image file data while 'image' or 'image_path' for file path;
55 57
56 """ 58 """
57 59
@@ -86,10 +88,21 @@ class DataDumperBase(object): @@ -86,10 +88,21 @@ class DataDumperBase(object):
86 def store_tag(self, feattype): 88 def store_tag(self, feattype):
87 pass 89 pass
88 90
89 - def get_feat(self, feattype): 91 + def store_feat(self, feattype):
90 pass 92 pass
91 93
92 - def store_feat(self, feattype): 94 +
  95 + def get_feat(self, image, feattype):
  96 + pass
  97 +
  98 + def extract_feat(self, feattype):
93 pass 99 pass
94 100
95 101
  102 + def load_data(self, mode):
  103 + pass
  104 +
  105 +
  106 +
  107 +
  108 +
mdata/__init__.pyc
No preview for this file type
mfeat/HOG.pyc
No preview for this file type
mfeat/IntraBlockDiff.pyc
No preview for this file type
mfeat/__init__.pyc
No preview for this file type
mjpeg/__init__.pyc
No preview for this file type
mjpeg/base.pyc
No preview for this file type
mjpeg/dct.pyc
No preview for this file type
@@ -28,113 +28,106 @@ class ModelSVM(ModelBase): @@ -28,113 +28,106 @@ class ModelSVM(ModelBase):
28 ModelBase.__init__(self) 28 ModelBase.__init__(self)
29 29
30 30
31 - def load(self, file, mode='local'):  
32 - timer = Timer()  
33 - INDEX = []  
34 - X = []  
35 - Y = []  
36 -  
37 - base_dir = '/home/hadoop/data/HeadShoulder/'  
38 - dir = base_dir + 'Img/'  
39 - maplst = dir + 'images_map_Train.tsv'  
40 - dict_tagbuf = {}  
41 - with open(maplst, 'rb') as tsvfile:  
42 - tsvfile = csv.reader(tsvfile, delimiter='\t')  
43 - for line in tsvfile:  
44 - imgname = line[0] + '.jpg'  
45 - dict_tagbuf[imgname] = line[1]  
46 -  
47 - dir = base_dir + 'Feat/'  
48 - dict_dataset = {} 31 + def _train_sk(self, X, Y):
  32 + lin_clf = svm.LinearSVC()
  33 + lin_clf.fit(X, Y)
  34 + with open('res/svm_sk.model', 'wb') as modelfile:
  35 + model = pickle.dump(lin_clf, modelfile)
49 36
50 - timer.mark()  
51 - for path, subdirs, files in os.walk(dir + 'Train/'):  
52 - for name in files:  
53 - featpath = os.path.join(path, name)  
54 - # print featpath  
55 - with open(featpath, 'rb') as featfile:  
56 - imgname = path.split('/')[-1] + name.replace('.hog', '.jpg')  
57 - dict_dataset[imgname] = json.loads(featfile.read())  
58 - timer.report() # 5.122354s 37 + self.model = lin_clf
59 38
60 - timer.mark()  
61 - for imgname, tag in dict_tagbuf.items():  
62 - tag = 1 if tag == 'True' else 0  
63 - INDEX.append(imgname)  
64 - X.append(dict_dataset[imgname])  
65 - Y.append(tag)  
66 - timer.report() # 0.047625s 39 + return lin_clf
67 40
68 - return X, Y  
69 41
  42 + def _predict_sk(self, feat, model=None):
  43 + """N.B. sklearn.svm.base.predict :
  44 + Perform classification on samples in X.
  45 + Parameters
  46 + ----------
  47 + X : {array-like, sparse matrix}, shape = [n_samples, n_features]
70 48
71 - def model_svm_train_sk(self,X, Y):  
72 - timer = Timer()  
73 - timer.mark()  
74 - lin_clf = svm.LinearSVC()  
75 - lin_clf.fit(X, Y)  
76 - with open('res/tmp.model', 'wb') as modelfile:  
77 - model = pickle.dump(lin_clf, modelfile) 49 + Returns
  50 + -------
  51 + y_pred : array, shape = [n_samples]
  52 + Class labels for samples in X.
  53 + """
  54 + if model is None:
  55 + if self.model != None:
  56 + model = self.model
  57 + else:
  58 + with open('res/svm_sk.model', 'rb') as modelfile:
  59 + model = pickle.load(modelfile)
78 60
79 - timer.report() 61 + return model.predict(feat)
80 62
81 - return lin_clf 63 + def _test_sk(self, X, Y, model=None):
  64 + if model is None:
  65 + if self.model != None:
  66 + model = self.model
  67 + else:
  68 + with open('res/svm_sk.model', 'rb') as modelfile:
  69 + model = pickle.load(modelfile)
82 70
  71 + result_Y = np.array(self._predict_sk(X, model))
83 72
84 - def model_svm_predict_sk(self,image, clf=None):  
85 - if clf is None:  
86 - with open('res/tmp.model', 'rb') as modelfile:  
87 - clf = pickle.load(modelfile)  
88 - desc = feat_HOG(image, size=(48, 48))  
89 - return clf.predict(desc) 73 + print result_Y == Y
  74 + return np.mean(Y == result_Y)
90 75
91 76
92 - def model_svm_train_cv(self,X, Y): 77 + def _train_cv(self, X, Y):
93 svm_params = dict(kernel_type=cv2.SVM_LINEAR, 78 svm_params = dict(kernel_type=cv2.SVM_LINEAR,
94 svm_type=cv2.SVM_C_SVC, 79 svm_type=cv2.SVM_C_SVC,
95 C=2.67, gamma=5.383) 80 C=2.67, gamma=5.383)
96 81
  82 + X, Y = np.array(X, dtype=np.float32), np.array(Y, dtype=np.float32)
  83 +
97 timer = Timer() 84 timer = Timer()
98 timer.mark() 85 timer.mark()
99 svm = cv2.SVM() 86 svm = cv2.SVM()
100 svm.train(X, Y, params=svm_params) 87 svm.train(X, Y, params=svm_params)
101 - svm.save('res/svm_data.model') 88 + svm.save('res/svm_cv.model')
  89 +
  90 + self.model = svm
102 91
103 return svm 92 return svm
104 93
105 94
106 - def model_svm_predict_cv(self,image, svm=None):  
107 - if svm is None:  
108 - svm = cv2.SVM()  
109 - svm.load('res/svm_data.model') 95 + def _predict_cv(self, feat, model=None):
  96 + if model is None:
  97 + if self.model != None:
  98 + model = self.model
  99 + else:
  100 + with open('res/svm_cv.model', 'rb') as modelfile:
  101 + model = pickle.load(modelfile)
  102 + feat = np.array(feat, dtype=np.float32)
  103 +
  104 + return model.predict(feat)
  105 +
110 106
111 - desc = feat_HOG(image, size=(48, 48))  
112 - desc = np.float32(np.asarray(desc))  
113 - return svm.predict(desc) 107 + def _test_cv(self, X, Y, model=None):
  108 + if model is None:
  109 + if self.model != None:
  110 + model = self.model
  111 + else:
  112 + with open('res/svm_cv.model', 'rb') as modelfile:
  113 + model = pickle.load(modelfile)
114 114
  115 + X, Y = np.array(X, dtype=np.float32), np.array(Y, dtype=np.float32)
115 116
116 - def test_sk(self):  
117 - X, Y = load_data() 117 + # result_Y = np.array([self._predict_cv(x, model) for x in X])
  118 + result_Y = np.array(model.predict_all(X)).ravel()
118 119
119 - clf = model_svm_train_sk(X, Y)  
120 - for path, subdirs, files in os.walk('data/467/'):  
121 - for name in files:  
122 - imgpath = os.path.join(path, name)  
123 - print name, model_svm_predict_sk(imgpath, clf)  
124 - print clf.coef_.shape, clf.coef_ 120 + return np.mean(Y == result_Y)
125 121
126 122
127 - def test_cv(self):  
128 - X, Y = load_data()  
129 - X, Y = np.float32(np.asarray(X)), np.float32(np.asarray(Y))  
130 - print X, Y  
131 - svm = model_svm_train_cv(X, Y)  
132 - for path, subdirs, files in os.walk('data/467/'):  
133 - for name in files:  
134 - imgpath = os.path.join(path, name)  
135 - print name, model_svm_predict_cv(imgpath, svm) 123 + def train(self, X, Y):
  124 + return self._train_cv(X, Y)
136 125
  126 + def predict(self, feat, model=None):
  127 + return self._predict_cv(feat, model)
137 128
  129 + def test(self, X, Y, model=None):
  130 + return self._test_cv(X, Y, model)
138 131
139 132
140 133
mmodel/SVM.pyc 0 → 100644
No preview for this file type
mmodel/__init__.py
@@ -2,19 +2,17 @@ __author__ = 'chunk' @@ -2,19 +2,17 @@ __author__ = 'chunk'
2 2
3 __all__ = ['ModelBase', ] 3 __all__ = ['ModelBase', ]
4 4
  5 +
5 class ModelBase(object): 6 class ModelBase(object):
6 def __init__(self): 7 def __init__(self):
7 - pass  
8 -  
9 - def load(self, mode, file):  
10 - pass 8 + self.model = None
11 9
12 - def train(self): 10 + def train(self, X, Y):
13 pass 11 pass
14 12
15 - def test(self): 13 + def predict(self, feat, model=None):
16 pass 14 pass
17 15
18 - def predict(self): 16 + def test(self, X, Y, model=None):
19 pass 17 pass
20 18
mmodel/__init__.pyc 0 → 100644
No preview for this file type
msteg/__init__.pyc
No preview for this file type
msteg/steganalysis/MPB.pyc
No preview for this file type
msteg/steganalysis/__init__.pyc
No preview for this file type
res/svm_cv.model 0 → 100644
@@ -0,0 +1,319 @@ @@ -0,0 +1,319 @@
  1 +%YAML:1.0
  2 +my_svm: !!opencv-ml-svm
  3 + svm_type: C_SVC
  4 + kernel: { type:LINEAR }
  5 + C: 2.6699999999999999e+00
  6 + term_criteria: { epsilon:1.1920928955078125e-07, iterations:1000 }
  7 + var_all: 900
  8 + var_count: 900
  9 + class_count: 2
  10 + class_labels: !!opencv-matrix
  11 + rows: 1
  12 + cols: 2
  13 + dt: i
  14 + data: [ 0, 1 ]
  15 + sv_total: 1
  16 + support_vectors:
  17 + - [ 1.00635447e-01, 3.80848616e-01, -3.61999944e-02,
  18 + 6.16463959e-01, -2.13634253e-01, 5.80662847e-01,
  19 + 1.32952228e-01, 6.20944738e-01, -1.50688276e-01,
  20 + -3.70861590e-01, -5.90423107e-01, 4.63727176e-01,
  21 + -2.05607280e-01, 2.41474081e-02, -1.48096114e-01,
  22 + -3.15087080e-01, -4.53733578e-02, -2.70828068e-01,
  23 + -2.03975633e-01, 2.82555878e-01, 9.47522465e-03,
  24 + -1.56084165e-01, 2.07339182e-01, -5.33106327e-01,
  25 + -1.25123873e-01, -2.21039921e-01, 2.36624721e-02,
  26 + 1.96492359e-01, -3.15506011e-01, -8.20042118e-02,
  27 + -6.43781200e-02, -3.41593117e-01, 2.09613755e-01,
  28 + -3.63092989e-01, 5.35438620e-02, 4.83716935e-01,
  29 + 2.24727899e-01, -1.06053203e-01, 2.59556502e-01,
  30 + 1.01173162e-01, -1.20247312e-01, 6.69345260e-02,
  31 + 3.92155111e-01, 6.04222454e-02, 2.99450070e-01, 1.96121454e-01,
  32 + -2.54563857e-02, 3.81424576e-01, 5.82436204e-01,
  33 + -3.16342831e-01, 1.58296034e-01, 1.53645635e-01,
  34 + 2.66968310e-01, -2.09024653e-01, -1.76746130e-01,
  35 + -4.63609487e-01, 2.29493454e-01, -3.91426325e-01,
  36 + 4.17520814e-02, -4.45464216e-02, -2.52456944e-02,
  37 + -1.75413117e-01, -1.89545355e-03, -4.60857272e-01,
  38 + 6.53700605e-02, -3.92839074e-01, -1.48130864e-01,
  39 + 3.35914567e-02, -4.86958064e-02, 7.31010810e-02,
  40 + 5.15685491e-02, 4.33498286e-02, -6.18374608e-02,
  41 + 4.24069226e-01, -1.12407561e-02, -5.09570315e-02,
  42 + -2.56250173e-01, -1.85945898e-01, -8.57309029e-02,
  43 + -6.62742183e-02, 1.88151091e-01, -1.12024345e-01,
  44 + 8.67723599e-02, 4.68617022e-01, -4.08511579e-01,
  45 + 4.94396180e-01, -2.02981289e-03, 1.70159534e-01,
  46 + -1.20491460e-01, 6.62366748e-02, 2.55558491e-01,
  47 + 1.52796045e-01, 1.26943201e-01, 2.59416312e-01, 4.79911327e-01,
  48 + -5.69163524e-02, -2.66524225e-01, 1.56104997e-01,
  49 + -2.32822329e-01, 6.70313761e-02, -1.03652611e-01,
  50 + 6.28767833e-02, -3.24732393e-01, -4.04358841e-02,
  51 + 3.57844740e-01, -1.59993663e-01, 1.35739282e-01,
  52 + -1.66464984e-01, 2.23796099e-01, 1.07447878e-01,
  53 + -1.44861355e-01, -1.36439964e-01, -1.07676782e-01,
  54 + -2.58990467e-01, 1.71149686e-01, -6.26204908e-02,
  55 + 2.75087565e-01, -1.36915579e-01, 3.37498523e-02,
  56 + -3.26198280e-01, -8.42690691e-02, 6.43373579e-02,
  57 + 2.99615502e-01, 3.18146795e-01, 1.13480799e-01, 3.62246484e-01,
  58 + -4.33289975e-01, 1.07924186e-01, 3.01304795e-02,
  59 + -1.77692845e-01, 3.31654578e-01, 3.22302759e-01,
  60 + 2.99436580e-02, 2.93032467e-01, 2.17150301e-01,
  61 + -6.47793710e-02, 6.06899321e-01, -2.77149528e-01,
  62 + 3.97809565e-01, -1.31793424e-01, -5.68050444e-02,
  63 + -9.24519729e-03, -3.72854285e-02, 1.62220318e-02,
  64 + 2.68669844e-01, -1.95947185e-01, 3.97543490e-01,
  65 + -3.82243127e-01, -1.73717774e-02, -2.06354544e-01,
  66 + 1.30633742e-01, 1.71459280e-02, -2.50614416e-02,
  67 + -4.15923506e-01, -1.01500526e-01, 3.00851882e-01,
  68 + 1.15127452e-01, 4.06373411e-01, -2.02237535e-02,
  69 + -3.17377858e-02, -4.38075781e-01, 2.82054126e-01,
  70 + 2.44007245e-01, 1.02171618e-02, -4.09222037e-01,
  71 + -1.82712048e-01, 1.41949460e-01, 2.09071502e-01,
  72 + 3.96968752e-01, -4.83931676e-02, 3.59820187e-01,
  73 + 5.31860851e-02, -3.35021585e-01, -7.78729934e-03,
  74 + 5.17243564e-01, 3.03447902e-01, 1.55488417e-01,
  75 + -4.34996575e-01, -1.17763869e-01, -2.11806029e-01,
  76 + -1.10544242e-01, -2.30027605e-02, -9.00872946e-02,
  77 + -4.62244079e-02, -8.72705132e-02, -9.02773887e-02,
  78 + 4.49247569e-01, 5.96865341e-02, -3.21723908e-01,
  79 + -1.42104374e-02, 6.55051321e-02, -8.89712796e-02,
  80 + -8.20277706e-02, -8.21489915e-02, 1.18508145e-01,
  81 + 1.59893055e-02, -6.40436560e-02, -2.71267563e-01,
  82 + -1.10220641e-01, -5.91016822e-02, -4.78215665e-02,
  83 + -5.37244856e-01, -1.69124529e-01, -5.39994657e-01,
  84 + 2.37307459e-01, 3.48656982e-01, -2.44099542e-01,
  85 + -3.65893334e-01, -4.60833237e-02, 1.98111981e-01,
  86 + 4.00575042e-01, -2.18251944e-01, -2.97822505e-01,
  87 + -1.58445835e-02, 1.24876015e-01, 2.21260786e-01,
  88 + -4.74443519e-03, -1.11860886e-01, 1.94061294e-01,
  89 + -5.40344059e-01, 2.84244359e-01, 4.19820808e-02,
  90 + -5.81977665e-02, -1.86366230e-01, 4.36667278e-02,
  91 + 4.67892110e-01, -2.80440748e-01, 3.47547941e-02,
  92 + -1.95210159e-01, 4.24981713e-01, -8.47802777e-03,
  93 + 5.17698348e-01, 8.74939039e-02, 1.36059463e-01, 3.59049231e-01,
  94 + -2.43589759e-01, -2.37154573e-01, -2.10391641e-01,
  95 + 1.33849964e-01, 1.26020744e-01, 3.17737907e-01, 8.77629220e-02,
  96 + -2.90314406e-01, 1.06091984e-01, -3.25623930e-01,
  97 + 1.49367616e-01, 4.49452430e-01, -6.03571653e-01,
  98 + -1.35134980e-01, -1.86212286e-01, -6.36053532e-02,
  99 + -4.04700965e-01, 3.93387347e-01, 7.58373588e-02,
  100 + 1.58630893e-01, -2.97074318e-01, -6.31024316e-02,
  101 + -8.26277211e-02, 2.09499195e-01, -5.55910230e-01,
  102 + -1.63837731e-01, -5.68352565e-02, -1.78624451e-01,
  103 + 4.57595527e-01, 4.15257253e-02, 8.19090754e-02,
  104 + -2.88352501e-02, 1.42328158e-01, -5.77499866e-01,
  105 + -1.98957413e-01, -1.17174581e-01, 3.58100653e-01,
  106 + 1.29576251e-01, -5.10679960e-01, 4.64282364e-01,
  107 + 6.17439508e-01, -3.70196879e-01, -1.32932872e-01,
  108 + 3.72315884e-01, -9.86856893e-02, -1.07622653e-01,
  109 + -2.00453058e-01, -8.87186453e-02, 1.16703771e-01,
  110 + 3.83127034e-01, -9.71138328e-02, -3.65556568e-01,
  111 + -1.27786964e-01, 1.84972122e-01, -1.85317934e-01,
  112 + 4.09868538e-01, -1.69965446e-01, -5.17840890e-05,
  113 + -4.28935170e-01, 3.04130256e-01, 2.81031489e-01,
  114 + 5.69726706e-01, -7.42259994e-02, 3.21475059e-01,
  115 + -2.12511003e-01, 1.21038340e-01, 3.96257102e-01,
  116 + 2.49143653e-02, -1.64538890e-01, 1.54328689e-01,
  117 + 1.75869569e-01, 2.48459101e-01, 4.04792845e-01,
  118 + -6.21580482e-02, -7.23844618e-02, 7.88373351e-02,
  119 + 3.73393416e-01, -8.74925554e-02, -1.66681170e-01,
  120 + -7.90943131e-02, 2.02672854e-01, 7.68239722e-02,
  121 + 9.02600884e-02, -4.71254811e-02, 2.86396831e-01,
  122 + -2.63849676e-01, -4.64057565e-01, -5.49089849e-01,
  123 + 7.40074739e-02, -2.09049731e-01, -6.77129626e-01,
  124 + 1.51250303e-01, -4.06975389e-01, -1.34572625e-01,
  125 + 3.26507002e-01, -3.22229385e-01, -3.35293412e-02,
  126 + -4.54952121e-02, 2.51653671e-01, 4.26460177e-01,
  127 + -3.03449035e-02, -6.34379327e-01, 2.13949710e-01,
  128 + -1.49300456e-01, -6.67283535e-02, 8.68585482e-02,
  129 + -1.70287386e-01, -6.41310290e-02, 2.60481834e-01,
  130 + -9.75598022e-02, -2.47203901e-01, -4.21436906e-01,
  131 + 1.73840225e-01, 1.22388020e-01, 9.92035866e-02, 2.14033648e-01,
  132 + 7.97198862e-02, 2.90736467e-01, 6.50119603e-01, 5.84670529e-02,
  133 + 2.29897678e-01, -3.20720643e-01, 7.73743466e-02,
  134 + -8.46224651e-02, 5.39197437e-02, 5.25330007e-01,
  135 + 3.04211885e-01, 1.29241899e-01, -2.69837081e-01,
  136 + -1.14225700e-01, -1.31151713e-02, -1.83524579e-01,
  137 + 1.92088321e-01, -1.23598054e-01, 2.86853723e-02,
  138 + -1.24666309e-02, 2.53173143e-01, -2.58706957e-01,
  139 + 5.32174110e-01, -1.26037911e-01, 5.02591580e-02,
  140 + 3.57517570e-01, 1.17894955e-01, 3.31125259e-01, 1.11832783e-01,
  141 + -1.79290473e-01, -1.39324829e-01, 3.72836769e-01,
  142 + -2.65483037e-02, -1.67395875e-01, 5.63529611e-01,
  143 + 5.08670919e-02, -7.84262549e-03, 3.87350172e-01,
  144 + 5.38743213e-02, 8.22081603e-03, 1.18441164e-01,
  145 + -2.23839834e-01, -1.88571617e-01, -2.55691171e-01,
  146 + -2.32272804e-01, 1.10698558e-01, 1.60189956e-01,
  147 + -1.50728703e-01, -3.52475405e-01, 2.62110561e-01,
  148 + 2.03178152e-02, 2.34497096e-02, -4.24976766e-01,
  149 + 5.03326476e-01, 2.10730150e-01, -9.98831913e-03,
  150 + 1.62081886e-02, 7.54389465e-02, 4.21941847e-01,
  151 + -1.60509795e-01, 1.73621431e-01, 5.45915782e-01,
  152 + 2.99163818e-01, 4.56744194e-01, -3.41301024e-01,
  153 + 6.58374876e-02, -1.41524356e-02, 1.43691093e-01,
  154 + -5.04402220e-01, 2.94354204e-02, -3.33520882e-02,
  155 + 2.37460494e-01, -5.57382815e-02, 4.77534473e-01,
  156 + 4.80603397e-01, 4.56571132e-01, -3.32570984e-03,
  157 + 3.00093323e-01, -1.97803099e-02, -9.92052108e-02,
  158 + -1.69277862e-01, -4.89659727e-01, -1.40021265e-01,
  159 + -4.36200708e-01, -2.12517813e-01, 4.30000991e-01,
  160 + 1.04435697e-01, -2.64832586e-01, 1.62904188e-01,
  161 + -2.09938616e-01, 1.51157200e-01, -2.94751108e-01,
  162 + 3.47593576e-01, 1.15150958e-01, -1.48473740e-01,
  163 + -4.04219657e-01, 1.39522269e-01, 1.41910568e-01,
  164 + 1.70096129e-01, 1.25298530e-01, 1.40752703e-01,
  165 + -5.24976432e-01, -4.03096735e-01, 2.64235251e-02,
  166 + -1.55077040e-01, -8.64557475e-02, -2.62489468e-01,
  167 + -7.16328472e-02, 3.64777371e-02, 1.67107150e-01,
  168 + -2.99846113e-01, 1.14257867e-02, -1.80441439e-01,
  169 + -1.96311042e-01, 1.72985867e-01, -4.13630277e-01,
  170 + -2.38129884e-01, 3.64788383e-01, 5.47355087e-03,
  171 + -6.39616251e-01, -4.82780814e-01, 1.20370470e-01,
  172 + -3.08639929e-02, 3.75426486e-02, 1.56579107e-01,
  173 + 1.90658927e-01, 3.08710426e-01, -4.06683773e-01,
  174 + 2.41629630e-01, -4.27006871e-01, 5.36698818e-01,
  175 + -1.02933245e-02, 8.34081396e-02, 8.57154280e-02,
  176 + -2.27696016e-01, 3.46511334e-01, 9.71489847e-02,
  177 + -1.28396288e-01, 1.05923209e-02, 2.28354275e-01,
  178 + 1.11864723e-01, -5.58578432e-01, -3.75273645e-01,
  179 + 1.53951690e-01, 9.63799208e-02, -2.76815355e-01,
  180 + -1.46062893e-03, 1.54368356e-01, -4.47663158e-01,
  181 + -5.45116365e-01, 3.86440335e-03, -2.96955198e-01,
  182 + -1.67067081e-01, 3.17165136e-01, -3.33658189e-01,
  183 + -2.41002664e-01, 2.65695900e-01, 2.19498545e-01,
  184 + 9.91022587e-02, 3.90363902e-01, 9.15065333e-02,
  185 + -3.49815153e-02, -6.08131923e-02, -1.09997824e-01,
  186 + 1.31603274e-02, -9.58568230e-02, 2.42391452e-01,
  187 + 1.02727808e-01, 1.97018266e-01, -2.37632632e-01,
  188 + 1.44086629e-01, -2.68510580e-01, 2.08839029e-01,
  189 + 3.79983604e-01, 1.04091682e-01, -3.53685409e-01,
  190 + 5.86204529e-01, 4.95225750e-03, -4.48516347e-02,
  191 + 1.01068750e-01, 3.92818093e-01, -3.62113006e-02,
  192 + -1.46802768e-01, 1.35388792e-01, 1.38382092e-01,
  193 + 1.48070589e-01, -4.25118625e-01, -1.75745875e-01,
  194 + 3.78002465e-01, -2.10354820e-01, -5.19592986e-02,
  195 + 1.10778727e-01, -3.51839453e-01, 3.32946271e-01,
  196 + -5.59986532e-01, -4.17612940e-01, -2.77652964e-02,
  197 + 3.45188566e-02, 2.78745949e-01, 2.07424849e-01,
  198 + -2.69175708e-01, -1.95480496e-01, 5.10237664e-02,
  199 + 5.31870425e-01, -4.50279802e-01, 2.10754082e-01,
  200 + -2.88423267e-03, 3.27303797e-01, -1.07819043e-01,
  201 + 6.81314945e-01, -1.36909872e-01, 3.67804885e-01,
  202 + -2.26810232e-01, -1.21685497e-01, -6.76775500e-02,
  203 + -1.05786487e-01, 2.98110276e-01, -1.82659939e-01,
  204 + 2.66984217e-02, 3.62214088e-01, -6.90025762e-02,
  205 + 1.11846603e-01, -2.18714103e-01, 1.86836019e-01,
  206 + -1.56641662e-01, -3.86389971e-01, 2.08430424e-01,
  207 + 1.93191469e-01, 6.45032758e-03, 2.34401941e-01,
  208 + -2.55201548e-01, 2.68865049e-01, -3.03713828e-02,
  209 + 1.50862843e-01, -6.15152597e-01, -3.73961985e-01,
  210 + 1.84285045e-01, -3.92355651e-01, -1.17721006e-01,
  211 + -2.84718096e-01, -4.88695465e-02, -1.58195123e-02,
  212 + 2.48721391e-01, -4.00804073e-01, 3.41714561e-01,
  213 + 3.13368082e-01, -3.82878557e-02, 2.83384681e-01,
  214 + -2.80475527e-01, -1.88924149e-01, -5.15471287e-02,
  215 + 4.50969785e-01, 4.25203331e-03, -7.25841299e-02,
  216 + -4.02388424e-02, 2.48287618e-01, 2.72535890e-01,
  217 + -1.53794155e-01, 7.51439631e-02, -3.72893900e-01,
  218 + 1.99668854e-01, -3.21120135e-02, -7.52131417e-02,
  219 + -5.15982844e-02, -7.21984282e-02, 6.63316548e-01,
  220 + -2.96146065e-01, 6.10040091e-02, 1.08289234e-01,
  221 + -1.04519345e-01, -9.49029103e-02, -4.55625504e-01,
  222 + 4.32514176e-02, -3.83038796e-03, 4.81194317e-01,
  223 + -1.67021409e-01, 6.21539131e-02, -1.63614884e-01,
  224 + -3.69821846e-01, -1.62424017e-02, -1.80038199e-01,
  225 + -1.98606163e-01, -3.63899648e-01, 1.15855664e-01,
  226 + 2.24566936e-01, -2.42324501e-01, 5.75001359e-01,
  227 + -4.66853976e-02, 1.42434925e-01, -1.71716660e-01,
  228 + 3.72132510e-01, 3.09737891e-01, -9.43784695e-03,
  229 + 2.23572459e-02, 2.27866117e-02, -4.98219639e-01,
  230 + -7.04279840e-02, -4.27559912e-02, -2.19071344e-01,
  231 + -5.80286868e-02, 1.91626325e-01, 1.92536458e-01,
  232 + -1.91773325e-01, 9.86482669e-03, 4.37478274e-01,
  233 + -1.41508235e-02, 6.72889128e-02, 2.20997795e-01,
  234 + 3.33521247e-01, -2.66620547e-01, 1.46219224e-01,
  235 + -8.74190778e-02, 6.19130909e-01, -1.54305443e-01,
  236 + -9.43374559e-02, -1.86473608e-01, -1.46451518e-01,
  237 + 7.15432912e-02, -1.81693196e-01, -1.13373091e-02,
  238 + -6.02997951e-02, -2.43861333e-01, -1.20440178e-01,
  239 + 3.15330893e-01, 2.81973749e-01, -1.08011521e-01,
  240 + 2.00957492e-01, 8.11613277e-02, -1.70868173e-01,
  241 + 1.17361508e-01, -2.41528228e-01, -5.12285307e-02,
  242 + -5.40408939e-02, 2.95093685e-01, -1.56089067e-01,
  243 + -6.90469146e-01, -3.65456357e-03, 7.04098493e-02,
  244 + -9.66299176e-02, -5.12030572e-02, 2.51964360e-01,
  245 + 3.58488597e-02, 6.95013642e-01, 1.39234260e-01, 3.39805812e-01,
  246 + -1.59381479e-01, 4.17184323e-01, -8.45175609e-02,
  247 + 3.42082322e-01, 3.35495412e-01, -6.75573274e-02,
  248 + -1.55734196e-01, 3.24536055e-01, -1.03536710e-01,
  249 + 3.33302289e-01, -1.24088511e-01, 2.30881527e-01,
  250 + -7.11121336e-02, -1.00211062e-01, 1.86521187e-01,
  251 + 8.83157849e-02, 2.13061988e-01, -1.84731558e-01,
  252 + 6.97695464e-02, 4.76718128e-01, -1.30899161e-01,
  253 + -3.95139813e-01, 1.07154146e-01, -2.48354554e-01,
  254 + -3.61816287e-01, 4.31138515e-01, -1.06623344e-01,
  255 + -4.58101928e-01, -2.23259002e-01, 4.54964116e-02,
  256 + -4.71347183e-01, 2.82200336e-01, -1.99851170e-01,
  257 + 3.69985849e-02, 4.05309796e-01, -1.72780603e-02,
  258 + 3.40874881e-01, -2.75685996e-01, 2.43859753e-01,
  259 + 4.10324723e-01, 5.24578877e-02, 8.00840259e-02,
  260 + -6.86981604e-02, 4.91635621e-01, -1.18908718e-01,
  261 + -6.08145036e-02, -1.75886080e-01, 2.98066884e-01,
  262 + -1.31822675e-01, 2.65567780e-01, -2.92782128e-01,
  263 + -6.57639921e-01, -1.34164244e-01, 9.24002603e-02,
  264 + -7.00423643e-02, 4.08357009e-02, -4.65526223e-01,
  265 + -3.02779078e-02, -2.29174390e-01, -5.53770103e-02,
  266 + 3.84121180e-01, -2.95284539e-01, -1.20111905e-01,
  267 + -1.89169347e-01, -2.93912515e-02, 3.77128739e-03,
  268 + 3.34948078e-02, -4.21449482e-01, 2.25277305e-01,
  269 + -1.37642473e-01, -2.32760031e-02, -4.58599702e-02,
  270 + -1.47618234e-01, -1.18895071e-02, -1.37809962e-01,
  271 + 2.92905539e-01, -1.84893534e-02, -4.83157076e-02,
  272 + 3.05987835e-01, -7.29814321e-02, -3.15960765e-01,
  273 + -4.60345715e-01, -1.07046194e-01, 1.82802603e-01,
  274 + -1.80641711e-01, 1.76112682e-01, 1.86231136e-02,
  275 + 1.37297302e-01, -5.23265779e-01, 3.09553087e-01,
  276 + 3.14518332e-01, -2.98973918e-01, 2.55388051e-01,
  277 + 4.02834177e-01, -1.05708390e-01, 5.69513552e-02,
  278 + -2.22940654e-01, 1.16365194e-01, -1.78536698e-02,
  279 + -1.79674000e-01, 2.12301463e-01, 5.01181670e-02,
  280 + 2.33651429e-01, 9.96237546e-02, -1.97195768e-01,
  281 + 2.23892361e-01, -2.09036842e-01, 6.88388646e-02,
  282 + 6.18318841e-02, -3.34334970e-01, -2.90876329e-01,
  283 + 1.17357962e-01, 3.53356063e-01, -1.00525208e-01,
  284 + 3.05819720e-01, 2.93604583e-01, 5.67990579e-02,
  285 + -1.26378313e-01, -1.26170188e-01, 1.06249660e-01,
  286 + -2.14072056e-02, -4.95804809e-02, -1.03100706e-02,
  287 + 5.12418163e-04, -1.36731952e-01, -7.37648308e-02,
  288 + 1.96228698e-01, -6.72558323e-02, -1.24358177e-01,
  289 + -9.39830542e-02, 4.75961983e-01, 9.50917527e-02,
  290 + 4.15876746e-01, 1.41114518e-01, 1.98907271e-01,
  291 + -1.99507982e-01, 3.13885242e-01, -3.15521240e-01,
  292 + 2.42021441e-01, 2.31652319e-01, -4.59780186e-01,
  293 + 1.88241582e-02, -2.36623734e-01, 3.29642266e-01,
  294 + -6.21061921e-02, 3.01684141e-01, 5.67733906e-02,
  295 + 1.78491510e-02, 1.20198198e-01, -4.94834304e-01,
  296 + -2.78854519e-01, 7.25529809e-03, -1.12130277e-01,
  297 + 5.98911606e-02, 1.37148827e-01, -1.79479152e-01,
  298 + 1.54982030e-01, 2.27190051e-02, 1.83249563e-01, 4.51547742e-01,
  299 + 1.55428752e-01, -5.13685979e-02, 1.12153314e-01,
  300 + 1.53186172e-01, 2.06783172e-02, -1.60872728e-01,
  301 + -3.41741025e-01, 2.00449526e-01, 9.83034223e-02,
  302 + 1.62472233e-01, -1.30619943e-01, -1.64210603e-01,
  303 + 2.26896137e-01, -3.64758760e-01, -6.58841953e-02,
  304 + 5.54984808e-01, 3.76383424e-01, 4.08599496e-01,
  305 + -2.42465481e-01, -2.06514783e-02, 5.33783473e-02,
  306 + 1.11794574e-02, -1.07440695e-01, 1.55651331e-01,
  307 + -2.05175787e-01, -1.22273723e-02, -9.18614417e-02,
  308 + -1.96771454e-02, -2.11976450e-02, 3.37859005e-01,
  309 + 1.40858158e-01, -2.61175871e-01, -2.54496515e-01,
  310 + -1.37110084e-01, 2.60234654e-01, 2.59515136e-01,
  311 + -6.09289110e-02, 1.22784421e-01, -9.18693766e-02,
  312 + 1.49260059e-01, 4.13678527e-01, 2.82856733e-01,
  313 + -3.79875749e-01, -6.14341676e-01 ]
  314 + decision_functions:
  315 + -
  316 + sv_count: 1
  317 + rho: 1.2788952397013760e+00
  318 + alpha: [ 1. ]
  319 + index: [ 0 ]
res/svm_sk.model 0 → 100644
@@ -0,0 +1,176 @@ @@ -0,0 +1,176 @@
  1 +ccopy_reg
  2 +_reconstructor
  3 +p0
  4 +(csklearn.svm.classes
  5 +LinearSVC
  6 +p1
  7 +c__builtin__
  8 +object
  9 +p2
  10 +Ntp3
  11 +Rp4
  12 +(dp5
  13 +S'loss'
  14 +p6
  15 +S'l2'
  16 +p7
  17 +sS'C'
  18 +p8
  19 +F1.0
  20 +sS'intercept_'
  21 +p9
  22 +cnumpy.core.multiarray
  23 +_reconstruct
  24 +p10
  25 +(cnumpy
  26 +ndarray
  27 +p11
  28 +(I0
  29 +tp12
  30 +S'b'
  31 +p13
  32 +tp14
  33 +Rp15
  34 +(I1
  35 +(I1
  36 +tp16
  37 +cnumpy
  38 +dtype
  39 +p17
  40 +(S'f8'
  41 +p18
  42 +I0
  43 +I1
  44 +tp19
  45 +Rp20
  46 +(I3
  47 +S'<'
  48 +p21
  49 +NNNI-1
  50 +I-1
  51 +I0
  52 +tp22
  53 +bI00
  54 +S'\xcf\xbbtl\x04`\x00@'
  55 +p23
  56 +tp24
  57 +bsS'verbose'
  58 +p25
  59 +I0
  60 +sS'dual'
  61 +p26
  62 +I01
  63 +sS'fit_intercept'
  64 +p27
  65 +I01
  66 +sS'class_weight_'
  67 +p28
  68 +g10
  69 +(g11
  70 +(I0
  71 +tp29
  72 +g13
  73 +tp30
  74 +Rp31
  75 +(I1
  76 +(I2
  77 +tp32
  78 +g20
  79 +I00
  80 +S'\x00\x00\x00\x00\x00\x00\xf0?\x00\x00\x00\x00\x00\x00\xf0?'
  81 +p33
  82 +tp34
  83 +bsS'penalty'
  84 +p35
  85 +g7
  86 +sS'multi_class'
  87 +p36
  88 +S'ovr'
  89 +p37
  90 +sS'random_state'
  91 +p38
  92 +NsS'raw_coef_'
  93 +p39
  94 +g10
  95 +(g11
  96 +(I0
  97 +tp40
  98 +g13
  99 +tp41
  100 +Rp42
  101 +(I1
  102 +(I1
  103 +I901
  104 +tp43
  105 +g20
  106 +I01
  107 +S'D\xb2\x81\xbf7k\xda?lx\xac\xc8\xad0\xe6\xbf\xb3\'\xdfq\x16\'\xdc?\xd9\x84\xe8\x97\xa2\x06\xf0\xbf\x82\x8d\xd7\xa7\xb9+\xe3?\xf2:D\xc8\xc7F\xe8\xbf;\x84\xdb=\xfa\x9c\xe5\xbf\xc6Ci\x1b\x9d,\xf3\xbfO\xd1m\x1cf)\xc4\xbf\xc6\x9e\x04\x91\x8e\xef\xf2?\xe7%=\tk\xcf\xe2?\xa3HfY%\x8b\xd7\xbf\x1fQ\x7f\'\x1a\xbc\xda?[\x07%\xea\x86\xb4\xea\xbf\r\xe5\x89\xca\xbeZ\xdd?\x17\xa8>\xf9\xc5P\xd3?\xb5\xa8\xb4 |4\xc9?&(\x96\x0e\\\xe6\xeb?.+/\x1a\xaf\x00\xea?\xc5;eK\xa0\xa7\xe5\xbf\xb0\xac\x15[M \xcb?\x8d\xd1\xcd]Y\x1b\xc9\xbf0b\x934\x16\x83\xcf\xbf\xde\t\xe0\xed\xdf\x85\xfc?C@rN\xc37\xa3\xbf\x8ei\x00\x9e\xb3.\xc9?\xa8\x82\xf1N\x103\xe1\xbf\xa2\xc5\x7f\x08Il\xe3\xbf7\x9f\xadv(^\xe5?\x08\x10f$C\x12\xb4?\x8c\t&\x1c\xed\xeb\xcd\xbf=?\xdd\x19\x18\xfc\xeb?0d\xe4\xb0k\xef\xed\xbf\xc1\xc3D\x9c\xed\xfb\xe0?\xc0l\xfc\xf0\xd6h\xdb\xbf\x14\x06\x99\x139\x8b\xe1\xbf_\x00\xb8\xc7\x9a\xc1\xe0\xbf\xee\x87\xe5\xe0\xe2\xd9\xc0\xbfA\xbc\x18\rxK\xd4\xbf^F\xdbq\xa8\xf6\x97\xbf\xe3)\xfc\xd6\xcd\xd4\xea?\xeco|\x82\xbd\xa7\xdc?]\xb6\xff\xb8\xcc\xc5\xe4\xbf\xc5[C5\xd0\xce\xd3\xbf\x91\x02\x08\xdcvd\xe5\xbf\xa5lrv\xa3\xd2\xa2\xbf\xdcY\xbd\x1e\xcc\xbf\xe4?~\xd3\xabL\xef\xf0\xf0\xbf\xe8\xc1\xa2\x9d\x96j\xf7\xbf.XN\xdd&\x82\xbc\xbf|\x04\xab<"_\xd9\xbfYj\x9aMH\x02\xdf\xbf\xcf\xb70m\xaf0\xa2?{2\xe1\xd1\xb0>\xd7?t? \x86=u\xbc?I7\xa7\xe9#\x8e\xf1?\xf2"\x1e(q\xc8\xce\xbfj\xdb\x16v/i\xdd?\xda\xae\xdc\xf4\xd3\xf6\xd0\xbf|o\t\xe6\x01e\xa1?\xba-\xbe\x9aS\x89\xdf\xbf9\x98\x11\xe1\xbe=\xec?\xbb\xe3\xf0\x9a\x87\xfe\xb0?\x8b\xd5D\x19\x11\xc7\xea?B\xa4\xddx\xe5\x99\xb6\xbf\x17\xeel\xa7v\xc8\xeb?\xcb\x827w\xd6\x1a\xbf?|\x01\xab:>|\xde?_\xfefM\xac\xd9\xd9?\xee\xcbk\x155\x0f\xc2?K\xbc\x88\xe4\xcf\xc3\xcc\xbftI\xb7\x93\xe1\xff\xdc?vY[\'\xd9\xf7\xe9?g\x1d\x8bE\xddf\xf2\xbf\xceeg\x81Y\xdd\xa6\xbfTr\xaf4\x1a\xf1\x9f?>\x03\x84\xae\x83\xc0\xe9?\xbfb\xd1\xf4X\xae\xd3?\xe3\x9a\x08b\xeba\xc2?\xd4\x16\xf3\x9a\x97"p\xbf\x10)S\x04V\xff\xd8\xbf\xa6\xa5\xbcH}\xa9\xdb\xbf}\xc5smnR\xd0?y,!\xd6\xfd\xb0\xe3\xbf\xeaC\xe7\x17\x18I\xf7?\x08\x14\xc6D\xf4@\xee\xbf\xf9\xb5w]6\x12\xc5?k\x83\\\x17Ng\xc2\xbfk\x86\xfa\x034%\xc3?\xbc\xfa\r\x8f\x92@\xdb\xbf\x0c!E\xa4\xb7R\xbf\xbf\xa4f\xcac\xaa\xba\xe2\xbf\xb9\xc8oc\xf5\xc8\xb7?q\x82eF"\x08\xd5\xbf\xe7\xe0\x97\xf3-L\xf2\xbf\xf3>uS\x83A\xcf?\x86\xfec\x98\xc1(\xbd?\x9b$\x14]\xefw\xd7\xbf\xabp\xa3\xd9x\\\xcc\xbf\xd6\x07\x933*\x9e\xd6?}\x8d\x9dm\xa2\xa9\xe0?\xab6Sq\xe4\xb2\xc6?m"\x16\x86o\x9e\xd2?\xda\x94g\xfcK\x1e\xde?T\xff\x9e\xdbd\xae\xe8\xbf\xbe\xbe\x9cz\x9b\xf4\xe6?\xe0$\xb8~\x7fJ\xdd\xbf\xae\xc7\xe6Q\xb6\x8a\xdd?\xf6X2\x8bTf\xe6\xbf\xe4\xda\xfe\xc4\xe36\xc8\xbf\xff!\xc2?\xf3\x8f\xbf?\xcec\xdd[Ji\xd3\xbf\xc9\xea\xe2I\xdb\xcc\xd5?\xeaH\xf8\xe2\xa2\x00\xb6?\x98\x13\xd7e\x01o\xd2\xbfo9\xaaof.\xc9?mA\xda\'T\x0e\xd2\xbf\x82c\xd1Z\xcd\xd0\xcf?\x19i,\x17A\r\xa5\xbf!\xdbb\x17\xd2G\xf6?aW\x88\x95\xe2\xe5\xc8\xbf\xc2\x95\x1eD\xd6S\xc9?$s\x8e\x91\xf10\xcc\xbf(x#J\xee\xfa\xf3\xbf\xbb\x16!2\x1dZ\xcf\xbf\x91\x10\x0c\x13\x86+\xc1?\xd4\xb8\n\xb5\xf1k\xed?\r\xa5\xd9|^>\xc6\xbf\xf7\xa5}4\x80+\xd6\xbf\xe7rY\x1e?\xa9\xe6?K\xe3\xb4\xb6\xd4D\xf2\xbf9\r~\x85\xab\x04\xe5\xbf\x82\x82\xb8\xf74\xc0\xdf\xbf\x11V\x8b\x95k\xa6\xdf\xbf\xb3R\x80\x17#)\xef\xbff(\x9d\xf0\xfa\x8f\xd8?\xba\x05a\xefc\x04\xfc\xbf\x14\x86Eq>}\xde?\x03\x0b%\xb5\xfc\x1a\xc7\xbfFF\x97\xe4\x0b\xa2\xe3?\xac]\xb7\xa5_\x94\xc7?\xf5>\x16c\xc9S\xc1?\xd4\x9dS\xe3Y\x1d\xe7?\xf3"L,\xaf:\xcc?r(\xf3|\xdf\xac\xd1\xbf\x19\xc2\r\xad\xf7`\xc2\xbf{\xf1\xf8\xd2\xa6\x00\xe6\xbfp\xeaz\xaa\x9e\xd2\xe5?\xaf\xd6\xb4\xab3\x85\xde\xbfE,\xdf8oU\xcd\xbf\x81\xc6\xee\xa9\xd7}\xb2\xbfM\x0b\xc3\x1d\x8f\x05\xd1??\xffe\xd0S\x03\xc9\xbf\xf8\xdc\xdf8\x013\xea?x\xcb\xc5\xd3vM\xf1?5Z\x863\x08\xc4\xe5\xbf\xb7\xb3/u\x91p\xcf\xbf\xf3\xa7\xd2\x11\x10\xff\xea\xbf\xb2\x05?\xdf\xe8\x82\xd7\xbf\x8c\xce\x02\x8c\r\xb0\x91\xbff\xdf,[\xab\xf1\xee?\xe4\xccxr^v\xdf\xbf\x8cX\xe4\xb3\x88\xf8\xcf\xbf\xc1aoX\xa3h\xd3?\xc6\xfb\xb7\x16F9\xcb?\xd2\x07^\xe8\xcdA\xe0?45\xeb\xa4\xc7\x8a\xc9\xbf\'A\x0b\xef\xdf\xae\xed\xbf\xf20\'\\o\x94\xc0\xbf\xbf\xf3\xb6I\x9b,\xd0\xbf5\xa8\x00\xd8\x02\xc5\xf3\xbf\xdf\x83\x0b\xf2\x8dY\xd1?\x1d.\x9c4\x12\xf3\xe6?%\xa3Q\xd9\xa3\xb3\xb7?/y,\xb0\xbc\x89\xf6\xbf\'\xb6!\xf8\xfa\xca\xdb\xbfm\x0b\x04\xb0\xde"\xe2\xbf\x9d4h\x17\x19}\xca?\\\xb4\xdce\x9b\x10\xe6?\x06\xcf\xd5I\x02)\xdc?\x03@\x14VUi\xe2\xbf\xbb\xaa\xff|\x8f[\xbd\xbf\x84\xc6\x16\xc1 \xd2\xe4?A\x87\x1b\x98\x92\r\xd6?q\x19e\xe1\xca\xb4\xdf?\xdd\xafY\x18O\x8a\xdf?%-\xd5\xa6m\x02\xf2\xbf\xab\xfa\xe4\xda[\xb4\xd3?\xdd\xf7\x00|\xd7j\xf0?\xfd\x03\xe8~1?\xb5?J[\x9e\xe3\x88\xe4\xda\xbfg\xf3@\x90{\x1b\xd1?"p\xe0j\xce\x94\xcc?\x0f\xf7\x1f\x8e\xc1\xf7\xad?b@s1\xfd\x0e\x9f?\x1d\x10\xf1=]\xe5\xc0\xbf\x07l\xfe+\xea7\xde\xbf\xdcgB@\x04?\xf1?__\x95\x80\\E\xe3?\xd0\xde\xd7\xd9\xfe\x85\xe7?`=\xc3\xf2G}\xc9?\xa4H\x84\x10\xa3\xb6\xf3?\xdb*\xe9\xdcNC\xc0\xbf\xd5}\x9f\xc9\xa8\xc7\xe5?a\x9e\x13\xc3T\x1d\xf3\xbf` 2D2_\xd2\xbfm\x12\x17\xfcw\x96\xe7?\x9a0\xa2u\xaa\xf3\xd6?\xe3\x9c\x95\xe1\x1d}\xd8?\x87+\x19j\x0ex\xc0?<W\x94%\xb3\xe5\xef\xbf\xaf9\xf5~\xf9\xed\xe6?\xc63\xaf\xc4.\xa3\xd3?\x16\x14\xe2_\xcb:\xcf?\x03\x0e\x9d\xc7\x8fh\xea\xbfa\x02f\xc8K0\xc1\xbf\n\x80\xc5\x11u\x88\xd2?\xf8\xe1\x88\xb3\xbc\x1d\xc7?W\xf8\x1e\xef\xf5\xbb\xe5\xbf\x13\xcf\xff\x1a\x8d\x89\xf3?4F\x0fAt\xad\xe4\xbf\xc3\x0e:\xfa\xa7c\xe0?\x9d\xbcI\x13IP\x8e\xbf\x1c\x02P\x9f5\xe8\xc9?\x14\x93\xd9\xde\xd6b\xea\xbf\x01\xf4\x87e\xf2\xc3\xcf\xbf\xea\xce\x93\xcenC\xe5?_\x81\xf3\x87m)\xcb\xbf.\x0c=YK\xc8\xaf?m3\x9a\\\xbey\xf7\xbf\xd6X[\x9f\t\xea\xc1\xbfN-\x9a[\xfb\x11\xe8\xbf\xe2=\xfd]\xd0\xf1\xd7\xbf\x0c\x0bF\x95\xa1=s\xbf;\x9756\xf2\xe8\xe0\xbf\x93\x1d\x15]\xed\xb4\xe9?\xdcr\xd5\xe4\xd7\xd3\xd5?\xd0\xa1_\xbd\xe9\xbc\xe1?v\xe8\x97\xb4\x84U\xe3\xbf\xa3\x16V\xb8\xecE\xeb?\x00zX\xfce\x03\xdc\xbfI\xfb\x1d\x0cat\xd4?\x89A#\x9d\xde\xdc\xc0?C\xe3\xa1\xc2l\x9a\xa7?gv\xaa\xe0z\xf2\xf3?;\x8dN\xa4\xc9\x06\xe2\xbf&%\xc6\x03\x7f\xce\xeb\xbf#5x\xc8Et\xf1?\x9a\xdeO\xd2p\xf5\xd5?\xed\x9e\xcc\x84\x8d\xa6\xe9?S@K\xcd\x05\x9b\xc6\xbf\xac(o\xa6\xa7-\xf0?\x85\xdd\xdeX\xd9t\xf2\xbf\xd4\x8b\xb0io\xb0\xd2\xbfK\xbc\x80\r\x89*\xd6?\xde\xf1t\xd9\x07;\xe1?E2\xa8N\xdf\x83\x8e\xbf\xb2\xf1TUO\x03\xeb?g\xd1\xc5\xe1<\x82\xde\xbf\x9b\xec\xee\xd3\xd0#\xef?\x9ck\x95b\xc3I\xd3?\xa0\x8f.\x1a\xddA\xb7\xbf\x1c\xd1j\xbas\xfa\xe0?\xa4\x1bX\x8aj\x12\xe5\xbf\xd4\x9e\x98T\xedy\xd3\xbfe\xe4N\xd9\x85\x89\xa7\xbf\x7fh\xfaz\x00\xa1\xe6?\xce\xd7{?\xde\xf9\xd4\xbf\xc5\xad\n~\x9e3\xf9?\x8cj\x86y\x02\x04\xe9?\x00\x82\x04q\x1br\xb0?K\xb2\xf4D?W\xf5\xbfX\xd1\xaeA\xect\xd5?IOh\xa3\x8f\x01\xe0?R\xf7dcTm\xf1\xbf\x81\xb1hhJ\x0f\xf1\xbf\x0b\xe4ay\xa5\xeb\xe6?:O\xf7\xec\xeb-\xd7?\xc15eN\xc1\xf7\xde\xbf\xe0\xe5\xa4\xd2\xb0\xc7\xeb?\xa4J\xcd\x00x\xfb\xe3?\x9de\xee\x80\xa9-\xd6?=R\xa9\xb9\x9a\xa6\xd0?\xa6\xb26gS\x9d\xc5\xbf\xf9B\xd0\xab\xd4\xfb\xf2\xbf\xb3\xbd\x97\x83H\xe7\xd6?\xde&c\xc2\xf9\xb8\xe8?2M\xde\xf0\x92\xc4\xd1?\x0f\xd7\xfcc\x18\xc5\xe8\xbf\xca\xd9\xf4O\x9b\xb7\xdd??\xba\xd3]\xf6\xa8\xf2\xbf%\x01\xe9\xc3<\x01\xda?\xd4=\x9f\x9f\x93%\xcb?\xd29\xfdW\xcdr\xde?\x8a\x1a\xb4\x8ei^\xdf\xbf\xafJx\x1d\xb6{\xd1\xbf4\x88\x9c:\\\xec\xf2\xbf\xc7\xe5\xf7v;\xf0\xbd\xbfqB\xb4\x86\x85\n\xd7\xbf\xbb\x1ax\x0f\xf9\x06\xe8?z\x88}\x84\x91\x9d\xe2\xbf\x9a\xf1\x0f$\xa6\x95\xe8\xbfE\xb8g+\xa9=\xd1\xbf:\x16\xca.\xac\xec\xc3?H\xf89\x08\xbd*\xcb?lD5\x97\x0b\x05\xb9\xbf\x03\x9e\x1aB{2\xd4\xbfT\x15\xe2\x88\x85T\xd7\xbf.8Gn;\'\xd2\xbf\xce\xc3\x86A\x7fY\xb6?%]\xf0\xe7\x08\x83\xd2\xbf\xef\xf6\xf6\xf8D[\xe1\xbf\xdb2\xca\xe9G\x86\x85\xbf\xfb\xe9\xe6\xddRt\xcd?\xf0\xbe\x9a\xd8\x1b\t\xb5\xbf#\xc6\xa7\\A,\xe1\xbf\x9d\xfa\x86\xb0?z\xd6\xbf\xad]\xc8\x07\xaa\xe2\xd0?TY\xb7th\x92\xc4\xbf[A\x01G\x8a\x14\xf1\xbf\xe1\x96"g\xad\x8d\xe6?\xc5Q\xff\xfe\x85y\xe7?\xc5f8-\xb4r\xef?\x92\xd1h\x85\xb9\xd7\xe0\xbf\xcf\x9fnw\x81\x8d\xe7?\xe2\xa7\xb7<;\x8d\xf7?\x80\xbc\xa6@\xcbE\xc3\xbf\xa6\xc0ww\xaeg\xe4?\xf1\'\x98v\x08\xf3\xc9?P\xccD\xdceI\xd4\xbf\xdb\xdf\xc7\x11\xeaE\xc9?\xd4D\x18\xda\xf3`\xc0?\x9b\xb2s`\xb3G\xa1\xbfm\x0c7#,u\xd2\xbf&\xc3-\xd3G\x9b\xe1\xbf@\xfa\x8fh\xe8\xe2\xa2\xbf\x00LY\xa2(\xce\xf6?\x83c\xff\x98Xu\xe9\xbf\xed\x84H\xc7<\r\x8a?\x1a\x030>\x19\xdf\xbe\xbf;\x86\x00D1\x9d\xd0\xbf1,\xd3\xfd\x9aP\xb7\xbf|m\xf8\x18y\x14\x8d\xbf\xa9\x87m\x13n\xec\xe3\xbf\xfe\xa3\xa9\xfa\xe9\x01\xab?\xd0\xc7Kt\xff\x01\xb7\xbf\xden\xc4\xbdvn\xf2?\xeb\xab\x85\xf8(G\xd1\xbf\xa6\xe1\xbf[\xc3\xfd\xc5\xbf^ra2\xb3\x99\xc0?\xb4\xba\x1c\x95\x7fg\xd8\xbf\xeef\xda\xea\xbem\xa2?"\xdb\x92t\xa1\x14\xe6\xbf\x07P\x90l\xa4~\xee\xbf\xefO^\xce\xad4\xec\xbfR\xd9\x85\xe1>\x06\xd8\xbf\x88\xd3\xc5mLt\xe9?\x7fn0\x91\x97"\xd7\xbf\xa9\xae\x81tM\xf3\x9d\xbfr\xda/\x9c\xac\xa7\xa3?\xe4\xd5\x0eN\x9dF\xeb\xbf\xa9/:\xfcG\xe5\xf3\xbf\xfd\xea\x05\xc3^\x18\xda\xbf\xf0\x8fn\x01\x80Z\xf1?\xce\x8ev.\x10\xbb\xc7?\xd5\\Xt@p\xe1?\xd75|y\xd9\xe2\x95?\x19\x01e\xd5\xdc#\xc6\xbf\xf4\xf7\xdf\xaa\xca\xe7\xc6?9\xec\x185\x1b\xe0\xad\xbf\xdb\xe1"\x1d\xcd.\xd3?o\x06*\x8e\xe46\xd0\xbf\xa5\xd0\x1d\xd9[t\xf0?\xd1\xa5\xfc\xd0\x86\xf2\xf2\xbf\n\xf6\xab\x1f\xe5\xe1\xd6?j\xac\xb9\xa8{a\xc9\xbf\n\xaa\x9bF~\xaf\xf4\xbfS\xd1\x82b\x8a\xec\xdf\xbf.\xb9\xa1\xee\x9a\xe5\xd5\xbf\xf2\x11\x190\xb7\xc9\xc2\xbf\x9bF\xdd\xb1\xfd\xc9\xc5?G\xba\xb7~8\xa0\xcd?\xd8Tl^\xacs\xee\xbf\x84`N\xa7_\x15\xb4?2W \x86\xc2\x9d\xdf?~\x87~\xb3H\xb7\xf1\xbfvz\xc1%V\xc9\xd1\xbf\x8c\xe6\xfbOa\xad\xbb\xbf\xbc\xa2\xef\x15\xf3[\xeb\xbf<9\x84\xc1d\x85\xa5?\xa8y\xda\x9c\xbe\xa8\xab\xbf\xdb\xe0\x12\x14nL\xd3\xbf\xec\xc1\xf6\x81\xe0\x86\xe1?\xfb#dE}\x1a\xc1?\xdc\x82\xe2{v\n\xd4?\xd5e\xbfN\xca\x05\xe5?$\x85\x01\x15@\xfc\xdc\xbf,$\x9cB\xe2\xcb\xdc\xbf\'\xc8\x86\x9c\xc4\xd7\xde?\xc4\x8cR7z\x08\xea?]\x18\xb0A\xc9ju?\xd9\xed\xff\x0b\xdd\x90\xda\xbf\xdf\x9b\xa8n\xa5\xf1\xd3\xbf2\xec\xa0\x8d\xda|\xf3?\x95\x8f|k\xea\xbf\xe3\xbfc\xf8\xdc\x1a\x88\xd8\xe2\xbf|\xfb\x8bSx\r\xcc?\xf1\xd1\xdeQS\x92\xde\xbf?y\xfa\xa3G\xb9\xd9?\xb7qZ\xb6o\xd1\xe9\xbfO\x8d\xdew\xae\xdd\xc8\xbfC\x93u\x01\x91N\xe0\xbfw%\xd2A\x86\x17\xee\xbfz\xff3\x89\x15}\xe4\xbf\x91\x99\x9fiH"\xf0\xbf\x02\xea\xa2\x9f\xb2 \xe8?\xa4X\x98y"\xe7\xd0\xbf.\xbf\x14AO\x83\xe0?J\x12A\xb9F5\xe4\xbf\xe8\x16m\x83\xa0i\xf3?U\x85>\xc7\xadY\xc2\xbf\x95\xda\x81\xe5j\xa8\xe0?\x8c/N\xcbg%\xe8\xbfE\x86\xef\xb2\x1e\xd4\xd7\xbf\xff\x82\x01i\x1eU\xf6\xbftj\xdbwY\xc8\xe6\xbfmP$ov\xc7\xef\xbf\xb9\x81\x14n&`\xb5?\x9f\xfd\xe6\xc2.r\xd2\xbfFF\xa2H\x1a/\xad\xbf\\\x9fN-\x9f\xd3\xe1?\x9c\xab\xa8\xb7\xf89\xb8\xbf\xb6\xb27\xee\xf0\xcd\xe6?\xc3\x97\xd3G!\x8d\xcb?\xfb\xc6hi3\xe0\xe9?Z\xaeX\xa4IR\xec?)\xa7\xeeW0\xe1\xe5\xbfE\xdb\x05\xbb2h\xe2?\xa4\xb9\x1e\xba\xa8\xeb\xc3?\xc7\xaec\x889\xcf\xe1?\xe6\xdb\xac\xd8\xa4\x9e\xdc?=\xa7\x98P\xa8\x94\xe7\xbfe\x0fBj\x9d#\xb1?W\x19\xc3\xa8j\x0e\xea\xbfn\xd9\x86\xcd*\x00\xe6\xbfJ\xf1\x9e\xd9G\x84\xa0?\xe5\tXy\xffd\xfa?\x95&y\x95qL\xc4?9\x81Q\xd2\x98\x84\xe5\xbf\xb9\x98\x0cf\x93\x03\xe1\xbf\xb8z-\xff\x89\xdf\x87\xbf\x16\xd0\x10\xcf\xac\xe4\xb5\xbf\xc0y\x90\xd2}D\xf2?N_\xfe\xd9\x84c\xe8?\xf9\xf6q\x9e\x9c\x99\xd3?\xb77\x07\xab\xf2z\xc9?&\t(T(\xa2\xb7?\x9c6\x01`wO\xe7?\x91\xf2\xad\xe9\xbc\xb6\xac?O\x99\xbeU5\xa6\xe2\xbfv\x0cF\xf9\xc1(\x91\xbf\xd4\xc1u\x87\xc0\xe6\xee?\xb4\x9f\x82g\xbcQ\xae?W\xc6\x86\xde<\xb7\xca?\xaf\x07\x96Y\xd3\xaf\xb3\xbffx\x10\xdf\xafH\xc9?\xd0\xb4\xa6\xb1\xb5!\xe2?\x95\t\x9f\xdd\x88\x93\xcf?\xdb\xd8l\x99\x0c[\xf4\xbf\x88a\xc3\xd9n\x8d\xd9\xbf\xd8\xcf\xcaOg\xd0\xee?\xe4\xe1\xbf\xd7\x89F\xec?0\xb0U\x8ev\xaf\xd3\xbf\r\x91\xf9\x05\xa1F\xe9?Y\xbf\xf9\xe3\x8f\x96\xd9\xbfF\x86\xd34J*\xb5?\xa6\xab\xfcY!\x84\xdd\xbfB\xaf\xea\xec\ne\xdc\xbfE|\x1d\xa0\xf5/\xef?\x04\x0bl\xa0\xe8\xd8\xe4\xbf\xb9\x83\xdbf2\x94\xeb?)\xe8\xdc\xaa\x7f\n\xee\xbf\x95\xac\x98qNL\xb6?\x1a\x010\xaf\xbb\xfe\xa7\xbf\xec\xe7\xc4\xb1{\xc2\xc8?\xb7\xd3h\xa8\x04\x0e\xd3?\x01$\xf9\x0bt\xcd\xf3\xbf\xca\xd9.3![\xa2\xbfLg\xe5\xfecu\xd2?\xf8\x97\xd6R\xcfJ\xc1?\xaf&s\x95a\'\xf3\xbf\x88\xe8\xf4\n<\xad\xe0\xbf\xe1\xdd\xadT\x9a\x0c\xf2?W\\\x19\x19\x93V\xd9?S\x12\x06l\xd9\x00\xe5\xbf\xd2\xe0\x1b\x99-\x01\xdc\xbfdM~vG\xa5\xce?\xe4\xe9U:n\xdb\xdd\xbfV\x03\x81y\xbd\xa7\xdd\xbf\x05\xf1f\xfb\xaf\x0f\xd6?\xd4f\xc5\x17\x94\x8c\xf1?/\xf4Q$\x02$\xc9?\xd2!7s\x84]\xc0?Y\xdd\x15`\xc5$\xcf?II\x86\xc2+\x81\xda\xbf\xcb\n\xf1\xedg\xab\xce?\x90\xcb1U\xc6\xc7\xe8?\xee\xf9\x99\xbf\xf1=\xaa\xbf\xb4\x04\x92\xe7pi\xa9\xbfV\x98\xf8r\x06\xf4\xeb\xbfE\xdd\xaa\t\x16\xe7\xe4\xbf\xef,9/)\xfd\xba\xbft\xfa\x10S\n\xe8\xc6?\xf8[\xf8JN\x8f\xcf?\xa9J\x1e.\x18r\xe0\xbfM\xddo\x04\x08`\xbc\xbf\x15n\xb07\xb9\x11\xd2\xbf\xf1\x92\x8bEz\xe6\xc8\xbf\xc2\xe7\xca\xd7{\xa3\xb6\xbf\x1d_\xad\xfd\x94\xe3\xb6?\x08y\x92\xd83`\xea?B\xf2\x08J\xee\xc2\xda\xbfc\xdc\xffi\x85\xe6\xca?)\xd9cC\xfbK\xd3?84\xef\x03N\xb7\xf6\xbfbH{{\x8d\xfa\xdd\xbfYq\xd0\xab\xce\x0e\xd8?\x1c\x0b\xaa\xa2\xc9(\xf0\xbf\x9a\xd1U\x8b"\x91\xd6?C\xfe[!\xd44\xa9\xbf\x132\xa8\x9b\x8e\x93\xc5\xbf\xe1\xa6=>\xae%\xe4\xbf,\xd2Z\xfc>\t\xd6?\xbbt\xe0\x96.\x95\xd4?\xf0vg\xde\x0e7\xbf\xbfu\x9b\xcchW?\xe2\xbf\xae\x89\xd5\x88\xbb\x91\xc6\xbf\xfaz\x87\th@\xc0?\xd5\x97]\x8f\xb8\xb3\xd5\xbf\xf7*\'\xf8\x0cn\xe7\xbf\xa5s\x97\x0bG\xfa\xc5?\x15w\xf1\xb8\x8c=\xe5\xbf\xd6\xfbb\xcfR\x98\xec\xbf\xe3=\r\x8b\xe9#\xed?S\xb1\x9e\xc6X\xfb\xe5\xbf\x00e\xa8n\xbc\x9f\xf8?\x0f\xba\x85\xac2\xa9\xe3?\x8c\xa5~\x13fd\xca\xbf\xf8w\x84\xee\xdd\x7f\xab\xbf\xfa+C\xe3Bw\xe6\xbf\xd7\xe4\xfcD\x04\xf0\xed\xbfV.\x15\xc3}n\xf2?I\xb3?\xad\x073\x85?\x89\x87\x0f^\xefS\xe1?\xee6W*^2\xec\xbf\xc9J{\x9e\xb1f\xe9?2\\\xa7t\xd3\xbd\xd2?\xc7\xb0\x16_n2\x95\xbf7\xb26\x08\xde+\xde\xbfRp\x82\xc0{\x9b\xa3\xbf1\xe6\x9a\x13u\xc7\xf8\xbf%\xde\x91\xf1\xdcP\xe4?YX\xa8\xa0D7\xe7\xbf]M\'\xe8\xdf\xd9\xe4?\xc5\xdb9%\x8aw\xe1?\xfe\x19\xea\xbb`\x8e\xd0?\xe6\xdd@\xa1\xf7O\x97\xbf\xa3F~\xe3n{\xdd\xbf\xe4r NB\xc0\xc2?*\x1b\xe2Pv;\xe4\xbf\xb5\x0c\xe5[i<\xdf\xbf!\x86\xb8\xa4\xa8A\xe6?\xd4\xc35\xe1 \x89\xe5\xbf\xcd\xa9\x92s\xb6\xed\xa0\xbf\xe8P{`\x95\xbe\xac?\xfbT\xef\'\xf9f\xd2?\xcc\x8d\x92,2\xd8\xde?\x1a#H\x85\x01\xb3\x91?\xc0\xe8^(An\xd6\xbf\x82\xa9*\xb5\x85l\xd5?\xf2x<\x1c\xa6\x01\xe0\xbf\xd5\xae\x1aX\x93\xc1\xf0?\xd2\x83\x85z\x0e\xdf\xe4\xbf\xcabs\x8c\xa5l\xc2?\x11\xf7^\x90\xec\xd8\xd9\xbf\xf6\x1d\x1cMq\xb3\xee?\x15\n\xf6\xb8\xd7\xcf\xe9?\xa6\xa6\x95\xc9 "\xd4\xbfw\xa6\x05\xb6T\x99\xe9?w\xba\xc4\xa3e\r\xc6?;\xee\xfa\xbft\xe7\xe7?\x9f\x15\r\x93\xcf\xdb\xb6\xbf\xf3\xc3\xe6V(\x83\xb8\xbf\xb8&\xad(\xef\xe0\xd3\xbf\x9aY\xd1XvN\xf0?\xce\xe1^\xc1\xbd\x93\xe7\xbf!%,\xb1\xfe\xdc\xdd\xbf\xae\xfdB\xc9\xa2\t\xd0?7\xd2\xa4\xc3\xd6\xcd\xe9\xbf\xffI\x18\x82\xc4\xd3\xea?T\xf8\xd9\xa3\x8b[\xd1?\x86\xc5\x95\x96\xa0\xd7\xda?i\x83V-\xf0\xca\xa8\xbf\x95\xe8\x8e\x94\x87\xd7\xbb\xbfG\x1b\xfb\xab\x1f\x12\xbd\xbf\x132;@e\xf9\xc2\xbfo\xf6\xb1\xa9\x95\xa0\xe4\xbf\xe7\x12\x1a+@\xaa\xe5\xbf\xb8\x81\xe5M\xc1E\xa4\xbfKp\xd2_\xfc\x80\x93?\xb5\x08IH\x05Q\xec? \xc4\xff2\xc7\xd1\xd7\xbfzo\xc4Y\x01\xca\xb2?\xc0\xf7:\x82\xd6Y\xdd?\\\x08\xed\xbf\x01d\xe1?\x98\x1c\x99bxA\xc1\xbfj\x17\xd8%\x88i\xf2\xbfZ\xea\xbe\xdfxA\xe5?\xec\x87\xa74\xbcU\xcc\xbfzhqGb-\xd6?\x1a\x0cN\xde\x00\x90h\xbf\xe6\xcbX#J\xe1\xcd\xbf\xd0\x86\x131\x18\x18\xf6?x\xe3\xda\x8eh!\xac\xbf\r\xc3\xea7\x7fd\xa6?\x85K\xf4L\xc9\xfb\xe8\xbff\xd9\xb65\x0b\xca\xdf?V\xa3/d\x08:\xe9\xbf\x0e\xadk\xfc\xf2\xa4\xdc?\x017\xa9\xbe\xf2.\xe4?\xa7\xd7\x82\x01!c\xe3\xbfu^\x9a\xb6MK\xe1?)\xe9\xb0\x8c\x06\xff\xa5\xbf\xf2\xe1\x96\xd2\x9f\x13\xe3?\xda90\xad\xfc\xad\xe6\xbfD\x9b"\xc3km\xdc\xbf\x91\x1d\x04\x1f\xb9\x17\xf0?Xq\xe2\x1c\xcc\x0b\xe9\xbf\xa2OS\xf8\x9as\xc5?\xa7\xcf\xb0H\xbd\x02\xcf?V\t\x12\xe6E\x9b\xcb?\xc3\x86JX\xaa(\xf2\xbf\x8e\x95n\xe9\xe7\x8c\xd0\xbf\x1d\x95\xc9Z\xc9n\xd4?\xee:]\xf1~u\xcd?\x03\x1e\xa7\xe5\xd3\xdf\xc6?Q\x7f\xd1:\xbcn\xf0?\x91?\xb7p \xe4\xcb\xbf\xc8s\xcd~\xdd+\xbd\xbf\xe4\x97\xdd\xc3\x07]\xd8?+\x92\xaa\xb2\xeb\x06\xe2?\x97L\xf5\x9e\xb6G\xe1\xbf\xf9N\x9f\xc1\xc9\xdc\xd3\xbfB\xa9\xbf\xfe\x01\xed\xd5?UbSSvh\xd1?\xa3H\xaf\xd5\xdf?\xf8\xbf\xc0\x08\x11 K\x8d\xb3?f\xdfq\x87 \xda\xe0\xbf\xf1\xf8\x0c\xf3)\xa1\x8d?\xcb\x01\x9f!\xa9\xb9\xe5\xbf\xed\xd4/\x8d\xa8\x1a\xe3?\xdaI\xd7\xfa\x81I\xd0\xbf\xc1\xc5a\xc0\xe9\xae\xe4?Lru\x99\xb6\xf6\xf1\xbf-\x8e\x8c \xc5\xee\xd0?\x81\xd0Z\xdd?,\xd9?\xda p\x13\xb0r\xd3?\xa6d9\xe4A\x84\xc2\xbf\xdb\xfeg#\xc5\x92\xae\xbf\x166WR\xdez\xb1?\x1e\xefb\x13\x8c\xcf\xa1\xbf?C\xc1\x1c\xa2\xd5\xcf\xbf\xfe\xb8\x17\x9f\xcc\xb1\xb8?\xd5\xfb:i;\xda\xb7\xbf/\xbd8\xca\xa5\xc7\xe9\xbf\x85\x03\xbdwb\x94\xdf\xbf\xaa\xa3\xac\x80\x1a)\xe0?A\xa6\x04\xaf\x8a&\xb9\xbf\\"]|\n\xaa\xeb\xbf\xff>\xcb?\xa1q\xd3?\xb0\x99p%\x01\x15\xd4\xbf\xc2\xe8 aj\xc0\xe8?\x843~\xcd\x1c\x06\xc6?ko\x1a\x80\xa0\xeb\xc8\xbf\xa2\x0b\xae})\xed\xed\xbfb\x14U(\xb3\xc0\xdf?\x85\xd3f&\x84v\xf2?_[%\xbd\x9e\xfa\xd2\xbf\n\xfe\xbe;\x02R\xd0\xbf\x81\xd9\xf3\xbd\xe2\xbb\xd6\xbfd\xb3\x9c\x12\x93;\xd7\xbf\x16@6\xc3\\\xa7\xdb\xbf\xd8\xc5\xa1\xe5\x1b&\xc0?\xc0\xe1\x98\xeb#1\xf5\xbf=\xa88\x9a\x87\xed\xd4\xbf\xd1\x96\x06\xf2L\xf8\xe4\xbf\xc0\xea\xad\xea\xa7\xf9\xd7?\xa0\x18V\xdfIh\xe9\xbf\x07\xe7\xa9%\x1a<\xc1?h\xcfI7e\'\xf3\xbf3\x1f~\x91\x83x\xca\xbf\n\xbcQ\xd4\xf5W\xc8?\xdf\\\xd6\x13\x88\xe0\xd7?\xf7\xa2i\xd1r\xd0\xda\xbf\x07>\x9b\x86\x9fY\xc2\xbf,\x9c<\xd6R\x08\xd3\xbf\xa6\xc2\x95\xbb8\xbb\xe2?\xde\x91\x94O=a\xe4\xbf\x0ch\xcd\xa3f\xfe\xd1?\xf9\xec\xa8\xe1l\x80\xe4?\xc2\xb8\xa5\xa7\xb8\x98\xd0\xbf\xe3H\xd0Sk\x06\xb9\xbf+N\xbdM\x7f\x19\xe2\xbf\xb8\xa9\xa7N\xb5\xc3\xe6?\x18&=7~f\xe0\xbf.\x9b\x92@ \x1c\xf7\xbf>_UsF\xfb\xab?sm*\x8f\x16\xd8\xdc?\x06\xb3\x1d)\xfb\xf3\xbf\xbfk\xc9\xd1\x0b\xc5\xb1\xd9?\xc8\x12q\xa4\x96J\xea?\x80%\xa4:\xf0\n\xdb\xbf\xe4\xa9\xbd>\x0e\x00\xd4?}\xe5\x801\xd1\xcc\xf9?#2\x1e=%\xad\xc8?~\xed\x9f.\x92\xa9\xdf\xbf^\xe95sqL\xf6?M4gP\xb9\xbd\xde\xbf\xa76C\xd0\xc3\xd3\xdb?t\xa4\xd60*\xe4\xa3?\x0bH\x9eC\xf8u\xcb\xbf\xa3&\xa1j\xd1x\xbf?\x9f,\xe7oQP\xf0\xbf\x99\x9cz\xb3\xb7\xbc\xe0?\xaf\xd6\x1b\xaf\xe0\x9a\xcd\xbf\xe5\x1b\xdd\xbaC \xdc\xbf\xf3\x12\xb6k\x9e+\xd7?\x06\xb1\xf9\xaeH\x87\xe4?x\x15y\x9eI}\xbd?\xec\xf5\x1f\xeb\xddz\xeb\xbfL\xfew\x7f_\x99\xd1\xbf\x17\x19\xb1\x9e\xe7t\xcd?\t\xcf\xd1s\x01t\xdd?0`\xb1`\xdf\x90\xe0\xbf\xb1dkS\xddy\x9d\xbf\xf3\x19\xc6\xa8\xaba\xe3\xbf\x9b~/9\xab\xe7\xe2?[L\xcf\xd8\x80&\xf8?+\x8a\xf3%\xf5\xe1\xe0?=\x84rQQ\xc1\xde\xbf{\x9a\x8a/\xfd\x15\xc5?\xa8\xaakw\x9e0\xc2?\x0c"\x01\x88j\x9c\xed?\xc8\xcb\xdbJ\x8f\xdf\xe1?\x1d\x86\xce\x16\xb74\xd0?\th\x90>M\x07\x9a?\xe1W\xbb\x98}\xed\xf6\xbf\xc4\xc6\xa3\x97`\xb5\xe0?\xf2\xf7\xed\x14\xc5@\xbf\xbf\xca\x12l\xb2\x95\x0f\xe1?\xa1\xdb\xfc\\U\x00\xc1\xbf\x85_5)\xc7\xef\xcd\xbf/\xeb\xeb\xe0\xe3\x88\xb3\xbfo\x8a\x1d\xc8\xa0\xf9\xec?R\xec\\\x97c9\xc4?\x11d\x1f\xd2%\xf7\xed?\x9b\x893\xf7O\x02\xc6\xbf\x0c\xa6\x80\x85\x04\xc7\xc4\xbfj\xc4\xf0\x18\x15_\xda\xbf}\x933\x98\xcdE\xd4?\xc1O\xbb\x85\xe3e\xd6?\xf3Z%#\xcb\xcc\xcc\xbf\xfc\xa2\x9a\xa4V\x04\xcb\xbf\xb3]\xe6\xb7\xd5\x9e\xbf\xbf8f\\#\xcd}\xef\xbf-&L\x8c\x15\xdb\xc0?MW\xa1\xdc\xff\xc4\xc2?\xa6\x1dKOJ\x93\xdc?\xd2\xa1<\x99\xf1\x9f\xc9?\x8c\xad>uU\xc5\xc5\xbf\xc2\x83\xb9\xfdT3\xb1\xbf\xe2\x03\xdfp\x10\xb2\xe2\xbf+Lrl\xe2f\xb5?6\x16\xb9_\x16\x85\xd1\xbfd\x82Xv\xdd\xcf\xf4?dw;\\6Q\xdd\xbf\xe7x\xa6t\xe34\xe6\xbf"\x91V\x17\x91\xc3\xb8?\x8f\xb7\xf1x\x9cT\xe8\xbf"`\x1cU\x0e^\xec\xbf\xa6\xd3\xcc\x02u\xb8\x86\xbf\x7fp\x17\xea\x82\x06\x82?e\xd5\xd1\xd4R\xac\xe2?"\r\xa4\x050|x?M\x9b#\xa9*\xa3\xe5?\x8bG\xf1&\x83:\xb7?`a\x81\xe1\xab\x99\xbc\xbf.\\\x85\'\x95\xbb\xc4?\x02H`\xe6\xf7\x04\xd2\xbf\xc1\xc2\xd9\xb3=\x94\x96\xbfM\x125\x89\x05\xff\xc5?\x19\x10\x9a\xceV\xdc\xc9\xbf\x04\xe0{s\r\x88\xbb?)/\xcc\xd4\x87\xb0\xdc?{\xcaB\xd5\xbaz\xad?+\xe8\x85\xd7\x8dN\xe6?\xe7&\x04\xb4\x8b|\xe8?aI\r\xe5\x15\xae\xce\xbfJ\x9ad\x00x\xf5\xd9\xbf\xba\xf4\xa3\x95\xb67\xa3?GZA\xe3n\x0b\xf0\xbf\xb3\xc6\xb7\x95\xba\x8d\xf1\xbf[[\x8f\x81n\xa3\xc1\xbf\xa2\xc5\xad\xcd\xb1\x91v\xbf\x05\xd21\x0e\x95\t\x9a\xbfIp\xfc\xc3\xd2\x01\xd6\xbf\x94\xb0\x1d\x02s~\xb5?nc\x87\x17\x84h\xc3\xbf\xeb?\xd8\xb1\x9f\x0e\xf0?75"\xc2\xbf\xe1\xc3?]/\x133\x8d\xc4\xdf?Ap\xa1twT\xc9?T\x9c\x8a\xb5y\x82\xf2\xbf\x1b\xed\xa85\x7f\xad\x98\xbf\x8e!*#\xf5\xa4\xed?l\x7f\xe2\x99g[\xc2?QOjj\x18h\xdf\xbf\x99\x85[\x99\xcd\xdc\xca\xbfI3"\x86\x7fq\xec\xbf\xba\x8b\x81\xe7e\x8e\xd3\xbf\xafn\xc9\xa9gi\xe2\xbf\xd3\xc1\xbf\x0b\x0f\x16\xde?%\xb6iw\xad\x81\xe5\xbf\x02g\xbboT=\xea?\x8aD\xbe\xfe\xc2[\xc5\xbf0!\xfd_\x941\xc2\xbf \xb9\x9b\xf4[\x9c\xef?\xe4\x04\xdc\x981G\xc8\xbf\xed4*\xec\x16T\xe7?\xddK\xf2a\xb2\xfb\xe1\xbf~\x7f\x16!\xf95\xc2?\x98\xe9\x03:\x11\x81\xde\xbf\xdcLg\xff2\x89\xde?\xc7;\\\xac`z\xde\xbf\x0c\xe2n*\xab\x9b\xde\xbfh\xd3^\xa0\xf6l\xf0?r\xc2\xd9\x99\'\xf9\xd8?\x1d\xed\x88\xbdF\x9b\xe0\xbf\xa9\xdd\xe7\xfd\x9aA\xc7?\x15o\x0e7\xaf\x9e\xe4\xbf\xfa\xfc-\xd3\\\xefw\xbfA\x0b\x83\x1d\xe6\x81\xe5?\xdd,O\xe3\xb6\x80\xe0\xbf\x12\x8ffQ\xb8G\xc0\xbf.\x10\xc6}~\x17\xe2\xbfE\xb2Ki\x8d\xcb\xd9\xbf,LN\xab\xba\xed\xc3\xbf\x9d{\xa1 \xa1\x8e\xd2?\xeb\xdd\xb8|\xcb\xd2\xd4?%U\xc3\xefr\xea\xdb\xbf\xea\x03\xacYi\x82\xd5\xbfh\x1d\xf0\xe6\x12\xcf\xef?\x9f1\x97\xe5a\xed\xd7?R\xf4\xcd3&\xab\xe4\xbfO\xb9w\xe5\xa9\xe5\xc9\xbf\xfc5\x147|\r\xe7\xbf\x03\r\xfbg\x91`\xec?\x96\xb6\xaa\xc2\x1b\x93\xce\xbf\x9d\xbeV)-"\xe3\xbf\xd2"Y.!\xfb\xf0?\x99\x0b4\'\xd8\x1f\xc8?N`\n\xe8\xcch\xf3\xbf(@\x82\xe6"\xaf\xec\xbf\xd3V@\'\x9c\x06\xde\xbf\x86\x87\x00\xfa<~\xe5?_R\x17\x91~R\xbe?\x86U\xd2\xad\x8d\xf0\xc6\xbf\xe7\xd9\xff\xb8A\xc5\xe1\xbf\x9e\x8f\x7f$\xd8n\xd1\xbf\xc8=\xfdL\xf8\x18\xf2\xbf\x16\xfe\xb3\xd5-X\xe2?\\bh=N\x14\xb6?\x81\x05\xb0^\xbdy\x8b\xbf\xd4M\xbb\xa8\x85h\x9e?\xf3\x9e`\xf0\x8e\xe5\xdc\xbf\xd0Q\x00\x9cw\x99\xe5\xbf`\x8dpz\xe6\x19\xd5\xbf\xb3\x9eY\x91+b\xa2\xbfht^ym\t\xb7?;\xe5\xbd\xc5\x19@\xd4?:\xd6g{\r\xd5\xe6\xbf1\xb0\xfa\xc9\xee\x1e\xe5\xbf\xb3\xeb\x0f\'\xcc\xdb\xd3?\xd6\xd7\x90\x89\xfb8\xbe\xbfcaf\xe5*K\xbc\xbf\xd1\xc9\x1f\x9f\xdat\xe0\xbf\xef\xf4\xa2\x0ev\x9b\xcf\xbfM\xdc\xba\xe1\xbfi\xe2\xbfG\xb4ya\x94\x03\xf5?\t\xe8\x1e\x1a.\xea\xf7?\xcf\xbbtl\x04`\x00@'
  108 +p44
  109 +tp45
  110 +bsS'_enc'
  111 +p46
  112 +g0
  113 +(csklearn.preprocessing.label
  114 +LabelEncoder
  115 +p47
  116 +g2
  117 +Ntp48
  118 +Rp49
  119 +(dp50
  120 +S'classes_'
  121 +p51
  122 +g10
  123 +(g11
  124 +(I0
  125 +tp52
  126 +g13
  127 +tp53
  128 +Rp54
  129 +(I1
  130 +(I2
  131 +tp55
  132 +g17
  133 +(S'i8'
  134 +p56
  135 +I0
  136 +I1
  137 +tp57
  138 +Rp58
  139 +(I3
  140 +S'<'
  141 +p59
  142 +NNNI-1
  143 +I-1
  144 +I0
  145 +tp60
  146 +bI00
  147 +S'\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00'
  148 +p61
  149 +tp62
  150 +bsbsS'tol'
  151 +p63
  152 +F0.0001
  153 +sS'coef_'
  154 +p64
  155 +g10
  156 +(g11
  157 +(I0
  158 +tp65
  159 +g13
  160 +tp66
  161 +Rp67
  162 +(I1
  163 +(I1
  164 +I900
  165 +tp68
  166 +g20
  167 +I01
  168 +S'D\xb2\x81\xbf7k\xda?lx\xac\xc8\xad0\xe6\xbf\xb3\'\xdfq\x16\'\xdc?\xd9\x84\xe8\x97\xa2\x06\xf0\xbf\x82\x8d\xd7\xa7\xb9+\xe3?\xf2:D\xc8\xc7F\xe8\xbf;\x84\xdb=\xfa\x9c\xe5\xbf\xc6Ci\x1b\x9d,\xf3\xbfO\xd1m\x1cf)\xc4\xbf\xc6\x9e\x04\x91\x8e\xef\xf2?\xe7%=\tk\xcf\xe2?\xa3HfY%\x8b\xd7\xbf\x1fQ\x7f\'\x1a\xbc\xda?[\x07%\xea\x86\xb4\xea\xbf\r\xe5\x89\xca\xbeZ\xdd?\x17\xa8>\xf9\xc5P\xd3?\xb5\xa8\xb4 |4\xc9?&(\x96\x0e\\\xe6\xeb?.+/\x1a\xaf\x00\xea?\xc5;eK\xa0\xa7\xe5\xbf\xb0\xac\x15[M \xcb?\x8d\xd1\xcd]Y\x1b\xc9\xbf0b\x934\x16\x83\xcf\xbf\xde\t\xe0\xed\xdf\x85\xfc?C@rN\xc37\xa3\xbf\x8ei\x00\x9e\xb3.\xc9?\xa8\x82\xf1N\x103\xe1\xbf\xa2\xc5\x7f\x08Il\xe3\xbf7\x9f\xadv(^\xe5?\x08\x10f$C\x12\xb4?\x8c\t&\x1c\xed\xeb\xcd\xbf=?\xdd\x19\x18\xfc\xeb?0d\xe4\xb0k\xef\xed\xbf\xc1\xc3D\x9c\xed\xfb\xe0?\xc0l\xfc\xf0\xd6h\xdb\xbf\x14\x06\x99\x139\x8b\xe1\xbf_\x00\xb8\xc7\x9a\xc1\xe0\xbf\xee\x87\xe5\xe0\xe2\xd9\xc0\xbfA\xbc\x18\rxK\xd4\xbf^F\xdbq\xa8\xf6\x97\xbf\xe3)\xfc\xd6\xcd\xd4\xea?\xeco|\x82\xbd\xa7\xdc?]\xb6\xff\xb8\xcc\xc5\xe4\xbf\xc5[C5\xd0\xce\xd3\xbf\x91\x02\x08\xdcvd\xe5\xbf\xa5lrv\xa3\xd2\xa2\xbf\xdcY\xbd\x1e\xcc\xbf\xe4?~\xd3\xabL\xef\xf0\xf0\xbf\xe8\xc1\xa2\x9d\x96j\xf7\xbf.XN\xdd&\x82\xbc\xbf|\x04\xab<"_\xd9\xbfYj\x9aMH\x02\xdf\xbf\xcf\xb70m\xaf0\xa2?{2\xe1\xd1\xb0>\xd7?t? \x86=u\xbc?I7\xa7\xe9#\x8e\xf1?\xf2"\x1e(q\xc8\xce\xbfj\xdb\x16v/i\xdd?\xda\xae\xdc\xf4\xd3\xf6\xd0\xbf|o\t\xe6\x01e\xa1?\xba-\xbe\x9aS\x89\xdf\xbf9\x98\x11\xe1\xbe=\xec?\xbb\xe3\xf0\x9a\x87\xfe\xb0?\x8b\xd5D\x19\x11\xc7\xea?B\xa4\xddx\xe5\x99\xb6\xbf\x17\xeel\xa7v\xc8\xeb?\xcb\x827w\xd6\x1a\xbf?|\x01\xab:>|\xde?_\xfefM\xac\xd9\xd9?\xee\xcbk\x155\x0f\xc2?K\xbc\x88\xe4\xcf\xc3\xcc\xbftI\xb7\x93\xe1\xff\xdc?vY[\'\xd9\xf7\xe9?g\x1d\x8bE\xddf\xf2\xbf\xceeg\x81Y\xdd\xa6\xbfTr\xaf4\x1a\xf1\x9f?>\x03\x84\xae\x83\xc0\xe9?\xbfb\xd1\xf4X\xae\xd3?\xe3\x9a\x08b\xeba\xc2?\xd4\x16\xf3\x9a\x97"p\xbf\x10)S\x04V\xff\xd8\xbf\xa6\xa5\xbcH}\xa9\xdb\xbf}\xc5smnR\xd0?y,!\xd6\xfd\xb0\xe3\xbf\xeaC\xe7\x17\x18I\xf7?\x08\x14\xc6D\xf4@\xee\xbf\xf9\xb5w]6\x12\xc5?k\x83\\\x17Ng\xc2\xbfk\x86\xfa\x034%\xc3?\xbc\xfa\r\x8f\x92@\xdb\xbf\x0c!E\xa4\xb7R\xbf\xbf\xa4f\xcac\xaa\xba\xe2\xbf\xb9\xc8oc\xf5\xc8\xb7?q\x82eF"\x08\xd5\xbf\xe7\xe0\x97\xf3-L\xf2\xbf\xf3>uS\x83A\xcf?\x86\xfec\x98\xc1(\xbd?\x9b$\x14]\xefw\xd7\xbf\xabp\xa3\xd9x\\\xcc\xbf\xd6\x07\x933*\x9e\xd6?}\x8d\x9dm\xa2\xa9\xe0?\xab6Sq\xe4\xb2\xc6?m"\x16\x86o\x9e\xd2?\xda\x94g\xfcK\x1e\xde?T\xff\x9e\xdbd\xae\xe8\xbf\xbe\xbe\x9cz\x9b\xf4\xe6?\xe0$\xb8~\x7fJ\xdd\xbf\xae\xc7\xe6Q\xb6\x8a\xdd?\xf6X2\x8bTf\xe6\xbf\xe4\xda\xfe\xc4\xe36\xc8\xbf\xff!\xc2?\xf3\x8f\xbf?\xcec\xdd[Ji\xd3\xbf\xc9\xea\xe2I\xdb\xcc\xd5?\xeaH\xf8\xe2\xa2\x00\xb6?\x98\x13\xd7e\x01o\xd2\xbfo9\xaaof.\xc9?mA\xda\'T\x0e\xd2\xbf\x82c\xd1Z\xcd\xd0\xcf?\x19i,\x17A\r\xa5\xbf!\xdbb\x17\xd2G\xf6?aW\x88\x95\xe2\xe5\xc8\xbf\xc2\x95\x1eD\xd6S\xc9?$s\x8e\x91\xf10\xcc\xbf(x#J\xee\xfa\xf3\xbf\xbb\x16!2\x1dZ\xcf\xbf\x91\x10\x0c\x13\x86+\xc1?\xd4\xb8\n\xb5\xf1k\xed?\r\xa5\xd9|^>\xc6\xbf\xf7\xa5}4\x80+\xd6\xbf\xe7rY\x1e?\xa9\xe6?K\xe3\xb4\xb6\xd4D\xf2\xbf9\r~\x85\xab\x04\xe5\xbf\x82\x82\xb8\xf74\xc0\xdf\xbf\x11V\x8b\x95k\xa6\xdf\xbf\xb3R\x80\x17#)\xef\xbff(\x9d\xf0\xfa\x8f\xd8?\xba\x05a\xefc\x04\xfc\xbf\x14\x86Eq>}\xde?\x03\x0b%\xb5\xfc\x1a\xc7\xbfFF\x97\xe4\x0b\xa2\xe3?\xac]\xb7\xa5_\x94\xc7?\xf5>\x16c\xc9S\xc1?\xd4\x9dS\xe3Y\x1d\xe7?\xf3"L,\xaf:\xcc?r(\xf3|\xdf\xac\xd1\xbf\x19\xc2\r\xad\xf7`\xc2\xbf{\xf1\xf8\xd2\xa6\x00\xe6\xbfp\xeaz\xaa\x9e\xd2\xe5?\xaf\xd6\xb4\xab3\x85\xde\xbfE,\xdf8oU\xcd\xbf\x81\xc6\xee\xa9\xd7}\xb2\xbfM\x0b\xc3\x1d\x8f\x05\xd1??\xffe\xd0S\x03\xc9\xbf\xf8\xdc\xdf8\x013\xea?x\xcb\xc5\xd3vM\xf1?5Z\x863\x08\xc4\xe5\xbf\xb7\xb3/u\x91p\xcf\xbf\xf3\xa7\xd2\x11\x10\xff\xea\xbf\xb2\x05?\xdf\xe8\x82\xd7\xbf\x8c\xce\x02\x8c\r\xb0\x91\xbff\xdf,[\xab\xf1\xee?\xe4\xccxr^v\xdf\xbf\x8cX\xe4\xb3\x88\xf8\xcf\xbf\xc1aoX\xa3h\xd3?\xc6\xfb\xb7\x16F9\xcb?\xd2\x07^\xe8\xcdA\xe0?45\xeb\xa4\xc7\x8a\xc9\xbf\'A\x0b\xef\xdf\xae\xed\xbf\xf20\'\\o\x94\xc0\xbf\xbf\xf3\xb6I\x9b,\xd0\xbf5\xa8\x00\xd8\x02\xc5\xf3\xbf\xdf\x83\x0b\xf2\x8dY\xd1?\x1d.\x9c4\x12\xf3\xe6?%\xa3Q\xd9\xa3\xb3\xb7?/y,\xb0\xbc\x89\xf6\xbf\'\xb6!\xf8\xfa\xca\xdb\xbfm\x0b\x04\xb0\xde"\xe2\xbf\x9d4h\x17\x19}\xca?\\\xb4\xdce\x9b\x10\xe6?\x06\xcf\xd5I\x02)\xdc?\x03@\x14VUi\xe2\xbf\xbb\xaa\xff|\x8f[\xbd\xbf\x84\xc6\x16\xc1 \xd2\xe4?A\x87\x1b\x98\x92\r\xd6?q\x19e\xe1\xca\xb4\xdf?\xdd\xafY\x18O\x8a\xdf?%-\xd5\xa6m\x02\xf2\xbf\xab\xfa\xe4\xda[\xb4\xd3?\xdd\xf7\x00|\xd7j\xf0?\xfd\x03\xe8~1?\xb5?J[\x9e\xe3\x88\xe4\xda\xbfg\xf3@\x90{\x1b\xd1?"p\xe0j\xce\x94\xcc?\x0f\xf7\x1f\x8e\xc1\xf7\xad?b@s1\xfd\x0e\x9f?\x1d\x10\xf1=]\xe5\xc0\xbf\x07l\xfe+\xea7\xde\xbf\xdcgB@\x04?\xf1?__\x95\x80\\E\xe3?\xd0\xde\xd7\xd9\xfe\x85\xe7?`=\xc3\xf2G}\xc9?\xa4H\x84\x10\xa3\xb6\xf3?\xdb*\xe9\xdcNC\xc0\xbf\xd5}\x9f\xc9\xa8\xc7\xe5?a\x9e\x13\xc3T\x1d\xf3\xbf` 2D2_\xd2\xbfm\x12\x17\xfcw\x96\xe7?\x9a0\xa2u\xaa\xf3\xd6?\xe3\x9c\x95\xe1\x1d}\xd8?\x87+\x19j\x0ex\xc0?<W\x94%\xb3\xe5\xef\xbf\xaf9\xf5~\xf9\xed\xe6?\xc63\xaf\xc4.\xa3\xd3?\x16\x14\xe2_\xcb:\xcf?\x03\x0e\x9d\xc7\x8fh\xea\xbfa\x02f\xc8K0\xc1\xbf\n\x80\xc5\x11u\x88\xd2?\xf8\xe1\x88\xb3\xbc\x1d\xc7?W\xf8\x1e\xef\xf5\xbb\xe5\xbf\x13\xcf\xff\x1a\x8d\x89\xf3?4F\x0fAt\xad\xe4\xbf\xc3\x0e:\xfa\xa7c\xe0?\x9d\xbcI\x13IP\x8e\xbf\x1c\x02P\x9f5\xe8\xc9?\x14\x93\xd9\xde\xd6b\xea\xbf\x01\xf4\x87e\xf2\xc3\xcf\xbf\xea\xce\x93\xcenC\xe5?_\x81\xf3\x87m)\xcb\xbf.\x0c=YK\xc8\xaf?m3\x9a\\\xbey\xf7\xbf\xd6X[\x9f\t\xea\xc1\xbfN-\x9a[\xfb\x11\xe8\xbf\xe2=\xfd]\xd0\xf1\xd7\xbf\x0c\x0bF\x95\xa1=s\xbf;\x9756\xf2\xe8\xe0\xbf\x93\x1d\x15]\xed\xb4\xe9?\xdcr\xd5\xe4\xd7\xd3\xd5?\xd0\xa1_\xbd\xe9\xbc\xe1?v\xe8\x97\xb4\x84U\xe3\xbf\xa3\x16V\xb8\xecE\xeb?\x00zX\xfce\x03\xdc\xbfI\xfb\x1d\x0cat\xd4?\x89A#\x9d\xde\xdc\xc0?C\xe3\xa1\xc2l\x9a\xa7?gv\xaa\xe0z\xf2\xf3?;\x8dN\xa4\xc9\x06\xe2\xbf&%\xc6\x03\x7f\xce\xeb\xbf#5x\xc8Et\xf1?\x9a\xdeO\xd2p\xf5\xd5?\xed\x9e\xcc\x84\x8d\xa6\xe9?S@K\xcd\x05\x9b\xc6\xbf\xac(o\xa6\xa7-\xf0?\x85\xdd\xdeX\xd9t\xf2\xbf\xd4\x8b\xb0io\xb0\xd2\xbfK\xbc\x80\r\x89*\xd6?\xde\xf1t\xd9\x07;\xe1?E2\xa8N\xdf\x83\x8e\xbf\xb2\xf1TUO\x03\xeb?g\xd1\xc5\xe1<\x82\xde\xbf\x9b\xec\xee\xd3\xd0#\xef?\x9ck\x95b\xc3I\xd3?\xa0\x8f.\x1a\xddA\xb7\xbf\x1c\xd1j\xbas\xfa\xe0?\xa4\x1bX\x8aj\x12\xe5\xbf\xd4\x9e\x98T\xedy\xd3\xbfe\xe4N\xd9\x85\x89\xa7\xbf\x7fh\xfaz\x00\xa1\xe6?\xce\xd7{?\xde\xf9\xd4\xbf\xc5\xad\n~\x9e3\xf9?\x8cj\x86y\x02\x04\xe9?\x00\x82\x04q\x1br\xb0?K\xb2\xf4D?W\xf5\xbfX\xd1\xaeA\xect\xd5?IOh\xa3\x8f\x01\xe0?R\xf7dcTm\xf1\xbf\x81\xb1hhJ\x0f\xf1\xbf\x0b\xe4ay\xa5\xeb\xe6?:O\xf7\xec\xeb-\xd7?\xc15eN\xc1\xf7\xde\xbf\xe0\xe5\xa4\xd2\xb0\xc7\xeb?\xa4J\xcd\x00x\xfb\xe3?\x9de\xee\x80\xa9-\xd6?=R\xa9\xb9\x9a\xa6\xd0?\xa6\xb26gS\x9d\xc5\xbf\xf9B\xd0\xab\xd4\xfb\xf2\xbf\xb3\xbd\x97\x83H\xe7\xd6?\xde&c\xc2\xf9\xb8\xe8?2M\xde\xf0\x92\xc4\xd1?\x0f\xd7\xfcc\x18\xc5\xe8\xbf\xca\xd9\xf4O\x9b\xb7\xdd??\xba\xd3]\xf6\xa8\xf2\xbf%\x01\xe9\xc3<\x01\xda?\xd4=\x9f\x9f\x93%\xcb?\xd29\xfdW\xcdr\xde?\x8a\x1a\xb4\x8ei^\xdf\xbf\xafJx\x1d\xb6{\xd1\xbf4\x88\x9c:\\\xec\xf2\xbf\xc7\xe5\xf7v;\xf0\xbd\xbfqB\xb4\x86\x85\n\xd7\xbf\xbb\x1ax\x0f\xf9\x06\xe8?z\x88}\x84\x91\x9d\xe2\xbf\x9a\xf1\x0f$\xa6\x95\xe8\xbfE\xb8g+\xa9=\xd1\xbf:\x16\xca.\xac\xec\xc3?H\xf89\x08\xbd*\xcb?lD5\x97\x0b\x05\xb9\xbf\x03\x9e\x1aB{2\xd4\xbfT\x15\xe2\x88\x85T\xd7\xbf.8Gn;\'\xd2\xbf\xce\xc3\x86A\x7fY\xb6?%]\xf0\xe7\x08\x83\xd2\xbf\xef\xf6\xf6\xf8D[\xe1\xbf\xdb2\xca\xe9G\x86\x85\xbf\xfb\xe9\xe6\xddRt\xcd?\xf0\xbe\x9a\xd8\x1b\t\xb5\xbf#\xc6\xa7\\A,\xe1\xbf\x9d\xfa\x86\xb0?z\xd6\xbf\xad]\xc8\x07\xaa\xe2\xd0?TY\xb7th\x92\xc4\xbf[A\x01G\x8a\x14\xf1\xbf\xe1\x96"g\xad\x8d\xe6?\xc5Q\xff\xfe\x85y\xe7?\xc5f8-\xb4r\xef?\x92\xd1h\x85\xb9\xd7\xe0\xbf\xcf\x9fnw\x81\x8d\xe7?\xe2\xa7\xb7<;\x8d\xf7?\x80\xbc\xa6@\xcbE\xc3\xbf\xa6\xc0ww\xaeg\xe4?\xf1\'\x98v\x08\xf3\xc9?P\xccD\xdceI\xd4\xbf\xdb\xdf\xc7\x11\xeaE\xc9?\xd4D\x18\xda\xf3`\xc0?\x9b\xb2s`\xb3G\xa1\xbfm\x0c7#,u\xd2\xbf&\xc3-\xd3G\x9b\xe1\xbf@\xfa\x8fh\xe8\xe2\xa2\xbf\x00LY\xa2(\xce\xf6?\x83c\xff\x98Xu\xe9\xbf\xed\x84H\xc7<\r\x8a?\x1a\x030>\x19\xdf\xbe\xbf;\x86\x00D1\x9d\xd0\xbf1,\xd3\xfd\x9aP\xb7\xbf|m\xf8\x18y\x14\x8d\xbf\xa9\x87m\x13n\xec\xe3\xbf\xfe\xa3\xa9\xfa\xe9\x01\xab?\xd0\xc7Kt\xff\x01\xb7\xbf\xden\xc4\xbdvn\xf2?\xeb\xab\x85\xf8(G\xd1\xbf\xa6\xe1\xbf[\xc3\xfd\xc5\xbf^ra2\xb3\x99\xc0?\xb4\xba\x1c\x95\x7fg\xd8\xbf\xeef\xda\xea\xbem\xa2?"\xdb\x92t\xa1\x14\xe6\xbf\x07P\x90l\xa4~\xee\xbf\xefO^\xce\xad4\xec\xbfR\xd9\x85\xe1>\x06\xd8\xbf\x88\xd3\xc5mLt\xe9?\x7fn0\x91\x97"\xd7\xbf\xa9\xae\x81tM\xf3\x9d\xbfr\xda/\x9c\xac\xa7\xa3?\xe4\xd5\x0eN\x9dF\xeb\xbf\xa9/:\xfcG\xe5\xf3\xbf\xfd\xea\x05\xc3^\x18\xda\xbf\xf0\x8fn\x01\x80Z\xf1?\xce\x8ev.\x10\xbb\xc7?\xd5\\Xt@p\xe1?\xd75|y\xd9\xe2\x95?\x19\x01e\xd5\xdc#\xc6\xbf\xf4\xf7\xdf\xaa\xca\xe7\xc6?9\xec\x185\x1b\xe0\xad\xbf\xdb\xe1"\x1d\xcd.\xd3?o\x06*\x8e\xe46\xd0\xbf\xa5\xd0\x1d\xd9[t\xf0?\xd1\xa5\xfc\xd0\x86\xf2\xf2\xbf\n\xf6\xab\x1f\xe5\xe1\xd6?j\xac\xb9\xa8{a\xc9\xbf\n\xaa\x9bF~\xaf\xf4\xbfS\xd1\x82b\x8a\xec\xdf\xbf.\xb9\xa1\xee\x9a\xe5\xd5\xbf\xf2\x11\x190\xb7\xc9\xc2\xbf\x9bF\xdd\xb1\xfd\xc9\xc5?G\xba\xb7~8\xa0\xcd?\xd8Tl^\xacs\xee\xbf\x84`N\xa7_\x15\xb4?2W \x86\xc2\x9d\xdf?~\x87~\xb3H\xb7\xf1\xbfvz\xc1%V\xc9\xd1\xbf\x8c\xe6\xfbOa\xad\xbb\xbf\xbc\xa2\xef\x15\xf3[\xeb\xbf<9\x84\xc1d\x85\xa5?\xa8y\xda\x9c\xbe\xa8\xab\xbf\xdb\xe0\x12\x14nL\xd3\xbf\xec\xc1\xf6\x81\xe0\x86\xe1?\xfb#dE}\x1a\xc1?\xdc\x82\xe2{v\n\xd4?\xd5e\xbfN\xca\x05\xe5?$\x85\x01\x15@\xfc\xdc\xbf,$\x9cB\xe2\xcb\xdc\xbf\'\xc8\x86\x9c\xc4\xd7\xde?\xc4\x8cR7z\x08\xea?]\x18\xb0A\xc9ju?\xd9\xed\xff\x0b\xdd\x90\xda\xbf\xdf\x9b\xa8n\xa5\xf1\xd3\xbf2\xec\xa0\x8d\xda|\xf3?\x95\x8f|k\xea\xbf\xe3\xbfc\xf8\xdc\x1a\x88\xd8\xe2\xbf|\xfb\x8bSx\r\xcc?\xf1\xd1\xdeQS\x92\xde\xbf?y\xfa\xa3G\xb9\xd9?\xb7qZ\xb6o\xd1\xe9\xbfO\x8d\xdew\xae\xdd\xc8\xbfC\x93u\x01\x91N\xe0\xbfw%\xd2A\x86\x17\xee\xbfz\xff3\x89\x15}\xe4\xbf\x91\x99\x9fiH"\xf0\xbf\x02\xea\xa2\x9f\xb2 \xe8?\xa4X\x98y"\xe7\xd0\xbf.\xbf\x14AO\x83\xe0?J\x12A\xb9F5\xe4\xbf\xe8\x16m\x83\xa0i\xf3?U\x85>\xc7\xadY\xc2\xbf\x95\xda\x81\xe5j\xa8\xe0?\x8c/N\xcbg%\xe8\xbfE\x86\xef\xb2\x1e\xd4\xd7\xbf\xff\x82\x01i\x1eU\xf6\xbftj\xdbwY\xc8\xe6\xbfmP$ov\xc7\xef\xbf\xb9\x81\x14n&`\xb5?\x9f\xfd\xe6\xc2.r\xd2\xbfFF\xa2H\x1a/\xad\xbf\\\x9fN-\x9f\xd3\xe1?\x9c\xab\xa8\xb7\xf89\xb8\xbf\xb6\xb27\xee\xf0\xcd\xe6?\xc3\x97\xd3G!\x8d\xcb?\xfb\xc6hi3\xe0\xe9?Z\xaeX\xa4IR\xec?)\xa7\xeeW0\xe1\xe5\xbfE\xdb\x05\xbb2h\xe2?\xa4\xb9\x1e\xba\xa8\xeb\xc3?\xc7\xaec\x889\xcf\xe1?\xe6\xdb\xac\xd8\xa4\x9e\xdc?=\xa7\x98P\xa8\x94\xe7\xbfe\x0fBj\x9d#\xb1?W\x19\xc3\xa8j\x0e\xea\xbfn\xd9\x86\xcd*\x00\xe6\xbfJ\xf1\x9e\xd9G\x84\xa0?\xe5\tXy\xffd\xfa?\x95&y\x95qL\xc4?9\x81Q\xd2\x98\x84\xe5\xbf\xb9\x98\x0cf\x93\x03\xe1\xbf\xb8z-\xff\x89\xdf\x87\xbf\x16\xd0\x10\xcf\xac\xe4\xb5\xbf\xc0y\x90\xd2}D\xf2?N_\xfe\xd9\x84c\xe8?\xf9\xf6q\x9e\x9c\x99\xd3?\xb77\x07\xab\xf2z\xc9?&\t(T(\xa2\xb7?\x9c6\x01`wO\xe7?\x91\xf2\xad\xe9\xbc\xb6\xac?O\x99\xbeU5\xa6\xe2\xbfv\x0cF\xf9\xc1(\x91\xbf\xd4\xc1u\x87\xc0\xe6\xee?\xb4\x9f\x82g\xbcQ\xae?W\xc6\x86\xde<\xb7\xca?\xaf\x07\x96Y\xd3\xaf\xb3\xbffx\x10\xdf\xafH\xc9?\xd0\xb4\xa6\xb1\xb5!\xe2?\x95\t\x9f\xdd\x88\x93\xcf?\xdb\xd8l\x99\x0c[\xf4\xbf\x88a\xc3\xd9n\x8d\xd9\xbf\xd8\xcf\xcaOg\xd0\xee?\xe4\xe1\xbf\xd7\x89F\xec?0\xb0U\x8ev\xaf\xd3\xbf\r\x91\xf9\x05\xa1F\xe9?Y\xbf\xf9\xe3\x8f\x96\xd9\xbfF\x86\xd34J*\xb5?\xa6\xab\xfcY!\x84\xdd\xbfB\xaf\xea\xec\ne\xdc\xbfE|\x1d\xa0\xf5/\xef?\x04\x0bl\xa0\xe8\xd8\xe4\xbf\xb9\x83\xdbf2\x94\xeb?)\xe8\xdc\xaa\x7f\n\xee\xbf\x95\xac\x98qNL\xb6?\x1a\x010\xaf\xbb\xfe\xa7\xbf\xec\xe7\xc4\xb1{\xc2\xc8?\xb7\xd3h\xa8\x04\x0e\xd3?\x01$\xf9\x0bt\xcd\xf3\xbf\xca\xd9.3![\xa2\xbfLg\xe5\xfecu\xd2?\xf8\x97\xd6R\xcfJ\xc1?\xaf&s\x95a\'\xf3\xbf\x88\xe8\xf4\n<\xad\xe0\xbf\xe1\xdd\xadT\x9a\x0c\xf2?W\\\x19\x19\x93V\xd9?S\x12\x06l\xd9\x00\xe5\xbf\xd2\xe0\x1b\x99-\x01\xdc\xbfdM~vG\xa5\xce?\xe4\xe9U:n\xdb\xdd\xbfV\x03\x81y\xbd\xa7\xdd\xbf\x05\xf1f\xfb\xaf\x0f\xd6?\xd4f\xc5\x17\x94\x8c\xf1?/\xf4Q$\x02$\xc9?\xd2!7s\x84]\xc0?Y\xdd\x15`\xc5$\xcf?II\x86\xc2+\x81\xda\xbf\xcb\n\xf1\xedg\xab\xce?\x90\xcb1U\xc6\xc7\xe8?\xee\xf9\x99\xbf\xf1=\xaa\xbf\xb4\x04\x92\xe7pi\xa9\xbfV\x98\xf8r\x06\xf4\xeb\xbfE\xdd\xaa\t\x16\xe7\xe4\xbf\xef,9/)\xfd\xba\xbft\xfa\x10S\n\xe8\xc6?\xf8[\xf8JN\x8f\xcf?\xa9J\x1e.\x18r\xe0\xbfM\xddo\x04\x08`\xbc\xbf\x15n\xb07\xb9\x11\xd2\xbf\xf1\x92\x8bEz\xe6\xc8\xbf\xc2\xe7\xca\xd7{\xa3\xb6\xbf\x1d_\xad\xfd\x94\xe3\xb6?\x08y\x92\xd83`\xea?B\xf2\x08J\xee\xc2\xda\xbfc\xdc\xffi\x85\xe6\xca?)\xd9cC\xfbK\xd3?84\xef\x03N\xb7\xf6\xbfbH{{\x8d\xfa\xdd\xbfYq\xd0\xab\xce\x0e\xd8?\x1c\x0b\xaa\xa2\xc9(\xf0\xbf\x9a\xd1U\x8b"\x91\xd6?C\xfe[!\xd44\xa9\xbf\x132\xa8\x9b\x8e\x93\xc5\xbf\xe1\xa6=>\xae%\xe4\xbf,\xd2Z\xfc>\t\xd6?\xbbt\xe0\x96.\x95\xd4?\xf0vg\xde\x0e7\xbf\xbfu\x9b\xcchW?\xe2\xbf\xae\x89\xd5\x88\xbb\x91\xc6\xbf\xfaz\x87\th@\xc0?\xd5\x97]\x8f\xb8\xb3\xd5\xbf\xf7*\'\xf8\x0cn\xe7\xbf\xa5s\x97\x0bG\xfa\xc5?\x15w\xf1\xb8\x8c=\xe5\xbf\xd6\xfbb\xcfR\x98\xec\xbf\xe3=\r\x8b\xe9#\xed?S\xb1\x9e\xc6X\xfb\xe5\xbf\x00e\xa8n\xbc\x9f\xf8?\x0f\xba\x85\xac2\xa9\xe3?\x8c\xa5~\x13fd\xca\xbf\xf8w\x84\xee\xdd\x7f\xab\xbf\xfa+C\xe3Bw\xe6\xbf\xd7\xe4\xfcD\x04\xf0\xed\xbfV.\x15\xc3}n\xf2?I\xb3?\xad\x073\x85?\x89\x87\x0f^\xefS\xe1?\xee6W*^2\xec\xbf\xc9J{\x9e\xb1f\xe9?2\\\xa7t\xd3\xbd\xd2?\xc7\xb0\x16_n2\x95\xbf7\xb26\x08\xde+\xde\xbfRp\x82\xc0{\x9b\xa3\xbf1\xe6\x9a\x13u\xc7\xf8\xbf%\xde\x91\xf1\xdcP\xe4?YX\xa8\xa0D7\xe7\xbf]M\'\xe8\xdf\xd9\xe4?\xc5\xdb9%\x8aw\xe1?\xfe\x19\xea\xbb`\x8e\xd0?\xe6\xdd@\xa1\xf7O\x97\xbf\xa3F~\xe3n{\xdd\xbf\xe4r NB\xc0\xc2?*\x1b\xe2Pv;\xe4\xbf\xb5\x0c\xe5[i<\xdf\xbf!\x86\xb8\xa4\xa8A\xe6?\xd4\xc35\xe1 \x89\xe5\xbf\xcd\xa9\x92s\xb6\xed\xa0\xbf\xe8P{`\x95\xbe\xac?\xfbT\xef\'\xf9f\xd2?\xcc\x8d\x92,2\xd8\xde?\x1a#H\x85\x01\xb3\x91?\xc0\xe8^(An\xd6\xbf\x82\xa9*\xb5\x85l\xd5?\xf2x<\x1c\xa6\x01\xe0\xbf\xd5\xae\x1aX\x93\xc1\xf0?\xd2\x83\x85z\x0e\xdf\xe4\xbf\xcabs\x8c\xa5l\xc2?\x11\xf7^\x90\xec\xd8\xd9\xbf\xf6\x1d\x1cMq\xb3\xee?\x15\n\xf6\xb8\xd7\xcf\xe9?\xa6\xa6\x95\xc9 "\xd4\xbfw\xa6\x05\xb6T\x99\xe9?w\xba\xc4\xa3e\r\xc6?;\xee\xfa\xbft\xe7\xe7?\x9f\x15\r\x93\xcf\xdb\xb6\xbf\xf3\xc3\xe6V(\x83\xb8\xbf\xb8&\xad(\xef\xe0\xd3\xbf\x9aY\xd1XvN\xf0?\xce\xe1^\xc1\xbd\x93\xe7\xbf!%,\xb1\xfe\xdc\xdd\xbf\xae\xfdB\xc9\xa2\t\xd0?7\xd2\xa4\xc3\xd6\xcd\xe9\xbf\xffI\x18\x82\xc4\xd3\xea?T\xf8\xd9\xa3\x8b[\xd1?\x86\xc5\x95\x96\xa0\xd7\xda?i\x83V-\xf0\xca\xa8\xbf\x95\xe8\x8e\x94\x87\xd7\xbb\xbfG\x1b\xfb\xab\x1f\x12\xbd\xbf\x132;@e\xf9\xc2\xbfo\xf6\xb1\xa9\x95\xa0\xe4\xbf\xe7\x12\x1a+@\xaa\xe5\xbf\xb8\x81\xe5M\xc1E\xa4\xbfKp\xd2_\xfc\x80\x93?\xb5\x08IH\x05Q\xec? \xc4\xff2\xc7\xd1\xd7\xbfzo\xc4Y\x01\xca\xb2?\xc0\xf7:\x82\xd6Y\xdd?\\\x08\xed\xbf\x01d\xe1?\x98\x1c\x99bxA\xc1\xbfj\x17\xd8%\x88i\xf2\xbfZ\xea\xbe\xdfxA\xe5?\xec\x87\xa74\xbcU\xcc\xbfzhqGb-\xd6?\x1a\x0cN\xde\x00\x90h\xbf\xe6\xcbX#J\xe1\xcd\xbf\xd0\x86\x131\x18\x18\xf6?x\xe3\xda\x8eh!\xac\xbf\r\xc3\xea7\x7fd\xa6?\x85K\xf4L\xc9\xfb\xe8\xbff\xd9\xb65\x0b\xca\xdf?V\xa3/d\x08:\xe9\xbf\x0e\xadk\xfc\xf2\xa4\xdc?\x017\xa9\xbe\xf2.\xe4?\xa7\xd7\x82\x01!c\xe3\xbfu^\x9a\xb6MK\xe1?)\xe9\xb0\x8c\x06\xff\xa5\xbf\xf2\xe1\x96\xd2\x9f\x13\xe3?\xda90\xad\xfc\xad\xe6\xbfD\x9b"\xc3km\xdc\xbf\x91\x1d\x04\x1f\xb9\x17\xf0?Xq\xe2\x1c\xcc\x0b\xe9\xbf\xa2OS\xf8\x9as\xc5?\xa7\xcf\xb0H\xbd\x02\xcf?V\t\x12\xe6E\x9b\xcb?\xc3\x86JX\xaa(\xf2\xbf\x8e\x95n\xe9\xe7\x8c\xd0\xbf\x1d\x95\xc9Z\xc9n\xd4?\xee:]\xf1~u\xcd?\x03\x1e\xa7\xe5\xd3\xdf\xc6?Q\x7f\xd1:\xbcn\xf0?\x91?\xb7p \xe4\xcb\xbf\xc8s\xcd~\xdd+\xbd\xbf\xe4\x97\xdd\xc3\x07]\xd8?+\x92\xaa\xb2\xeb\x06\xe2?\x97L\xf5\x9e\xb6G\xe1\xbf\xf9N\x9f\xc1\xc9\xdc\xd3\xbfB\xa9\xbf\xfe\x01\xed\xd5?UbSSvh\xd1?\xa3H\xaf\xd5\xdf?\xf8\xbf\xc0\x08\x11 K\x8d\xb3?f\xdfq\x87 \xda\xe0\xbf\xf1\xf8\x0c\xf3)\xa1\x8d?\xcb\x01\x9f!\xa9\xb9\xe5\xbf\xed\xd4/\x8d\xa8\x1a\xe3?\xdaI\xd7\xfa\x81I\xd0\xbf\xc1\xc5a\xc0\xe9\xae\xe4?Lru\x99\xb6\xf6\xf1\xbf-\x8e\x8c \xc5\xee\xd0?\x81\xd0Z\xdd?,\xd9?\xda p\x13\xb0r\xd3?\xa6d9\xe4A\x84\xc2\xbf\xdb\xfeg#\xc5\x92\xae\xbf\x166WR\xdez\xb1?\x1e\xefb\x13\x8c\xcf\xa1\xbf?C\xc1\x1c\xa2\xd5\xcf\xbf\xfe\xb8\x17\x9f\xcc\xb1\xb8?\xd5\xfb:i;\xda\xb7\xbf/\xbd8\xca\xa5\xc7\xe9\xbf\x85\x03\xbdwb\x94\xdf\xbf\xaa\xa3\xac\x80\x1a)\xe0?A\xa6\x04\xaf\x8a&\xb9\xbf\\"]|\n\xaa\xeb\xbf\xff>\xcb?\xa1q\xd3?\xb0\x99p%\x01\x15\xd4\xbf\xc2\xe8 aj\xc0\xe8?\x843~\xcd\x1c\x06\xc6?ko\x1a\x80\xa0\xeb\xc8\xbf\xa2\x0b\xae})\xed\xed\xbfb\x14U(\xb3\xc0\xdf?\x85\xd3f&\x84v\xf2?_[%\xbd\x9e\xfa\xd2\xbf\n\xfe\xbe;\x02R\xd0\xbf\x81\xd9\xf3\xbd\xe2\xbb\xd6\xbfd\xb3\x9c\x12\x93;\xd7\xbf\x16@6\xc3\\\xa7\xdb\xbf\xd8\xc5\xa1\xe5\x1b&\xc0?\xc0\xe1\x98\xeb#1\xf5\xbf=\xa88\x9a\x87\xed\xd4\xbf\xd1\x96\x06\xf2L\xf8\xe4\xbf\xc0\xea\xad\xea\xa7\xf9\xd7?\xa0\x18V\xdfIh\xe9\xbf\x07\xe7\xa9%\x1a<\xc1?h\xcfI7e\'\xf3\xbf3\x1f~\x91\x83x\xca\xbf\n\xbcQ\xd4\xf5W\xc8?\xdf\\\xd6\x13\x88\xe0\xd7?\xf7\xa2i\xd1r\xd0\xda\xbf\x07>\x9b\x86\x9fY\xc2\xbf,\x9c<\xd6R\x08\xd3\xbf\xa6\xc2\x95\xbb8\xbb\xe2?\xde\x91\x94O=a\xe4\xbf\x0ch\xcd\xa3f\xfe\xd1?\xf9\xec\xa8\xe1l\x80\xe4?\xc2\xb8\xa5\xa7\xb8\x98\xd0\xbf\xe3H\xd0Sk\x06\xb9\xbf+N\xbdM\x7f\x19\xe2\xbf\xb8\xa9\xa7N\xb5\xc3\xe6?\x18&=7~f\xe0\xbf.\x9b\x92@ \x1c\xf7\xbf>_UsF\xfb\xab?sm*\x8f\x16\xd8\xdc?\x06\xb3\x1d)\xfb\xf3\xbf\xbfk\xc9\xd1\x0b\xc5\xb1\xd9?\xc8\x12q\xa4\x96J\xea?\x80%\xa4:\xf0\n\xdb\xbf\xe4\xa9\xbd>\x0e\x00\xd4?}\xe5\x801\xd1\xcc\xf9?#2\x1e=%\xad\xc8?~\xed\x9f.\x92\xa9\xdf\xbf^\xe95sqL\xf6?M4gP\xb9\xbd\xde\xbf\xa76C\xd0\xc3\xd3\xdb?t\xa4\xd60*\xe4\xa3?\x0bH\x9eC\xf8u\xcb\xbf\xa3&\xa1j\xd1x\xbf?\x9f,\xe7oQP\xf0\xbf\x99\x9cz\xb3\xb7\xbc\xe0?\xaf\xd6\x1b\xaf\xe0\x9a\xcd\xbf\xe5\x1b\xdd\xbaC \xdc\xbf\xf3\x12\xb6k\x9e+\xd7?\x06\xb1\xf9\xaeH\x87\xe4?x\x15y\x9eI}\xbd?\xec\xf5\x1f\xeb\xddz\xeb\xbfL\xfew\x7f_\x99\xd1\xbf\x17\x19\xb1\x9e\xe7t\xcd?\t\xcf\xd1s\x01t\xdd?0`\xb1`\xdf\x90\xe0\xbf\xb1dkS\xddy\x9d\xbf\xf3\x19\xc6\xa8\xaba\xe3\xbf\x9b~/9\xab\xe7\xe2?[L\xcf\xd8\x80&\xf8?+\x8a\xf3%\xf5\xe1\xe0?=\x84rQQ\xc1\xde\xbf{\x9a\x8a/\xfd\x15\xc5?\xa8\xaakw\x9e0\xc2?\x0c"\x01\x88j\x9c\xed?\xc8\xcb\xdbJ\x8f\xdf\xe1?\x1d\x86\xce\x16\xb74\xd0?\th\x90>M\x07\x9a?\xe1W\xbb\x98}\xed\xf6\xbf\xc4\xc6\xa3\x97`\xb5\xe0?\xf2\xf7\xed\x14\xc5@\xbf\xbf\xca\x12l\xb2\x95\x0f\xe1?\xa1\xdb\xfc\\U\x00\xc1\xbf\x85_5)\xc7\xef\xcd\xbf/\xeb\xeb\xe0\xe3\x88\xb3\xbfo\x8a\x1d\xc8\xa0\xf9\xec?R\xec\\\x97c9\xc4?\x11d\x1f\xd2%\xf7\xed?\x9b\x893\xf7O\x02\xc6\xbf\x0c\xa6\x80\x85\x04\xc7\xc4\xbfj\xc4\xf0\x18\x15_\xda\xbf}\x933\x98\xcdE\xd4?\xc1O\xbb\x85\xe3e\xd6?\xf3Z%#\xcb\xcc\xcc\xbf\xfc\xa2\x9a\xa4V\x04\xcb\xbf\xb3]\xe6\xb7\xd5\x9e\xbf\xbf8f\\#\xcd}\xef\xbf-&L\x8c\x15\xdb\xc0?MW\xa1\xdc\xff\xc4\xc2?\xa6\x1dKOJ\x93\xdc?\xd2\xa1<\x99\xf1\x9f\xc9?\x8c\xad>uU\xc5\xc5\xbf\xc2\x83\xb9\xfdT3\xb1\xbf\xe2\x03\xdfp\x10\xb2\xe2\xbf+Lrl\xe2f\xb5?6\x16\xb9_\x16\x85\xd1\xbfd\x82Xv\xdd\xcf\xf4?dw;\\6Q\xdd\xbf\xe7x\xa6t\xe34\xe6\xbf"\x91V\x17\x91\xc3\xb8?\x8f\xb7\xf1x\x9cT\xe8\xbf"`\x1cU\x0e^\xec\xbf\xa6\xd3\xcc\x02u\xb8\x86\xbf\x7fp\x17\xea\x82\x06\x82?e\xd5\xd1\xd4R\xac\xe2?"\r\xa4\x050|x?M\x9b#\xa9*\xa3\xe5?\x8bG\xf1&\x83:\xb7?`a\x81\xe1\xab\x99\xbc\xbf.\\\x85\'\x95\xbb\xc4?\x02H`\xe6\xf7\x04\xd2\xbf\xc1\xc2\xd9\xb3=\x94\x96\xbfM\x125\x89\x05\xff\xc5?\x19\x10\x9a\xceV\xdc\xc9\xbf\x04\xe0{s\r\x88\xbb?)/\xcc\xd4\x87\xb0\xdc?{\xcaB\xd5\xbaz\xad?+\xe8\x85\xd7\x8dN\xe6?\xe7&\x04\xb4\x8b|\xe8?aI\r\xe5\x15\xae\xce\xbfJ\x9ad\x00x\xf5\xd9\xbf\xba\xf4\xa3\x95\xb67\xa3?GZA\xe3n\x0b\xf0\xbf\xb3\xc6\xb7\x95\xba\x8d\xf1\xbf[[\x8f\x81n\xa3\xc1\xbf\xa2\xc5\xad\xcd\xb1\x91v\xbf\x05\xd21\x0e\x95\t\x9a\xbfIp\xfc\xc3\xd2\x01\xd6\xbf\x94\xb0\x1d\x02s~\xb5?nc\x87\x17\x84h\xc3\xbf\xeb?\xd8\xb1\x9f\x0e\xf0?75"\xc2\xbf\xe1\xc3?]/\x133\x8d\xc4\xdf?Ap\xa1twT\xc9?T\x9c\x8a\xb5y\x82\xf2\xbf\x1b\xed\xa85\x7f\xad\x98\xbf\x8e!*#\xf5\xa4\xed?l\x7f\xe2\x99g[\xc2?QOjj\x18h\xdf\xbf\x99\x85[\x99\xcd\xdc\xca\xbfI3"\x86\x7fq\xec\xbf\xba\x8b\x81\xe7e\x8e\xd3\xbf\xafn\xc9\xa9gi\xe2\xbf\xd3\xc1\xbf\x0b\x0f\x16\xde?%\xb6iw\xad\x81\xe5\xbf\x02g\xbboT=\xea?\x8aD\xbe\xfe\xc2[\xc5\xbf0!\xfd_\x941\xc2\xbf \xb9\x9b\xf4[\x9c\xef?\xe4\x04\xdc\x981G\xc8\xbf\xed4*\xec\x16T\xe7?\xddK\xf2a\xb2\xfb\xe1\xbf~\x7f\x16!\xf95\xc2?\x98\xe9\x03:\x11\x81\xde\xbf\xdcLg\xff2\x89\xde?\xc7;\\\xac`z\xde\xbf\x0c\xe2n*\xab\x9b\xde\xbfh\xd3^\xa0\xf6l\xf0?r\xc2\xd9\x99\'\xf9\xd8?\x1d\xed\x88\xbdF\x9b\xe0\xbf\xa9\xdd\xe7\xfd\x9aA\xc7?\x15o\x0e7\xaf\x9e\xe4\xbf\xfa\xfc-\xd3\\\xefw\xbfA\x0b\x83\x1d\xe6\x81\xe5?\xdd,O\xe3\xb6\x80\xe0\xbf\x12\x8ffQ\xb8G\xc0\xbf.\x10\xc6}~\x17\xe2\xbfE\xb2Ki\x8d\xcb\xd9\xbf,LN\xab\xba\xed\xc3\xbf\x9d{\xa1 \xa1\x8e\xd2?\xeb\xdd\xb8|\xcb\xd2\xd4?%U\xc3\xefr\xea\xdb\xbf\xea\x03\xacYi\x82\xd5\xbfh\x1d\xf0\xe6\x12\xcf\xef?\x9f1\x97\xe5a\xed\xd7?R\xf4\xcd3&\xab\xe4\xbfO\xb9w\xe5\xa9\xe5\xc9\xbf\xfc5\x147|\r\xe7\xbf\x03\r\xfbg\x91`\xec?\x96\xb6\xaa\xc2\x1b\x93\xce\xbf\x9d\xbeV)-"\xe3\xbf\xd2"Y.!\xfb\xf0?\x99\x0b4\'\xd8\x1f\xc8?N`\n\xe8\xcch\xf3\xbf(@\x82\xe6"\xaf\xec\xbf\xd3V@\'\x9c\x06\xde\xbf\x86\x87\x00\xfa<~\xe5?_R\x17\x91~R\xbe?\x86U\xd2\xad\x8d\xf0\xc6\xbf\xe7\xd9\xff\xb8A\xc5\xe1\xbf\x9e\x8f\x7f$\xd8n\xd1\xbf\xc8=\xfdL\xf8\x18\xf2\xbf\x16\xfe\xb3\xd5-X\xe2?\\bh=N\x14\xb6?\x81\x05\xb0^\xbdy\x8b\xbf\xd4M\xbb\xa8\x85h\x9e?\xf3\x9e`\xf0\x8e\xe5\xdc\xbf\xd0Q\x00\x9cw\x99\xe5\xbf`\x8dpz\xe6\x19\xd5\xbf\xb3\x9eY\x91+b\xa2\xbfht^ym\t\xb7?;\xe5\xbd\xc5\x19@\xd4?:\xd6g{\r\xd5\xe6\xbf1\xb0\xfa\xc9\xee\x1e\xe5\xbf\xb3\xeb\x0f\'\xcc\xdb\xd3?\xd6\xd7\x90\x89\xfb8\xbe\xbfcaf\xe5*K\xbc\xbf\xd1\xc9\x1f\x9f\xdat\xe0\xbf\xef\xf4\xa2\x0ev\x9b\xcf\xbfM\xdc\xba\xe1\xbfi\xe2\xbfG\xb4ya\x94\x03\xf5?\t\xe8\x1e\x1a.\xea\xf7?'
  169 +p69
  170 +tp70
  171 +bsS'class_weight'
  172 +p71
  173 +NsS'intercept_scaling'
  174 +p72
  175 +I1
  176 +sb.
0 \ No newline at end of file 177 \ No newline at end of file
1 __author__ = 'chunk' 1 __author__ = 'chunk'
2 2
  3 +from common import *
  4 +
3 from mdata import MSR, CV 5 from mdata import MSR, CV
4 6
  7 +
5 def test_MSR(): 8 def test_MSR():
6 dmsr = MSR.DataMSR() 9 dmsr = MSR.DataMSR()
7 # msrd.format() 10 # msrd.format()
8 # msrd.build_list() 11 # msrd.build_list()
9 12
10 - dmsr.store_image()  
11 - dmsr.store_tag() 13 + # dmsr.store_image()
  14 + # dmsr.store_tag()
  15 +
  16 + # dmsr.extract_feat(feattype='ibd')
  17 + dmsr.store_feat(feattype='ibd')
  18 +
12 19
13 def test_CV(): 20 def test_CV():
14 dcv = CV.DataCV() 21 dcv = CV.DataCV()
15 - #dcv.format()  
16 - #dcv.build_list() 22 + # dcv.format()
  23 + # dcv.build_list()
17 #dcv.get_feat() 24 #dcv.get_feat()
18 - dcv.store_feat() 25 + # dcv.extract_feat()
  26 + print dcv.get_feat("/home/hadoop/data/HeadShoulder/dst/Train/Img/132/7c5fe33bd194fc1ae7b0023956ebd.jpg", 'ibd')
  27 + X, Y = dcv.load_data()
  28 + print len(X), len(Y)
  29 +
19 30
20 if __name__ == '__main__': 31 if __name__ == '__main__':
  32 + # test_MSR()
21 test_CV() 33 test_CV()
22 - print 'helllo ' 34 +
  35 +
  36 + print 'helllo'
1 __author__ = 'chunk' 1 __author__ = 'chunk'
2 2
  3 +from common import *
  4 +
3 from mfeat import HOG, IntraBlockDiff 5 from mfeat import HOG, IntraBlockDiff
4 6
5 7
test_model.py 0 → 100644
@@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
  1 +__author__ = 'chunk'
  2 +
  3 +from common import *
  4 +
  5 +from mdata import MSR, CV
  6 +from mmodel import SVM
  7 +from mfeat import HOG
  8 +
  9 +timer = Timer()
  10 +
  11 +
  12 +def test_SVM_CV():
  13 + dcv = CV.DataCV()
  14 + X, Y = dcv.load_data()
  15 + msvm = SVM.ModelSVM()
  16 + msvm.train(X, Y)
  17 +
  18 + for path, subdirs, files in os.walk('data/467/'):
  19 + for name in files:
  20 + imgpath = os.path.join(path, name)
  21 + feat = dcv.get_feat(imgpath, 'hog')
  22 + print name, msvm.predict(feat)
  23 +
  24 + print msvm.test(X, Y) # 0.948892561983 for svm_cv ,0.989024793388 for svm_sk
  25 +
  26 +
  27 +if __name__ == '__main__':
  28 + test_SVM_CV()
  29 + print 'helllo'