You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2018/11/15 12:35:56 UTC

[kylin] branch master updated: KYLIN-3552 Data Source SDK to ingest data from different JDBC sources

This is an automated email from the ASF dual-hosted git repository.

shaofengshi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kylin.git


The following commit(s) were added to refs/heads/master by this push:
     new ff730db  KYLIN-3552 Data Source SDK to ingest data from different JDBC sources
ff730db is described below

commit ff730dbdfe76ee18a2b059a76f3cdbe8222dacad
Author: edouardzyc <ed...@hotmail.com>
AuthorDate: Fri Oct 26 19:42:39 2018 +0800

    KYLIN-3552 Data Source SDK to ingest data from different JDBC sources
---
 assembly/pom.xml                                   |     4 +
 build/script/prepare-libs.sh                       |     2 +
 .../org/apache/kylin/common/KylinConfigBase.java   |     5 +
 .../apache/kylin/metadata/model/ISourceAware.java  |     1 +
 .../kylin/source/ISourceMetadataExplorer.java      |     2 +
 .../source/adhocquery/AbstractPushdownRunner.java  |    43 +
 .../kylin/source/adhocquery/IPushDownRunner.java   |    11 +
 .../java/org/apache/kylin/source/H2Database.java   |   185 +
 datasource-sdk/pom.xml                             |   155 +
 .../datasource/adaptor/AbstractJdbcAdaptor.java    |   380 +
 .../sdk/datasource/adaptor/AdaptorConfig.java      |    76 +
 .../sdk/datasource/adaptor/DefaultAdaptor.java     |   275 +
 .../kylin/sdk/datasource/adaptor/H2Adaptor.java    |    31 +-
 .../kylin/sdk/datasource/adaptor/MysqlAdaptor.java |    98 +
 .../sdk/datasource/framework/AdaptorFactory.java   |    18 +-
 .../framework/FixedCachedRowSetImpl.java           |   325 +
 .../sdk/datasource/framework/JdbcConnector.java    |   188 +
 .../framework/SourceConnectorFactory.java          |    57 +
 .../sdk/datasource/framework/conv/ConvMaster.java  |   150 +
 .../datasource/framework/conv/ConvSqlWriter.java   |   220 +
 .../framework/conv/DefaultConfiguer.java           |   131 +
 .../framework/conv/GenericSqlConverter.java        |    57 +
 .../datasource/framework/conv/ParamNodeParser.java |    45 +
 .../datasource/framework/conv/SqlConverter.java    |   101 +
 .../framework/conv/SqlNodeConverter.java           |   129 +
 .../datasource/framework/conv/SqlParamsFinder.java |   109 +
 .../datasource/framework/def/DataSourceDef.java    |   219 +
 .../framework/def/DataSourceDefProvider.java       |   115 +
 .../sdk/datasource/framework/def/FunctionDef.java  |    38 +-
 .../sdk/datasource/framework/def/PropertyDef.java  |    26 +-
 .../sdk/datasource/framework/def/TypeDef.java      |   111 +
 .../sdk/datasource/framework/def/TypeMapping.java  |    42 +-
 .../framework/utils/ExpressionComparator.java      |   165 +
 .../sdk/datasource/framework/utils/XmlUtil.java    |    48 +
 .../src/main/resources/datasource/default.xml      |   202 +
 .../src/main/resources/datasource/mysql.xml        |    46 +
 .../sdk/datasource/adaptor/AdaptorConfigTest.java  |    23 +-
 .../datasource/framework/JdbcConnectorTest.java    |    98 +
 .../framework/SourceConnectorFactoryTest.java      |    29 +-
 .../framework/conv/GenericSqlConverterTest.java    |    64 +
 .../framework/conv/ParamNodeParserTest.java        |    34 +-
 .../framework/conv/SqlConverterTest.java           |   319 +
 .../framework/conv/SqlParamsFinderTest.java        |    62 +
 .../framework/def/DataSourceDefTest.java           |    75 +
 .../sdk/datasource/framework/def/TypeDefTest.java  |    54 +
 .../src/test/resources/datasource/default.xml      |   226 +
 .../src/test/resources/datasource/testing.xml      |   122 +
 .../localmeta/data/DEFAULT.TEST_ACCOUNT.csv        |  2000 ++++
 .../localmeta/data/DEFAULT.TEST_KYLIN_FACT.csv     | 10402 ++++++++++++++++++-
 .../localmeta/data/DEFAULT.TEST_ORDER.csv          |  5000 +++++++++
 examples/test_case_data/localmeta/kylin.properties |     7 +
 kylin-it/pom.xml                                   |     4 +
 pom.xml                                            |    31 +-
 query/pom.xml                                      |     4 +
 .../kylin/query/adhoc/PushDownRunnerJdbcImpl.java  |    14 +-
 .../query/pushdown/PushdownRunnerSDKImpl.java      |   111 +
 .../org/apache/kylin/query/util/PushDownUtil.java  |    25 +-
 server-base/pom.xml                                |     9 +-
 .../apache/kylin/rest/service/TableService.java    |     8 +-
 server/pom.xml                                     |     5 +
 .../kylin/source/hive/HiveMetadataExplorer.java    |    13 +
 source-jdbc/pom.xml                                |   121 +
 .../org/apache/kylin/source/jdbc/HiveCmdStep.java  |     0
 .../org/apache/kylin/source/jdbc/JdbcDialect.java  |     0
 .../org/apache/kylin/source/jdbc/JdbcExplorer.java |     6 +-
 .../apache/kylin/source/jdbc/JdbcHiveMRInput.java  |     5 +-
 .../org/apache/kylin/source/jdbc/JdbcSource.java   |     1 -
 .../org/apache/kylin/source/jdbc/JdbcTable.java    |     1 -
 .../apache/kylin/source/jdbc/JdbcTableReader.java  |     1 -
 .../java/org/apache/kylin/source/jdbc/SqlUtil.java |     1 -
 .../kylin/source/jdbc/extensible/JdbcExplorer.java |   197 +
 .../source/jdbc/extensible/JdbcHiveMRInput.java    |   122 +
 .../kylin/source/jdbc/extensible}/JdbcSource.java  |    37 +-
 .../kylin/source/jdbc/extensible}/JdbcTable.java   |    18 +-
 .../source/jdbc/extensible}/JdbcTableReader.java   |    38 +-
 .../source/jdbc/metadata/DefaultJdbcMetadata.java  |     0
 .../kylin/source/jdbc/metadata/IJdbcMetadata.java  |     0
 .../source/jdbc/metadata/JdbcMetadataFactory.java  |     0
 .../source/jdbc/metadata/MySQLJdbcMetadata.java    |     0
 .../jdbc/metadata/SQLServerJdbcMetadata.java       |     0
 .../kylin/source/jdbc/sqoop/SqoopCmdStep.java      |    57 +-
 .../apache/kylin/source/jdbc/JdbcExplorerTest.java |     0
 .../org/apache/kylin/source/jdbc/SqlUtilTest.java  |     0
 .../source/jdbc/extensible/JdbcExplorerTest.java   |   111 +
 .../jdbc/extensible/JdbcHiveMRInputTest.java       |   145 +
 .../source/jdbc/extensible/JdbcSourceTest.java     |    62 +
 .../source/jdbc/extensible/JdbcTableTest.java      |    58 +
 .../kylin/source/jdbc/extensible/TestBase.java     |    66 +
 .../jdbc/metadata/DefaultJdbcMetadataTest.java     |     0
 .../jdbc/metadata/JdbcMetadataFactoryTest.java     |     0
 .../jdbc/metadata/MySQLJdbcMetadataTest.java       |     0
 .../jdbc/metadata/SQLServerJdbcMetadataTest.java   |     0
 .../ut_meta/jdbc_source/cube/ut_jdbc_shard.json    |    10 +
 .../jdbc_source/cube_desc/ut_jdbc_shard.json       |   558 +
 .../org/apache/kylin/source/kafka/KafkaSource.java |     6 +
 95 files changed, 23580 insertions(+), 590 deletions(-)

diff --git a/assembly/pom.xml b/assembly/pom.xml
index 8a1a035..dd3211a 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -40,6 +40,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.kylin</groupId>
+            <artifactId>kylin-source-jdbc</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.kylin</groupId>
             <artifactId>kylin-source-kafka</artifactId>
         </dependency>
         <dependency>
diff --git a/build/script/prepare-libs.sh b/build/script/prepare-libs.sh
index ae5c5e4..789a120 100644
--- a/build/script/prepare-libs.sh
+++ b/build/script/prepare-libs.sh
@@ -34,9 +34,11 @@ cp assembly/target/kylin-assembly-${version}-job.jar build/lib/kylin-job-${versi
 cp storage-hbase/target/kylin-storage-hbase-${version}-coprocessor.jar build/lib/kylin-coprocessor-${version}.jar
 cp jdbc/target/kylin-jdbc-${version}.jar build/lib/kylin-jdbc-${version}.jar
 cp tool-assembly/target/kylin-tool-assembly-${version}-assembly.jar build/tool/kylin-tool-${version}.jar
+cp datasource-sdk/target/kylin-datasource-sdk-${version}-lib.jar build/lib/kylin-datasource-sdk-${version}.jar
 
 # Copied file becomes 000 for some env (e.g. my Cygwin)
 chmod 644 build/lib/kylin-job-${version}.jar
 chmod 644 build/lib/kylin-coprocessor-${version}.jar
 chmod 644 build/lib/kylin-jdbc-${version}.jar
 chmod 644 build/tool/kylin-tool-${version}.jar
+chmod 644 build/lib/kylin-datasource-sdk-${version}.jar
diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
index ad51994..6092834 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
@@ -750,6 +750,7 @@ abstract public class KylinConfigBase implements Serializable {
         r.put(0, "org.apache.kylin.source.hive.HiveSource");
         r.put(1, "org.apache.kylin.source.kafka.KafkaSource");
         r.put(8, "org.apache.kylin.source.jdbc.JdbcSource");
+        r.put(16, "org.apache.kylin.source.jdbc.extensible.JdbcSource");
         r.putAll(convertKeyToInteger(getPropertiesByPrefix("kylin.source.provider.")));
         return r;
     }
@@ -1842,4 +1843,8 @@ abstract public class KylinConfigBase implements Serializable {
     public int getJdbcResourceStoreMaxCellSize() {
         return Integer.parseInt(getOptional("kylin.metadata.jdbc.max-cell-size", "1048576")); // 1mb
     }
+
+    public String getJdbcSourceAdaptor() {
+        return getOptional("kylin.source.jdbc.adaptor");
+    }
 }
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/model/ISourceAware.java b/core-metadata/src/main/java/org/apache/kylin/metadata/model/ISourceAware.java
index eab3e2c..cfab0ed 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/model/ISourceAware.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/model/ISourceAware.java
@@ -27,6 +27,7 @@ public interface ISourceAware {
     public static final int ID_SPARKSQL = 5;
     public static final int ID_EXTERNAL = 7;
     public static final int ID_JDBC = 8;
+    public static final int ID_EXTENSIBLE_JDBC = 16;
 
     int getSourceType();
 
diff --git a/core-metadata/src/main/java/org/apache/kylin/source/ISourceMetadataExplorer.java b/core-metadata/src/main/java/org/apache/kylin/source/ISourceMetadataExplorer.java
index 0a6747c..978742f 100644
--- a/core-metadata/src/main/java/org/apache/kylin/source/ISourceMetadataExplorer.java
+++ b/core-metadata/src/main/java/org/apache/kylin/source/ISourceMetadataExplorer.java
@@ -36,4 +36,6 @@ public interface ISourceMetadataExplorer {
     List<String> getRelatedKylinResources(TableDesc table);
     
     ColumnDesc[] evalQueryMetadata(String query);
+
+    void validateSQL(String query) throws Exception;
 }
diff --git a/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/AbstractPushdownRunner.java b/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/AbstractPushdownRunner.java
new file mode 100644
index 0000000..9d893b7
--- /dev/null
+++ b/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/AbstractPushdownRunner.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.kylin.source.adhocquery;
+
+import org.apache.kylin.common.KylinConfig;
+import org.apache.kylin.common.util.ClassUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public abstract class AbstractPushdownRunner implements IPushDownRunner {
+    public static final Logger logger = LoggerFactory.getLogger(AbstractPushdownRunner.class);
+
+    @Override
+    public String convertSql(KylinConfig kylinConfig, String sql, String project, String defaultSchema,
+                             boolean isPrepare) {
+        String converted = sql;
+        for (String converterName : kylinConfig.getPushDownConverterClassNames()) {
+            IPushDownConverter converter = (IPushDownConverter) ClassUtil.newInstance(converterName);
+            String tmp = converter.convert(converted, project, defaultSchema, isPrepare);
+            if (!converted.equals(tmp)) {
+                logger.info("the query is converted to {} after applying converter {}", tmp, converterName);
+            }
+            converted = tmp;
+        }
+        return converted;
+    }
+}
diff --git a/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/IPushDownRunner.java b/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/IPushDownRunner.java
index 9983f5c..fa746fe 100644
--- a/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/IPushDownRunner.java
+++ b/core-metadata/src/main/java/org/apache/kylin/source/adhocquery/IPushDownRunner.java
@@ -49,4 +49,15 @@ public interface IPushDownRunner {
      */
     void executeUpdate(String sql) throws Exception;
 
+    /**
+     * Convert a sql to according to the sql dialect of underlying engine.
+     * @param kylinConfig
+     * @param sql
+     * @param project
+     * @param defaultSchema
+     * @param isPrepare
+     * @return
+     */
+    String convertSql(KylinConfig kylinConfig, String sql, String project, String defaultSchema, boolean isPrepare);
+
 }
diff --git a/core-metadata/src/test/java/org/apache/kylin/source/H2Database.java b/core-metadata/src/test/java/org/apache/kylin/source/H2Database.java
new file mode 100644
index 0000000..6c9cf25
--- /dev/null
+++ b/core-metadata/src/test/java/org/apache/kylin/source/H2Database.java
@@ -0,0 +1,185 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+
+package org.apache.kylin.source;
+
+import com.google.common.collect.Lists;
+import org.apache.commons.io.IOUtils;
+import org.apache.kylin.common.KylinConfig;
+import org.apache.kylin.metadata.TableMetadataManager;
+import org.apache.kylin.metadata.model.ColumnDesc;
+import org.apache.kylin.metadata.model.TableDesc;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+public class H2Database {
+
+    private static final String[] ALL_TABLES = new String[] { //
+            "edw.test_cal_dt", //
+            "default.test_category_groupings", //
+            "default.test_kylin_fact", //
+            "default.test_order", //
+            "edw.test_seller_type_dim", //
+            "edw.test_sites", //
+            "default.test_account", //
+            "default.test_country", //
+            "default.streaming_table"
+    };
+
+    private static final Map<String, String> javaToH2DataTypeMapping = new HashMap<String, String>();
+
+    static {
+        javaToH2DataTypeMapping.put("short", "smallint");
+        javaToH2DataTypeMapping.put("long", "bigint");
+        javaToH2DataTypeMapping.put("byte", "tinyint");
+        javaToH2DataTypeMapping.put("string", "varchar");
+    }
+
+    private final Connection h2Connection;
+    private final KylinConfig config;
+    private final String project;
+
+    public H2Database(Connection h2Connection, KylinConfig config, String prj) {
+        this.h2Connection = h2Connection;
+        this.config = config;
+        this.project = prj;
+    }
+
+    public void loadAllTables() throws SQLException {
+        for (String tableName : ALL_TABLES) {
+            loadH2Table(tableName);
+        }
+    }
+
+    public void dropAll() throws SQLException {
+        try (Statement stmt = h2Connection.createStatement()) {
+            StringBuilder sqlBuilder = new StringBuilder();
+            for (String tblName : ALL_TABLES)
+                sqlBuilder.append("DROP TABLE ").append(tblName).append(";\n");
+            sqlBuilder.append("DROP SCHEMA DEFAULT;\nDROP SCHEMA EDW;\n");
+
+            stmt.executeUpdate(sqlBuilder.toString());
+        }
+    }
+
+    private void loadH2Table(String tableName) throws SQLException {
+        TableMetadataManager metaMgr = TableMetadataManager.getInstance(config);
+        TableDesc tableDesc = metaMgr.getTableDesc(tableName.toUpperCase(Locale.ROOT), project);
+        File tempFile = null;
+
+        try {
+            tempFile = File.createTempFile("tmp_h2", ".csv");
+            FileOutputStream tempFileStream = new FileOutputStream(tempFile);
+            String path = path(tableDesc);
+            InputStream csvStream = metaMgr.getStore().getResource(path).inputStream;
+
+            IOUtils.copy(csvStream, tempFileStream);
+
+            csvStream.close();
+            tempFileStream.close();
+
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
+        String cvsFilePath = tempFile.getPath();
+        try (Statement stmt = h2Connection.createStatement()) {
+            String createDBSql = "CREATE SCHEMA IF NOT EXISTS DEFAULT;\nCREATE SCHEMA IF NOT EXISTS EDW;\nSET SCHEMA DEFAULT;\n";
+            stmt.executeUpdate(createDBSql);
+
+            String sql = generateCreateH2TableSql(tableDesc, cvsFilePath);
+            stmt.executeUpdate(sql);
+
+            List<String> createIndexStatements = generateCreateH2IndexSql(tableDesc);
+            for (String indexSql : createIndexStatements) {
+                stmt.executeUpdate(indexSql);
+            }
+        }
+
+        tempFile.delete();
+    }
+
+    private String path(TableDesc tableDesc) {
+        if ("EDW.TEST_SELLER_TYPE_DIM".equals(tableDesc.getIdentity())) // it is a view of table below
+            return "/data/" + "EDW.TEST_SELLER_TYPE_DIM_TABLE" + ".csv";
+        else
+            return "/data/" + tableDesc.getIdentity() + ".csv";
+    }
+
+    private String generateCreateH2TableSql(TableDesc tableDesc, String csvFilePath) {
+        StringBuilder ddl = new StringBuilder();
+        StringBuilder csvColumns = new StringBuilder();
+
+        ddl.append("CREATE TABLE " + tableDesc.getIdentity() + "\n");
+        ddl.append("(" + "\n");
+
+        for (int i = 0; i < tableDesc.getColumns().length; i++) {
+            ColumnDesc col = tableDesc.getColumns()[i];
+            if (col.isComputedColumn()) {
+                continue;
+            }
+            if (i > 0) {
+                ddl.append(",");
+                csvColumns.append(",");
+            }
+            ddl.append(col.getName() + " " + getH2DataType((col.getDatatype())) + "\n");
+            csvColumns.append(col.getName());
+        }
+        ddl.append(")" + "\n");
+        ddl.append("AS SELECT * FROM CSVREAD('" + csvFilePath + "', '" + csvColumns
+                + "', 'charset=UTF-8 fieldSeparator=,');");
+
+        return ddl.toString();
+    }
+
+    private List<String> generateCreateH2IndexSql(TableDesc tableDesc) {
+        List<String> result = Lists.newArrayList();
+        int x = 0;
+        for (ColumnDesc col : tableDesc.getColumns()) {
+            if ("T".equalsIgnoreCase(col.getIndex())) {
+                StringBuilder ddl = new StringBuilder();
+                ddl.append("CREATE INDEX IDX_" + tableDesc.getName() + "_" + x + " ON " + tableDesc.getIdentity() + "("
+                        + col.getName() + ")");
+                ddl.append("\n");
+                result.add(ddl.toString());
+                x++;
+            }
+        }
+
+        return result;
+    }
+
+    private static String getH2DataType(String javaDataType) {
+        String hiveDataType = javaToH2DataTypeMapping.get(javaDataType.toLowerCase(Locale.ROOT));
+        if (hiveDataType == null) {
+            hiveDataType = javaDataType;
+        }
+        return hiveDataType.toLowerCase(Locale.ROOT);
+    }
+
+}
diff --git a/datasource-sdk/pom.xml b/datasource-sdk/pom.xml
new file mode 100644
index 0000000..2649d15
--- /dev/null
+++ b/datasource-sdk/pom.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>kylin-datasource-sdk</artifactId>
+    <name>Apache Kylin - DataSource SDK</name>
+
+    <parent>
+        <groupId>org.apache.kylin</groupId>
+        <artifactId>kylin</artifactId>
+        <version>2.6.0-SNAPSHOT</version>
+    </parent>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.kylin</groupId>
+            <artifactId>kylin-core-metadata</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>com.fasterxml.jackson.dataformat</groupId>
+            <artifactId>jackson-dataformat-xml</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.calcite</groupId>
+            <artifactId>calcite-linq4j</artifactId>
+        </dependency>
+
+        <!--Uncomment to debug SQLServer-->
+        <!--<dependency>-->
+        <!--<groupId>com.microsoft.sqlserver</groupId>-->
+        <!--<artifactId>mssql-jdbc</artifactId>-->
+        <!--<version>6.2.2.jre8</version>-->
+        <!--<scope>provided</scope>-->
+        <!--</dependency>-->
+
+        <!--Test and Environment-->
+        <dependency>
+            <groupId>org.apache.kylin</groupId>
+            <artifactId>kylin-core-common</artifactId>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.kylin</groupId>
+            <artifactId>kylin-core-metadata</artifactId>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.h2database</groupId>
+            <artifactId>h2</artifactId>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-shade-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>0</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>shade</goal>
+                        </goals>
+                        <configuration>
+                            <minimizeJar>false</minimizeJar>
+                            <shadedArtifactAttached>true</shadedArtifactAttached>
+                            <shadedClassifierName>lib</shadedClassifierName>
+                            <filters>
+                                <filter>
+                                    <artifact>*:*</artifact>
+                                    <includes>
+                                        <include>org/apache/kylin/sdk/datasource/adaptor/**</include>
+                                        <include>datasource/**</include>
+                                    </includes>
+                                </filter>
+                            </filters>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>1</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>shade</goal>
+                        </goals>
+                        <configuration>
+                            <minimizeJar>false</minimizeJar>
+                            <shadedArtifactAttached>true</shadedArtifactAttached>
+                            <shadedClassifierName>framework</shadedClassifierName>
+                            <filters>
+                                <filter>
+                                    <artifact>*:*</artifact>
+                                    <includes>
+                                        <include>org/apache/kylin/sdk/datasource/framework/**</include>
+                                    </includes>
+                                </filter>
+                            </filters>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>2</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>shade</goal>
+                        </goals>
+                        <configuration>
+                            <minimizeJar>false</minimizeJar>
+                            <shadedArtifactAttached>true</shadedArtifactAttached>
+                            <shadedClassifierName>testsuite</shadedClassifierName>
+                            <filters>
+                                <filter>
+                                    <artifact>*:*</artifact>
+                                    <includes>
+                                        <include>org/apache/kylin/sdk/datasource/framework/**</include>
+                                        <include>org/apache/kylin/sdk/datasource/adaptor/**</include>
+                                    </includes>
+                                </filter>
+                            </filters>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/AbstractJdbcAdaptor.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/AbstractJdbcAdaptor.java
new file mode 100644
index 0000000..3669a32
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/AbstractJdbcAdaptor.java
@@ -0,0 +1,380 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.adaptor;
+
+import java.io.Closeable;
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+
+import javax.sql.rowset.CachedRowSet;
+
+import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.kylin.sdk.datasource.framework.FixedCachedRowSetImpl;
+import org.apache.kylin.sdk.datasource.framework.conv.DefaultConfiguer;
+import org.apache.kylin.sdk.datasource.framework.conv.SqlConverter;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDef;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDefProvider;
+
+import com.google.common.cache.Cache;
+import com.google.common.cache.CacheBuilder;
+
+/**
+ * Extends this Abstract class to create Adaptors for new jdbc data source.
+ */
+public abstract class AbstractJdbcAdaptor implements Closeable {
+    protected final BasicDataSource dataSource;
+    protected final AdaptorConfig config;
+    protected final DataSourceDef dataSourceDef;
+    protected SqlConverter.IConfigurer configurer;
+    protected final Cache<String, List<String>> databasesCache = CacheBuilder.newBuilder()
+            .expireAfterWrite(1, TimeUnit.DAYS).maximumSize(30).build();
+    protected final Cache<String, List<String>> tablesCache = CacheBuilder.newBuilder()
+            .expireAfterWrite(1, TimeUnit.DAYS).maximumSize(30).build();
+
+    /**
+     * Default constructor method.
+     * @param config Basic configuration of JDBC source, such as driver name, URL, username, password.
+     * @throws Exception If datasource cannot be connected.
+     */
+    protected AbstractJdbcAdaptor(AdaptorConfig config) throws Exception {
+        this.config = config;
+        this.dataSourceDef = DataSourceDefProvider.getInstance().getById(config.datasourceId);
+
+        dataSource = new BasicDataSource();
+
+        Class.forName(config.driver);
+        dataSource.setDriverClassName(config.driver);
+        dataSource.setUrl(config.url);
+        dataSource.setUsername(config.username);
+        dataSource.setPassword(config.password);
+        dataSource.setMaxActive(config.poolMaxTotal);
+        dataSource.setMaxIdle(config.poolMaxIdle);
+        dataSource.setMinIdle(config.poolMinIdle);
+
+        // Default settings
+        dataSource.setTestOnBorrow(true);
+        dataSource.setValidationQuery(getSourceValidationSql());
+        dataSource.setRemoveAbandoned(true);
+        dataSource.setRemoveAbandonedTimeout(300);
+
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        DataSourceDef jdbcDs = provider.getById(getDataSourceId());
+        configurer = new DefaultConfiguer(this, jdbcDs);
+    }
+
+    /**
+     * Used by <C>org.apache.commons.dbcp.BasicDataSource</C> to validate source connection.
+     * @return
+     */
+    protected String getSourceValidationSql() {
+        if (dataSourceDef.getValidationQuery() != null)
+            return dataSourceDef.getValidationQuery();
+
+        // some default implementation
+        switch (config.driver) {
+            case "org.hsqldb.jdbcDriver":
+                return "select 1 from INFORMATION_SCHEMA.SYSTEM_USERS";
+            case "oracle.jdbc.driver.OracleDriver":
+            case "oracle.jdbc.OracleDriver":
+                return "select 1 from dual";
+            case "com.ibm.db2.jcc.DB2Driver":
+                return "select 1 from sysibm.sysdummy1";
+            case "org.postgresql.Driver":
+                return "select version();";
+            case "org.apache.derby.jdbc.ClientDriver":
+                return "values 1";
+            default:
+                return "select 1";
+        }
+    }
+
+    /**
+     * Convert a <C>ResultSet</C> to <C>CachedRowSet</C>, because <C>ResultSet</C> relies on the connection kept Open, but <C>CachedRowSet</C> not.
+     * @param resultSet
+     * @return
+     * @throws SQLException
+     */
+    protected CachedRowSet cacheResultSet(ResultSet resultSet) throws SQLException {
+        CachedRowSet crs = new FixedCachedRowSetImpl();
+        crs.populate(resultSet);
+        return crs;
+    }
+
+    /**
+     * Create a new <C>java.sql.Connection</C> for this JDBC source.
+     * @return
+     * @throws SQLException
+     */
+    public Connection getConnection() throws SQLException {
+        return dataSource.getConnection();
+    }
+
+    /**
+     * To close a <C>AutoCloseable</C> implementation, such as <C>java.sql.Connection</C>, <C>java.sql.Statement</C>, <C><java.sql.ResultSet/C>.
+     * @param closeable Such as <C>java.sql.Connection</C>, <C>java.sql.Statement</C>, <C><java.sql.ResultSet/C>.
+     */
+    protected void close(AutoCloseable closeable) {
+        try {
+            closeable.close();
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    /**
+     * To close the adaptor, because we need to close all connections on this JDBC source.
+     * @throws IOException If close failed.
+     */
+    @Override
+    public void close() throws IOException {
+        try {
+            dataSource.close();
+        } catch (SQLException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    /**
+     * To execute a sql statement, and won't expect the result. Usually used to execute some Update operations.
+     * @param sql A sql statement.
+     * @throws SQLException If the sql statement executed failed.
+     */
+    public void executeUpdate(String sql) throws SQLException {
+        Statement statement = null;
+        Connection connection = getConnection();
+        try {
+            statement = connection.createStatement();
+            statement.execute(sql);
+        } finally {
+            close(statement);
+            close(connection);
+        }
+    }
+
+    /**
+     * To execute a set of sql statements, and won't expect the results. Usually used to execute a set of Update operations.
+     * @param sqls A set of sql statements
+     * @throws SQLException If one of the sql statements executed failed.
+     */
+    public void executeUpdate(String[] sqls) throws SQLException {
+        Statement statement = null;
+        Connection connection = getConnection();
+        try {
+            statement = connection.createStatement();
+            for (String sql : sqls) {
+                statement.execute(sql);
+            }
+        } finally {
+            close(statement);
+            close(connection);
+        }
+    }
+
+    /**
+     * Get JDBC Url for JDBC source, usually it's from the <C>AdaptorConfig</C> passed to constructor.
+     * @return The JDBC Url.
+     */
+    public String getJdbcUrl() {
+        return dataSource.getUrl();
+    }
+
+    /**
+     * Get JDBC Driver class name for JDBC source, usually it's from the <C>AdaptorConfig</C> passed to constructor.
+     * @return JDBC Driver class name.
+     */
+    public String getJdbcDriver() {
+        return dataSource.getDriverClassName();
+    }
+
+    /**
+     * Get JDBC Username for JDBC source, usually it's from the <C>AdaptorConfig</C> passed to constructor.
+     * @return The JDBC Username.
+     */
+    public String getJdbcUser() {
+        return dataSource.getUsername();
+    }
+
+    /**
+     * Get JDBC Password for JDBC source, usually it's from the <C>AdaptorConfig</C> passed to constructor.
+     * @return The JDBC password.
+     */
+    public String getJdbcPassword() {
+        return dataSource.getPassword();
+    }
+
+    /**
+     * A datasource Id relates to a datasource in xml configuration file, use to find function and type mapping.
+     * @return
+     */
+    public String getDataSourceId() {
+        return config.datasourceId == null ? "default" : config.datasourceId;
+    }
+    // ================================================================================
+
+    /**
+     * To convert a column type from JDBC source to the JDBC type supported by Kylin.
+     * More about JDBC type, see the definition in <C>java.sql.Types</C>
+     * For example, Presto return <C>Types.LONGNVARCHAR</C> for "VARCHAR" type, we need to convert to <C>Types.VARCHAR</C> type.
+     * @param type The column type name from JDBC source.
+     * @param typeId The column type id from JDBC source.
+     * @return The column type if supported by Calcite(Kylin).
+     */
+    public abstract int toKylinTypeId(String type, int typeId);
+
+    /**
+     * To convert a column type name from JDBC source to the JDBC Type supported by Kylin.
+     * @param sourceTypeId Column type id from Source
+     * @return Column type name supported by kylin.
+     */
+    public abstract String toKylinTypeName(int sourceTypeId);
+
+    /**
+     * To converted a column type name which is defined in Kylin metadata, to a column type name which is supported in JDBC source.
+     * For example, Kylin defines a integer type as "INTEGER" in table metadata, but JDBC source defines it as "INT". So we need to convert from "INTEGER" to "INT" here.
+     * @param kylinTypeName A column type name which is defined in Kylin.
+     * @return A column type name which is supported in JDBC source.
+     */
+    public abstract String toSourceTypeName(String kylinTypeName);
+
+    /**
+     * To fix the sql to be smoothly executed in JDBC source, because the SQL dialect may be different between Kylin and JDBC source.
+     * The framework will convert the sql according to dialect of jdbc source firstly (if skipDefaultSqlConvert() returns <C>FALSE</C>), and then
+     * call this method.
+     * @param sql The SQL statement to be fixed.
+     * @return The fixed SQL statement.
+     */
+    public abstract String fixSql(String sql);
+
+    /**
+     * fix case sensitive
+     * @param sql
+     * @return
+     */
+    public abstract String fixCaseSensitiveSql(String sql);
+
+    /**
+     * To list all the available database names from JDBC source.
+     * Some JDBC source will expose SYSTEM databases from the default implementation, then developers can overwrite this method and do some filtering.
+     * Besides, some RDBMS uses Catalog as the definition of database, you can find details in <C>MysqlAdaptor</C>
+     * @return The list of all the available database names.
+     * @throws SQLException If metadata fetch failed.
+     */
+    public abstract List<String> listDatabases() throws SQLException;
+
+    /**
+     * list databases with cache
+     * @return
+     * @throws SQLException
+     */
+    public List<String> listDatabasesWithCache() throws SQLException {
+        if (configurer.enableCache()) {
+            String cacheKey = config.datasourceId + config.url + "_databases";
+            List<String> cachedDatabases = databasesCache.getIfPresent(cacheKey);
+            if (cachedDatabases == null) {
+                cachedDatabases = listDatabases();
+                databasesCache.put(cacheKey, cachedDatabases);
+            }
+            return cachedDatabases;
+        }
+        return listDatabases();
+    }
+
+    /**
+     * To list all the available tables inside a database from JDBC source.
+     * Developers can overwrite this method to do some filtering work.
+     * @param database The given database.
+     * @return The list of all the available tables.
+     * @throws SQLException If metadata fetch failed.
+     */
+    public abstract List<String> listTables(String database) throws SQLException;
+
+    /**
+     * list tables with cache
+     * @param database
+     * @return
+     * @throws SQLException
+     */
+    public List<String> listTablesWithCache(String database) throws SQLException{
+        if (configurer.enableCache()) {
+            String cacheKey = config.datasourceId + config.url + "_tables";
+            List<String> cachedTables = tablesCache.getIfPresent(cacheKey);
+            if (cachedTables == null) {
+                cachedTables = listTables(database);
+                tablesCache.put(cacheKey, cachedTables);
+            }
+            return cachedTables;
+        }
+        return listTables(database);
+    }
+
+    /**
+     * To get the metadata in form of <C>javax.sql.rowset.CachedRowSet</C> for a table inside a database.
+     * @param database The given database name
+     * @param table The given table name
+     * @return The metadata of the given table in form of <C>javax.sql.rowset.CachedRowSet</C>
+     * @throws SQLException If metadata fetch failed.
+     */
+    public abstract CachedRowSet getTable(String database, String table) throws SQLException;
+
+    /**
+     * To get all columns metadata in form of <C>javax.sql.rowset.CachedRowSet</C> for a table inside a database.
+     * @param database The given database name
+     * @param table The given table name
+     * @return The metadata of all columns metadata in form of <C>javax.sql.rowset.CachedRowSet</C>
+     * @throws SQLException If metadata fetch failed.
+     */
+    public abstract CachedRowSet getTableColumns(String database, String table) throws SQLException;
+
+    /**
+     * To build a set of sql statements to create a schema in JDBC source.
+     * @param schemaName The name of schema.
+     * @return The sql statement which can be executed in JDBC source.
+     */
+    public abstract String[] buildSqlToCreateSchema(String schemaName);
+
+    /**
+     * To build a set sql statements to load data from local directory.
+     * @param tableName The name of table
+     * @param tableFileDir The path of local directory.
+     * @return The sql statement which can be executed in JDBC source.
+     */
+    public abstract String[] buildSqlToLoadDataFromLocal(String tableName, String tableFileDir);
+
+    /**
+     * To build a set of sql statements to create table in JDBC source.
+     * @param identity The name of table to be created.
+     * @param columnInfo The column information, in the pair of NAME -> TYPE
+     * @return A set of SQL Statements which can be executed in JDBC source.
+     */
+    public abstract String[] buildSqlToCreateTable(String identity, LinkedHashMap<String, String> columnInfo);
+
+    /**
+     * To build a set of sql statements to create view in JDBC source.
+     * @param viewName The name of view to be created.
+     * @param sql The sql statement to be used as the body of sql statement.
+     * @return A set of SQL Statements which can be executed in JDBC source.
+     */
+    public abstract String[] buildSqlToCreateView(String viewName, String sql);
+}
+
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/AdaptorConfig.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/AdaptorConfig.java
new file mode 100644
index 0000000..49c4d53
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/AdaptorConfig.java
@@ -0,0 +1,76 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.adaptor;
+
+public class AdaptorConfig {
+    public final String url;
+    public final String driver;
+    public final String username;
+    public final String password;
+
+    public String datasourceId;
+    public int poolMaxIdle = 8;
+    public int poolMaxTotal = 8;
+    public int poolMinIdle = 0;
+
+    public AdaptorConfig(String url, String driver, String username, String password) {
+        this.url = url;
+        this.driver = driver;
+        this.username = username;
+        this.password = password;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o)
+            return true;
+        if (o == null || getClass() != o.getClass())
+            return false;
+
+        AdaptorConfig that = (AdaptorConfig) o;
+
+        if (poolMaxIdle != that.poolMaxIdle)
+            return false;
+        if (poolMaxTotal != that.poolMaxTotal)
+            return false;
+        if (poolMinIdle != that.poolMinIdle)
+            return false;
+        if (!url.equals(that.url))
+            return false;
+        if (!driver.equals(that.driver))
+            return false;
+        if (!username.equals(that.username))
+            return false;
+        if (password != null ? !password.equals(that.password) : that.password != null)
+            return false;
+        return datasourceId != null ? datasourceId.equals(that.datasourceId) : that.datasourceId == null;
+    }
+
+    @Override
+    public int hashCode() {
+        int result = url.hashCode();
+        result = 31 * result + driver.hashCode();
+        result = 31 * result + username.hashCode();
+        result = 31 * result + (password != null ? password.hashCode() : 0);
+        result = 31 * result + (datasourceId != null ? datasourceId.hashCode() : 0);
+        result = 31 * result + poolMaxIdle;
+        result = 31 * result + poolMaxTotal;
+        result = 31 * result + poolMinIdle;
+        return result;
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/DefaultAdaptor.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/DefaultAdaptor.java
new file mode 100644
index 0000000..3a14a1d
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/DefaultAdaptor.java
@@ -0,0 +1,275 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.adaptor;
+
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Types;
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.sql.rowset.CachedRowSet;
+
+/**
+ * A default implementation for <C>AbstractJdbcAdaptor</C>. By default, this adaptor supposed to support most cases.
+ * Developers can just extends this class and modify some methods if found somewhere unsupported.
+ */
+public class DefaultAdaptor extends AbstractJdbcAdaptor {
+
+    private final static String [] POSSIBLE_TALBE_END= {",", " ", ")", "\r", "\n", "."};
+
+    public DefaultAdaptor(AdaptorConfig config) throws Exception {
+        super(config);
+    }
+
+    /**
+     * By default, the typeId from JDBC source will be returned.
+     * @param type The column type name from JDBC source.
+     * @param typeId The column type id from JDBC source.
+     * @return
+     */
+    @Override
+    public int toKylinTypeId(String type, int typeId) {
+        return typeId;
+    }
+
+    /**
+     * By default, we accord to Hive's type system for this converting.
+     * @param sourceTypeId Column type id from Source
+     * @return The column type name supported by Kylin.
+     */
+    @Override
+    public String toKylinTypeName(int sourceTypeId) {
+        String result = "any";
+
+        switch (sourceTypeId) {
+            case Types.CHAR:
+                result = "char";
+                break;
+            case Types.VARCHAR:
+            case Types.NVARCHAR:
+            case Types.LONGVARCHAR:
+                result = "varchar";
+                break;
+            case Types.NUMERIC:
+            case Types.DECIMAL:
+                result = "decimal";
+                break;
+            case Types.BIT:
+            case Types.BOOLEAN:
+                result = "boolean";
+                break;
+            case Types.TINYINT:
+                result = "tinyint";
+                break;
+            case Types.SMALLINT:
+                result = "smallint";
+                break;
+            case Types.INTEGER:
+                result = "integer";
+                break;
+            case Types.BIGINT:
+                result = "bigint";
+                break;
+            case Types.REAL:
+            case Types.FLOAT:
+            case Types.DOUBLE:
+                result = "double";
+                break;
+            case Types.BINARY:
+            case Types.VARBINARY:
+            case Types.LONGVARBINARY:
+                result = "byte";
+                break;
+            case Types.DATE:
+                result = "date";
+                break;
+            case Types.TIME:
+                result = "time";
+                break;
+            case Types.TIMESTAMP:
+                result = "timestamp";
+                break;
+            default:
+                //do nothing
+                break;
+        }
+
+        return result;
+    }
+
+    /**
+     * By default, the column type name from kylin will be returned.
+     * @param kylinTypeName A column type name which is defined in Kylin.
+     * @return
+     */
+    @Override
+    public String toSourceTypeName(String kylinTypeName) {
+        return kylinTypeName;
+    }
+
+    /**
+     * Be default, nothing happens when fix a sql.
+     * @param sql The SQL statement to be fixed.
+     * @return The fixed SQL statement.
+     */
+    @Override
+    public String fixSql(String sql) {
+        return sql;
+    }
+
+    /**
+     * All known defects:
+     * Can not support one database has two toUppercase-same tables (e.g. ACCOUNT and account table can't coexist in one database)
+     * @param sql The SQL statement to be fixed.
+     * @return The changed sql
+     */
+    @Override
+    public String fixCaseSensitiveSql(String sql) {
+        try {
+            String orig = sql.toUpperCase(Locale.ROOT);
+            List<String> databases = listDatabasesWithCache();
+            String category = "";
+            for (String c : databases) {
+                if (orig.contains(c.toUpperCase(Locale.ROOT)+".")||orig.contains(c.toUpperCase(Locale.ROOT)+'"')) {
+                    sql = sql.replaceAll(c.toUpperCase(Locale.ROOT), c);
+                    category = c;
+                }
+            }
+            List<String> tables = listTables(category);
+            for (String table : tables) {
+                if(checkSqlContainstable(orig, table)) {
+                    sql = sql.replaceAll("(?i)" + table, table);// use (?i) to matchIgnoreCase
+                }
+            }
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+        return sql;
+    }
+
+    private boolean checkSqlContainstable(String orig, String table) {
+        // ensure table is single match(e.g match account but not match accountant)
+        if (orig.endsWith(table.toUpperCase(Locale.ROOT))) {
+            return true;
+        }
+        for (String end:POSSIBLE_TALBE_END) {
+            if (orig.contains(table.toUpperCase(Locale.ROOT) + end)){
+                return true;
+            }
+        }
+        return false;
+    }
+
+    /**
+     * By default, use schema as database of kylin.
+     * @return
+     * @throws SQLException
+     */
+    @Override
+    public List<String> listDatabases() throws SQLException {
+        List<String> ret = new LinkedList<>();
+        try (Connection con = getConnection(); ResultSet rs = con.getMetaData().getSchemas()) {
+            while (rs.next()) {
+                String schema = rs.getString("TABLE_SCHEM");
+                if (schema != null && !schema.isEmpty())
+                    ret.add(schema);
+            }
+        }
+        return ret;
+    }
+
+    /**
+     * By default, use schema to list tables.
+     * @param schema
+     * @return
+     * @throws SQLException
+     */
+    @Override
+    public List<String> listTables(String schema) throws SQLException {
+        List<String> ret = new ArrayList<>();
+        try (Connection conn = getConnection(); ResultSet rs = conn.getMetaData().getTables(null, schema, null, null)) {
+            while (rs.next()) {
+                String name = rs.getString("TABLE_NAME");
+                if (name != null && !name.isEmpty())
+                    ret.add(name);
+            }
+        }
+        return ret;
+    }
+
+    @Override
+    public CachedRowSet getTable(String schema, String table) throws SQLException {
+        try (Connection conn = getConnection();
+             ResultSet rs = conn.getMetaData().getTables(null, schema, table, null)) {
+            return cacheResultSet(rs);
+        }
+    }
+
+    @Override
+    public CachedRowSet getTableColumns(String schema, String table) throws SQLException {
+        try (Connection conn = getConnection();
+             ResultSet rs = conn.getMetaData().getColumns(null, schema, table, null)) {
+            return cacheResultSet(rs);
+        }
+    }
+
+    @Override
+    public String[] buildSqlToCreateSchema(String schemaName) {
+        return new String[] { String.format(Locale.ROOT, "CREATE schema IF NOT EXISTS %s", schemaName) };
+    }
+
+    @Override
+    public String[] buildSqlToLoadDataFromLocal(String tableName, String tableFileDir) {
+        return new String[] { String.format(Locale.ROOT, "LOAD DATA INFILE '%s/%s.csv' INTO %s FIELDS TERMINATED BY ',';",
+                tableFileDir, tableName, tableName) };
+    }
+
+    @Override
+    public String[] buildSqlToCreateTable(String tableIdentity, LinkedHashMap<String, String> columnInfo) {
+        String dropsql = "DROP TABLE IF EXISTS " + tableIdentity;
+        String dropsql2 = "DROP VIEW IF EXISTS " + tableIdentity;
+
+        StringBuilder ddl = new StringBuilder();
+        ddl.append("CREATE TABLE " + tableIdentity + "\n");
+        ddl.append("(" + "\n");
+
+        for (Map.Entry<String, String> col : columnInfo.entrySet()) {
+            ddl.append(col.getKey() + " " + toSourceTypeName(col.getValue()) + ",\n");
+        }
+
+        ddl.deleteCharAt(ddl.length() - 2);
+        ddl.append(")");
+
+        return new String[] { dropsql, dropsql2, ddl.toString() };
+    }
+
+    @Override
+    public String[] buildSqlToCreateView(String viewName, String sql) {
+        String dropView = "DROP VIEW IF EXISTS " + viewName;
+        String dropTable = "DROP TABLE IF EXISTS " + viewName;
+        String createSql = ("CREATE VIEW " + viewName + " AS " + sql);
+
+        return new String[] { dropView, dropTable, createSql };
+    }
+}
\ No newline at end of file
diff --git a/source-hive/src/main/java/org/apache/kylin/source/jdbc/metadata/IJdbcMetadata.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/H2Adaptor.java
similarity index 58%
copy from source-hive/src/main/java/org/apache/kylin/source/jdbc/metadata/IJdbcMetadata.java
copy to datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/H2Adaptor.java
index 169fe60..7055d9e 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/jdbc/metadata/IJdbcMetadata.java
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/H2Adaptor.java
@@ -14,20 +14,29 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
-*/
-package org.apache.kylin.source.jdbc.metadata;
+ */
+package org.apache.kylin.sdk.datasource.adaptor;
 
-import java.sql.DatabaseMetaData;
-import java.sql.ResultSet;
 import java.sql.SQLException;
+import java.util.LinkedList;
 import java.util.List;
 
-public interface IJdbcMetadata {
-    List<String> listDatabases() throws SQLException;
+/**
+ * Mainly used for unit test.
+ */
+public class H2Adaptor extends DefaultAdaptor {
+    public H2Adaptor(AdaptorConfig config) throws Exception {
+        super(config);
+    }
 
-    List<String> listTables(String database) throws SQLException;
-
-    ResultSet getTable(final DatabaseMetaData dbmd, String database, String table) throws SQLException;
-
-    ResultSet listColumns(final DatabaseMetaData dbmd, String database, String table) throws SQLException;
+    @Override
+    public List<String> listDatabases() throws SQLException {
+        List<String> allSchemas = super.listDatabases();
+        List<String> filtered = new LinkedList<>();
+        for (String schema : allSchemas) {
+            if (!schema.equals("INFORMATION_SCHEMA"))
+                filtered.add(schema);
+        }
+        return filtered;
+    }
 }
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/MysqlAdaptor.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/MysqlAdaptor.java
new file mode 100644
index 0000000..8f5f021
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/adaptor/MysqlAdaptor.java
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.adaptor;
+
+import javax.sql.rowset.CachedRowSet;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+public class MysqlAdaptor extends DefaultAdaptor {
+    public MysqlAdaptor(AdaptorConfig config) throws Exception {
+        super(config);
+    }
+
+    @Override
+    public List<String> listDatabases() throws SQLException {
+        List<String> ret = new ArrayList<>();
+        try (Connection con = getConnection()) {
+            ret.add(con.getCatalog());
+        }
+        return ret;
+    }
+
+    @Override
+    public List<String> listTables(String catalog) throws SQLException {
+        List<String> ret = new ArrayList<>();
+        try (Connection con = getConnection(); ResultSet res = con.getMetaData().getTables(catalog, null, null, null)) {
+            String table;
+            while (res.next()) {
+                table = res.getString("TABLE_NAME");
+                ret.add(table);
+            }
+        }
+        return ret;
+    }
+
+    @Override
+    public CachedRowSet getTable(String catalog, String table) throws SQLException {
+        if(configurer.isCaseSensitive()){
+            catalog = getRealCatalogName(catalog);
+            table = getRealTableName(catalog, table);
+        }
+        try (Connection conn = getConnection();ResultSet rs = conn.getMetaData().getTables(catalog, null, table, null)) {
+            return cacheResultSet(rs);
+        }
+    }
+
+    @Override
+    public CachedRowSet getTableColumns(String catalog, String table) throws SQLException {
+        if(configurer.isCaseSensitive()){
+            catalog = getRealCatalogName(catalog);
+            table = getRealTableName(catalog, table);
+        }
+        try (Connection conn = getConnection();
+             ResultSet rs = conn.getMetaData().getColumns(catalog, null, table, null)) {
+            return cacheResultSet(rs);
+        }
+    }
+
+    private String getRealCatalogName(String catalog) throws SQLException {
+        List<String> catalogs = super.listDatabasesWithCache();
+        for (String s : catalogs) {
+            if (s.equalsIgnoreCase(catalog)) {
+                catalog = s;
+                break;
+            }
+        }
+        return catalog;
+    }
+
+    private String getRealTableName(String catalog, String table) throws SQLException {
+        List<String> tables = super.listTables(catalog);
+        for (String t : tables) {
+            if (t.equalsIgnoreCase(table)) {
+                table = t;
+                break;
+            }
+        }
+        return table;
+    }
+}
diff --git a/source-hive/src/main/java/org/apache/kylin/source/jdbc/JdbcDialect.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/AdaptorFactory.java
similarity index 62%
copy from source-hive/src/main/java/org/apache/kylin/source/jdbc/JdbcDialect.java
copy to datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/AdaptorFactory.java
index 7e5ecee..6600266 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/jdbc/JdbcDialect.java
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/AdaptorFactory.java
@@ -14,13 +14,15 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
-*/
-package org.apache.kylin.source.jdbc;
+ */
+package org.apache.kylin.sdk.datasource.framework;
 
-public class JdbcDialect {
-    public static final String DIALECT_VERTICA = "vertica";
-    public static final String DIALECT_ORACLE = "oracle";
-    public static final String DIALECT_MYSQL = "mysql";
-    public static final String DIALECT_HIVE = "hive";
-    public static final String DIALECT_MSSQL = "mssql";
+import org.apache.kylin.sdk.datasource.adaptor.AbstractJdbcAdaptor;
+import org.apache.kylin.sdk.datasource.adaptor.AdaptorConfig;
+
+public class AdaptorFactory {
+    public static AbstractJdbcAdaptor createJdbcAdaptor(String adaptorClazz, AdaptorConfig jdbcConf) throws Exception {
+        return (AbstractJdbcAdaptor) Class.forName(adaptorClazz).getConstructor(AdaptorConfig.class)
+                .newInstance(jdbcConf);
+    }
 }
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/FixedCachedRowSetImpl.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/FixedCachedRowSetImpl.java
new file mode 100644
index 0000000..100dd27
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/FixedCachedRowSetImpl.java
@@ -0,0 +1,325 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework;
+
+import java.math.BigDecimal;
+import java.sql.Array;
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.Ref;
+import java.sql.SQLException;
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.Hashtable;
+
+import javax.sql.rowset.RowSetMetaDataImpl;
+
+import com.sun.rowset.CachedRowSetImpl;
+
+/**
+ * Fixed a bug in Oracle JDK: https://stackoverflow.com/questions/15184709/cachedrowsetimpl-getstring-based-on-column-label
+ */
+public class FixedCachedRowSetImpl extends CachedRowSetImpl {
+
+    private static final long serialVersionUID = -9067504047398250113L;
+    private RowSetMetaDataImpl rowSetMD;
+
+    public FixedCachedRowSetImpl() throws SQLException {
+        super();
+    }
+
+    public FixedCachedRowSetImpl(Hashtable env) throws SQLException {
+        super(env);
+    }
+
+    private int getColIdxByName(String name) throws SQLException {
+        rowSetMD = (RowSetMetaDataImpl) this.getMetaData();
+        int cols = rowSetMD.getColumnCount();
+
+        for (int i = 1; i <= cols; ++i) {
+            String colName = rowSetMD.getColumnLabel(i);
+            if (colName != null)
+                if (name.equalsIgnoreCase(colName))
+                    return (i);
+                else
+                    continue;
+        }
+        throw new SQLException(resBundle.handleGetObject("cachedrowsetimpl.invalcolnm").toString());
+    }
+
+    @Override
+    public Collection<?> toCollection(String column) throws SQLException {
+        return toCollection(getColIdxByName(column));
+    }
+
+    @Override
+    public String getString(String columnName) throws SQLException {
+        return getString(getColIdxByName(columnName));
+    }
+
+    @Override
+    public boolean getBoolean(String columnName) throws SQLException {
+        return getBoolean(getColIdxByName(columnName));
+    }
+
+    @Override
+    public byte getByte(String columnName) throws SQLException {
+        return getByte(getColIdxByName(columnName));
+    }
+
+    @Override
+    public short getShort(String columnName) throws SQLException {
+        return getShort(getColIdxByName(columnName));
+    }
+
+    @Override
+    public int getInt(String columnName) throws SQLException {
+        return getInt(getColIdxByName(columnName));
+    }
+
+    @Override
+    public long getLong(String columnName) throws SQLException {
+        return getLong(getColIdxByName(columnName));
+    }
+
+    @Override
+    public float getFloat(String columnName) throws SQLException {
+        return getFloat(getColIdxByName(columnName));
+    }
+
+    @Override
+    public double getDouble(String columnName) throws SQLException {
+        return getDouble(getColIdxByName(columnName));
+    }
+
+    @Override
+    public byte[] getBytes(String columnName) throws SQLException {
+        return getBytes(getColIdxByName(columnName));
+    }
+
+    @Override
+    public java.sql.Date getDate(String columnName) throws SQLException {
+        return getDate(getColIdxByName(columnName));
+    }
+
+    @Override
+    public java.sql.Time getTime(String columnName) throws SQLException {
+        return getTime(getColIdxByName(columnName));
+    }
+
+    @Override
+    public java.sql.Timestamp getTimestamp(String columnName) throws SQLException {
+        return getTimestamp(getColIdxByName(columnName));
+    }
+
+    @Override
+    public java.io.InputStream getAsciiStream(String columnName) throws SQLException {
+        return getAsciiStream(getColIdxByName(columnName));
+
+    }
+
+    @Override
+    public java.io.InputStream getBinaryStream(String columnName) throws SQLException {
+        return getBinaryStream(getColIdxByName(columnName));
+    }
+
+    @Override
+    public Object getObject(String columnName) throws SQLException {
+        return getObject(getColIdxByName(columnName));
+    }
+
+    @Override
+    public int findColumn(String columnName) throws SQLException {
+        return getColIdxByName(columnName);
+    }
+
+    @Override
+    public java.io.Reader getCharacterStream(String columnName) throws SQLException {
+        return getCharacterStream(getColIdxByName(columnName));
+    }
+
+    @Override
+    public BigDecimal getBigDecimal(String columnName) throws SQLException {
+        return getBigDecimal(getColIdxByName(columnName));
+    }
+
+    @Override
+    public boolean columnUpdated(String columnName) throws SQLException {
+        return columnUpdated(getColIdxByName(columnName));
+    }
+
+    @Override
+    public void updateNull(String columnName) throws SQLException {
+        updateNull(getColIdxByName(columnName));
+    }
+
+    @Override
+    public void updateBoolean(String columnName, boolean x) throws SQLException {
+        updateBoolean(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateByte(String columnName, byte x) throws SQLException {
+        updateByte(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateShort(String columnName, short x) throws SQLException {
+        updateShort(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateInt(String columnName, int x) throws SQLException {
+        updateInt(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateLong(String columnName, long x) throws SQLException {
+        updateLong(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateFloat(String columnName, float x) throws SQLException {
+        updateFloat(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateDouble(String columnName, double x) throws SQLException {
+        updateDouble(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateBigDecimal(String columnName, BigDecimal x) throws SQLException {
+        updateBigDecimal(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateString(String columnName, String x) throws SQLException {
+        updateString(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateBytes(String columnName, byte[] x) throws SQLException {
+        updateBytes(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateDate(String columnName, java.sql.Date x) throws SQLException {
+        updateDate(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateTime(String columnName, java.sql.Time x) throws SQLException {
+        updateTime(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateTimestamp(String columnName, java.sql.Timestamp x) throws SQLException {
+        updateTimestamp(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public void updateAsciiStream(String columnName, java.io.InputStream x, int length) throws SQLException {
+        updateAsciiStream(getColIdxByName(columnName), x, length);
+    }
+
+    @Override
+    public void updateBinaryStream(String columnName, java.io.InputStream x, int length) throws SQLException {
+        updateBinaryStream(getColIdxByName(columnName), x, length);
+    }
+
+    @Override
+    public void updateCharacterStream(String columnName, java.io.Reader reader, int length) throws SQLException {
+        updateCharacterStream(getColIdxByName(columnName), reader, length);
+    }
+
+    @Override
+    public void updateObject(String columnName, Object x, int scale) throws SQLException {
+        updateObject(getColIdxByName(columnName), x, scale);
+    }
+
+    @Override
+    public void updateObject(String columnName, Object x) throws SQLException {
+        updateObject(getColIdxByName(columnName), x);
+    }
+
+    @Override
+    public Object getObject(String columnName, java.util.Map<String, Class<?>> map) throws SQLException {
+        return getObject(getColIdxByName(columnName), map);
+    }
+
+    @Override
+    public Ref getRef(String colName) throws SQLException {
+        return getRef(getColIdxByName(colName));
+    }
+
+    @Override
+    public Blob getBlob(String colName) throws SQLException {
+        return getBlob(getColIdxByName(colName));
+    }
+
+    @Override
+    public Clob getClob(String colName) throws SQLException {
+        return getClob(getColIdxByName(colName));
+    }
+
+    @Override
+    public Array getArray(String colName) throws SQLException {
+        return getArray(getColIdxByName(colName));
+    }
+
+    @Override
+    public java.sql.Date getDate(String columnName, Calendar cal) throws SQLException {
+        return getDate(getColIdxByName(columnName), cal);
+    }
+
+    @Override
+    public java.sql.Time getTime(String columnName, Calendar cal) throws SQLException {
+        return getTime(getColIdxByName(columnName), cal);
+    }
+
+    @Override
+    public java.sql.Timestamp getTimestamp(String columnName, Calendar cal) throws SQLException {
+        return getTimestamp(getColIdxByName(columnName), cal);
+    }
+
+    @Override
+    public void updateRef(String columnName, java.sql.Ref ref) throws SQLException {
+        updateRef(getColIdxByName(columnName), ref);
+    }
+
+    @Override
+    public void updateClob(String columnName, Clob c) throws SQLException {
+        updateClob(getColIdxByName(columnName), c);
+    }
+
+    @Override
+    public void updateBlob(String columnName, Blob b) throws SQLException {
+        updateBlob(getColIdxByName(columnName), b);
+    }
+
+    @Override
+    public void updateArray(String columnName, Array a) throws SQLException {
+        updateArray(getColIdxByName(columnName), a);
+    }
+
+    @Override
+    public java.net.URL getURL(String columnName) throws SQLException {
+        return getURL(getColIdxByName(columnName));
+    }
+}
\ No newline at end of file
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/JdbcConnector.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/JdbcConnector.java
new file mode 100644
index 0000000..b0c0f5f
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/JdbcConnector.java
@@ -0,0 +1,188 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework;
+
+import java.io.Closeable;
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.regex.Pattern;
+
+import javax.sql.rowset.CachedRowSet;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.kylin.sdk.datasource.adaptor.AbstractJdbcAdaptor;
+import org.apache.kylin.sdk.datasource.framework.conv.ConvMaster;
+import org.apache.kylin.sdk.datasource.framework.conv.DefaultConfiguer;
+import org.apache.kylin.sdk.datasource.framework.conv.SqlConverter;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDef;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDefProvider;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.annotations.VisibleForTesting;
+import com.google.common.collect.Lists;
+
+public class JdbcConnector implements Closeable {
+    private static final Logger logger = LoggerFactory.getLogger(JdbcConnector.class);
+
+    private final AbstractJdbcAdaptor adaptor;
+    private SqlConverter sqlConverter;
+    private DataSourceDef jdbcDs;
+    private ConvMaster convMaster;
+
+    public JdbcConnector(AbstractJdbcAdaptor adaptor) throws SQLException {
+        this.adaptor = adaptor;
+
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        jdbcDs = provider.getById(this.adaptor.getDataSourceId());
+        DataSourceDef kylinDs = provider.getDefault();
+        convMaster = new ConvMaster(kylinDs, jdbcDs);
+        SqlConverter.IConfigurer configurer = new DefaultConfiguer(this.adaptor, jdbcDs);
+        this.sqlConverter = new SqlConverter(configurer, convMaster);
+    }
+
+    public String getJdbcUrl() {
+        return adaptor.getJdbcUrl();
+    }
+
+    public String getJdbcDriver() {
+        return adaptor.getJdbcDriver();
+    }
+
+    public String getJdbcUser() {
+        return adaptor.getJdbcUser();
+    }
+
+    public String getJdbcPassword() {
+        return adaptor.getJdbcPassword();
+    }
+
+    /**
+     * Used for create flatten table, sql pushdown.
+     *
+     * @param orig
+     * @return the converted sql statement according to data source dialect
+     */
+    public String convertSql(String orig) {
+        return sqlConverter.convertSql(orig);
+    }
+
+    public String convertColumn(String column) {
+        return sqlConverter.convertColumn(column);
+    }
+
+    /**
+     * To check if a sql statement is valid, used for CC evaluation.
+     *
+     * @param sql
+     * @throws Exception
+     */
+    public void testSql(String sql) throws Exception {
+        adaptor.executeUpdate(sql);
+    }
+
+    public int toKylinTypeId(String sourceTypeName, int sourceTypeId) {
+        Integer kylinTypeId = jdbcDs.getDataTypeValue(sourceTypeName);
+        return kylinTypeId != null ? kylinTypeId : adaptor.toKylinTypeId(sourceTypeName, sourceTypeId);
+    }
+
+    public String toKylinTypeName(int sourceTypeId) {
+        return adaptor.toKylinTypeName(sourceTypeId);
+    }
+
+    public void executeUpdate(String sql) throws SQLException {
+        adaptor.executeUpdate(sql);
+    }
+
+    public void executeUpdate(String[] sqls) throws SQLException {
+        adaptor.executeUpdate(sqls);
+    }
+
+    public List<String> listDatabases() throws SQLException {
+        List<String> dbNames = adaptor.listDatabasesWithCache();
+        String blackList = jdbcDs.getPropertyValue("schema.database.black-list-pattern");
+        if (!StringUtils.isEmpty(blackList)) {
+            String[] patterns = blackList.split(",");
+            List<String> removed = Lists.newLinkedList();
+            for (String p : patterns) {
+                Pattern ptn = Pattern.compile(p.trim(), Pattern.CASE_INSENSITIVE);
+                for (String name : dbNames) {
+                    if (ptn.matcher(name).matches()) {
+                        removed.add(name);
+                    }
+                }
+            }
+            dbNames.removeAll(removed);
+        }
+        return dbNames;
+    }
+
+    public List<String> listTables(String schema) throws SQLException {
+        return adaptor.listTablesWithCache(schema);
+    }
+
+    public CachedRowSet getTable(String database, String table) throws SQLException {
+        return adaptor.getTable(database, table);
+    }
+
+    public CachedRowSet listColumns(String database, String table) throws SQLException {
+        return adaptor.getTableColumns(database, table);
+    }
+
+    public String[] buildSqlToCreateSchema(String schemaName) {
+        return adaptor.buildSqlToCreateSchema(schemaName);
+    }
+
+    public String[] buildSqlToLoadDataFromLocal(String tableName, String tableFileDir) {
+        return adaptor.buildSqlToLoadDataFromLocal(tableName, tableFileDir);
+    }
+
+    public String[] buildSqlToCreateTable(String identity, LinkedHashMap<String, String> columnInfo) {
+        return adaptor.buildSqlToCreateTable(identity, columnInfo);
+    }
+
+    public String[] buildSqlToCreateView(String viewName, String s) {
+        return adaptor.buildSqlToCreateView(viewName, s);
+    }
+
+    public Connection getConnection() throws SQLException {
+        return adaptor.getConnection();
+    }
+
+    public String getPropertyValue(String key, String defaultValue) {
+        return jdbcDs.getPropertyValue(key, defaultValue);
+    }
+
+    public String getPropertyValue(String key) {
+        return jdbcDs.getPropertyValue(key);
+    }
+
+    @VisibleForTesting
+    SqlConverter getSqlConverter() {
+        return sqlConverter;
+    }
+
+    @Override
+    public void close() throws IOException {
+        if (adaptor != null)
+            adaptor.close();
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/SourceConnectorFactory.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/SourceConnectorFactory.java
new file mode 100644
index 0000000..583dc72
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/SourceConnectorFactory.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework;
+
+import org.apache.kylin.common.KylinConfig;
+import org.apache.kylin.sdk.datasource.adaptor.AdaptorConfig;
+import org.apache.kylin.sdk.datasource.adaptor.DefaultAdaptor;
+import org.apache.kylin.sdk.datasource.adaptor.MysqlAdaptor;
+
+public class SourceConnectorFactory {
+    public static JdbcConnector getJdbcConnector(KylinConfig config) {
+        String jdbcUrl = config.getJdbcSourceConnectionUrl();
+        String jdbcDriver = config.getJdbcSourceDriver();
+        String jdbcUser = config.getJdbcSourceUser();
+        String jdbcPass = config.getJdbcSourcePass();
+        String adaptorClazz = config.getJdbcSourceAdaptor();
+
+        AdaptorConfig jdbcConf = new AdaptorConfig(jdbcUrl, jdbcDriver, jdbcUser, jdbcPass);
+        jdbcConf.poolMaxIdle = config.getPoolMaxIdle();
+        jdbcConf.poolMinIdle = config.getPoolMinIdle();
+        jdbcConf.poolMaxTotal = config.getPoolMaxTotal();
+        jdbcConf.datasourceId = config.getJdbcSourceDialect();
+
+        if (adaptorClazz == null)
+            adaptorClazz = decideAdaptorClassName(jdbcConf.datasourceId);
+
+        try {
+            return new JdbcConnector(AdaptorFactory.createJdbcAdaptor(adaptorClazz, jdbcConf));
+        } catch (Exception e) {
+            throw new RuntimeException("Failed to get JdbcConnector from env.", e);
+        }
+    }
+
+    private static String decideAdaptorClassName(String dataSourceId) {
+        switch (dataSourceId) {
+        case "mysql":
+            return MysqlAdaptor.class.getName();
+        default:
+            return DefaultAdaptor.class.getName();
+        }
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ConvMaster.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ConvMaster.java
new file mode 100644
index 0000000..0d04326
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ConvMaster.java
@@ -0,0 +1,150 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.util.List;
+import java.util.Map;
+
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlDataTypeSpec;
+import org.apache.calcite.sql.SqlIdentifier;
+import org.apache.calcite.sql.SqlIntervalQualifier;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.SqlWindow;
+import org.apache.calcite.util.Litmus;
+import org.apache.kylin.common.util.Pair;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDef;
+import org.apache.kylin.sdk.datasource.framework.def.TypeDef;
+import org.apache.kylin.sdk.datasource.framework.utils.ExpressionComparator;
+
+import com.google.common.collect.Maps;
+
+public class ConvMaster {
+    private final DataSourceDef sourceDS;
+    private final DataSourceDef targetDS;
+
+    public ConvMaster(DataSourceDef sourceDS, DataSourceDef targetDS) {
+        this.sourceDS = sourceDS;
+        this.targetDS = targetDS;
+    }
+
+    Pair<SqlNode, SqlNode> matchSqlFunc(SqlNode sourceFunc) {
+        if (sourceFunc == null || sourceDS == null || targetDS == null)
+            return null;
+
+        if (sourceFunc instanceof SqlCall || sourceFunc instanceof SqlIdentifier) {
+            String funcName = sourceFunc instanceof SqlCall ? ((SqlCall) sourceFunc).getOperator().getName()
+                    : sourceFunc.toString();
+            List<String> validDefIds = sourceDS.getFuncDefsByName(funcName);
+            if (validDefIds != null) {
+                for (String defId : validDefIds) {
+                    SqlNode sourceCandidate = sourceDS.getFuncDefSqlNode(defId);
+                    if (ExpressionComparator.isNodeEqual(sourceFunc, sourceCandidate, new ParamSqlNodeComparator())) {
+                        SqlNode targetTmpl = targetDS.getFuncDefSqlNode(defId);
+                        if (targetTmpl != null)
+                            return new Pair<>(sourceCandidate, targetDS.getFuncDefSqlNode(defId));
+                    }
+                }
+            }
+        }
+        return null;
+    }
+
+    SqlDataTypeSpec findTargetSqlDataTypeSpec(SqlDataTypeSpec typeSpec) {
+        if (sourceDS == null || targetDS == null || typeSpec == null)
+            return null;
+
+        List<TypeDef> validTypeDefs = sourceDS.getTypeDefsByName(typeSpec.getTypeName().toString());
+        if (validTypeDefs != null) {
+            for (TypeDef typeDef : validTypeDefs) {
+                if (typeDef.getMaxPrecision() >= typeSpec.getPrecision()) {
+                    TypeDef targetType = targetDS.getTypeDef(typeDef.getId());
+                    return new SqlDataTypeSpec(new SqlIdentifier(targetType.getName(), typeSpec.getParserPosition()),
+                            targetType.getDefaultPrecision() >= 0 ? targetType.getDefaultPrecision()
+                                    : typeSpec.getPrecision(),
+                            targetType.getDefaultScale() >= 0 ? targetType.getDefaultScale() : typeSpec.getScale(),
+                            typeSpec.getCharSetName(), typeSpec.getTimeZone(), typeSpec.getParserPosition());
+                }
+            }
+        }
+        return null;
+    }
+
+    private static class ParamSqlNodeComparator extends ExpressionComparator.SqlNodeComparator {
+        private final Map<Integer, SqlNode> matchedNodesMap;
+
+        private ParamSqlNodeComparator() {
+            this(Maps.<Integer, SqlNode> newHashMap());
+        }
+
+        private ParamSqlNodeComparator(Map<Integer, SqlNode> matchedNodesMap) {
+            this.matchedNodesMap = matchedNodesMap;
+        }
+
+        @Override
+        public boolean isSqlIdentifierEqual(SqlIdentifier querySqlIdentifier, SqlIdentifier exprSqlIdentifier) {
+            int parsedIdx = ParamNodeParser.parseParamIdx(exprSqlIdentifier.toString());
+            if (parsedIdx >= 0) {
+                SqlNode matchedBefore = matchedNodesMap.get(parsedIdx);
+                if (matchedBefore != null) {
+                    return ExpressionComparator.isNodeEqual(querySqlIdentifier, matchedBefore, this);
+                } else {
+                    matchedNodesMap.put(parsedIdx, querySqlIdentifier);
+                    return true;
+                }
+            } else {
+                return querySqlIdentifier.equalsDeep(exprSqlIdentifier, Litmus.IGNORE);
+            }
+        }
+
+        @Override
+        public boolean isSqlNodeEqual(SqlNode queryNode, SqlNode exprNode) {
+            if (queryNode != null && exprNode != null) {
+                if (exprNode instanceof SqlIdentifier) {
+                    int parsedIdx = ParamNodeParser.parseParamIdx(exprNode.toString());
+                    if (parsedIdx >= 0) {
+                        SqlNode matchedBefore = matchedNodesMap.get(parsedIdx);
+                        if (matchedBefore != null) {
+                            return ExpressionComparator.isNodeEqual(queryNode, matchedBefore, this);
+                        } else {
+                            matchedNodesMap.put(parsedIdx, queryNode);
+                            return true;
+                        }
+                    }
+                } else if (exprNode instanceof SqlIntervalQualifier) {
+                    if (!(queryNode instanceof SqlIntervalQualifier)) {
+                        return false;
+                    }
+                    SqlIntervalQualifier thisNode = (SqlIntervalQualifier) queryNode;
+                    SqlIntervalQualifier thatNode = (SqlIntervalQualifier) exprNode;
+                    return thisNode.toString().equals(thatNode.toString());
+                } else if (exprNode instanceof SqlWindow) {
+                    if (!(queryNode instanceof SqlWindow)) {
+                        return false;
+                    }
+                    if (((SqlWindow) exprNode).getRefName() instanceof SqlIdentifier) {
+                        return true;
+                    }
+                }
+
+            }
+
+            return super.isSqlNodeEqual(queryNode, exprNode);
+        }
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ConvSqlWriter.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ConvSqlWriter.java
new file mode 100644
index 0000000..42fb9f1
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ConvSqlWriter.java
@@ -0,0 +1,220 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import com.google.common.collect.Lists;
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlDataTypeSpec;
+import org.apache.calcite.sql.SqlLiteral;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.SqlNodeList;
+import org.apache.calcite.sql.SqlNumericLiteral;
+import org.apache.calcite.sql.SqlOrderBy;
+import org.apache.calcite.sql.SqlWith;
+import org.apache.calcite.sql.SqlWithItem;
+import org.apache.calcite.sql.SqlWriter;
+import org.apache.calcite.sql.parser.SqlParserPos;
+import org.apache.calcite.sql.pretty.SqlPrettyWriter;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.sql.SQLException;
+import java.util.Locale;
+
+public class ConvSqlWriter extends SqlPrettyWriter {
+    private static final Logger logger = LoggerFactory.getLogger(ConvSqlWriter.class);
+
+    private static final SqlOrderBy DUMMY_ORDER_BY_NODE = new SqlOrderBy(SqlParserPos.ZERO,
+            new DummySqlNode(SqlParserPos.ZERO),
+            new SqlNodeList(Lists.<SqlNode> newArrayList(SqlLiteral.createExactNumeric("1", SqlParserPos.ZERO)),
+                    SqlParserPos.ZERO),
+            null, null);
+
+    private SqlConverter.IConfigurer configurer;
+    private FrameImpl lastFrame;
+
+    ConvSqlWriter(SqlConverter.IConfigurer configurer) throws SQLException {
+        super(configurer.getSqlDialect());
+
+        this.configurer = configurer;
+    }
+
+    @Override
+    public void endList(Frame frame) {
+        super.endList(frame);
+        lastFrame = frame instanceof FrameImpl ? (FrameImpl) frame : null;
+    }
+
+    @Override
+    public void fetchOffset(SqlNode fetch, SqlNode offset) {
+        if (fetch == null && offset == null) {
+            return;
+        }
+
+        switch (configurer.getPagingType().toUpperCase(Locale.ROOT)) {
+            case "ROWNUM":
+                doWriteRowNum(fetch, offset);
+                break;
+            case "FETCH_NEXT":
+                doWriteFetchNext(fetch, offset);
+                break;
+            case "LIMIT_OFFSET":
+                doWriteLimitOffset(fetch, offset);
+                break;
+            default:
+                if (getDialect().supportsOffsetFetch()) {
+                    doWriteFetchNext(fetch, offset);
+                } else {
+                    doWriteLimitOffset(fetch, offset);
+                }
+                break;
+        }
+    }
+
+    private void doWriteRowNum(SqlNode fetch, SqlNode offset) {
+        // do nothing to ignore limit and offset by now.
+    }
+
+    private void doWriteFetchNext(SqlNode fetch, SqlNode offset) {
+        if (offset == null && !configurer.allowNoOffset())
+            offset = SqlLiteral.createExactNumeric("0", SqlParserPos.ZERO);
+
+        if (fetch != null && !configurer.allowNoOrderByWithFetch() && lastFrame != null
+                && lastFrame.getFrameType() != FrameTypeEnum.ORDER_BY_LIST) { // MSSQL requires ORDER_BY list for FETCH clause, so must append one here.
+            DUMMY_ORDER_BY_NODE.unparse(this, 0, 0);
+        }
+
+        if (offset != null) {
+            this.newlineAndIndent();
+            final Frame offsetFrame = this.startList(FrameTypeEnum.OFFSET);
+            this.keyword("OFFSET");
+            offset.unparse(this, -1, -1);
+            this.keyword("ROWS");
+            this.endList(offsetFrame);
+        }
+        if (fetch != null) {
+            if (!configurer.allowFetchNoRows() && fetch instanceof SqlNumericLiteral)
+                if (((SqlNumericLiteral) fetch).toValue().equals("0"))
+                    fetch = SqlLiteral.createExactNumeric("1", SqlParserPos.ZERO);
+
+            this.newlineAndIndent();
+            final Frame fetchFrame = this.startList(FrameTypeEnum.FETCH);
+            this.keyword("FETCH");
+            this.keyword("NEXT");
+            fetch.unparse(this, -1, -1);
+            this.keyword("ROWS");
+            this.keyword("ONLY");
+            this.endList(fetchFrame);
+        }
+    }
+
+    private void doWriteLimitOffset(SqlNode fetch, SqlNode offset) {
+        // Dialect does not support OFFSET/FETCH clause.
+        // Assume it uses LIMIT/OFFSET.
+        if (fetch != null) {
+            this.newlineAndIndent();
+            final Frame fetchFrame = this.startList(FrameTypeEnum.FETCH);
+            this.keyword("LIMIT");
+            fetch.unparse(this, -1, -1);
+            this.endList(fetchFrame);
+        }
+        if (offset != null) {
+            this.newlineAndIndent();
+            final Frame offsetFrame = this.startList(FrameTypeEnum.OFFSET);
+            this.keyword("OFFSET");
+            offset.unparse(this, -1, -1);
+            this.endList(offsetFrame);
+        }
+    }
+
+    @Override
+    public void identifier(String name) {
+        if (!configurer.skipHandleDefault() && name.trim().equalsIgnoreCase("default")) {
+            String quoted = getDialect().quoteIdentifier(name);
+            print(quoted);
+            setNeedWhitespace(true);
+        } else {
+            super.identifier(name);
+        }
+    }
+
+    @Override
+    public void userDefinedType(SqlDataTypeSpec typeSpec, int leftPrec, int rightPrec) {
+        keyword(typeSpec.getTypeName().getSimple());
+
+        // also print precision and scale for user-defined-type
+        int precision = typeSpec.getPrecision();
+        int scale = typeSpec.getScale();
+        if (precision >= 0) {
+            final SqlWriter.Frame frame = startList(SqlWriter.FrameTypeEnum.FUN_CALL, "(", ")");
+            this.print(precision);
+            if (scale >= 0) {
+                this.sep(",", true);
+                this.print(scale);
+            }
+            this.endList(frame);
+        }
+    }
+
+    private static class DummySqlNode extends SqlNodeList {
+
+        private DummySqlNode(SqlParserPos pos) {
+            super(pos);
+        }
+
+        @Override
+        public void unparse(SqlWriter writer, int leftPrec, int rightPrec) {
+            writer.sep("");
+        }
+    }
+
+    @Override
+    public boolean inQuery() {
+        return this.frame == null || this.frame.getFrameType() == FrameTypeEnum.ORDER_BY
+                || this.frame.getFrameType() == FrameTypeEnum.WITH || this.frame.getFrameType() == FrameTypeEnum.SETOP
+                || this.frame.getFrameType() == FrameTypeEnum.WITH_ITEM;
+    }
+
+    @Override
+    public void writeWith(SqlCall call, int leftPrec, int rightPrec) {
+        final SqlWith with = (SqlWith) call;
+        final SqlWriter.Frame frame = this.startList(SqlWriter.FrameTypeEnum.WITH, "WITH", "");
+        for (SqlNode node : with.withList) {
+            this.sep(",");
+            node.unparse(this, 0, 0);
+        }
+        with.body.unparse(this, 100, 100);
+        this.endList(frame);
+    }
+
+    @Override
+    public void writeWithItem(SqlCall call, SqlWithItem.SqlWithItemOperator sqlWithItemOperator, int leftPrec,
+                              int rightPrec) {
+        final SqlWithItem withItem = (SqlWithItem) call;
+        leftPrec = sqlWithItemOperator.getLeftPrec();
+        rightPrec = sqlWithItemOperator.getRightPrec();
+        withItem.name.unparse(this, leftPrec, rightPrec);
+        if (withItem.columnList != null) {
+            withItem.columnList.unparse(this, leftPrec, rightPrec);
+        }
+        this.keyword("AS");
+        Frame frame = this.startList(FrameTypeEnum.WITH_ITEM, "(", ")");
+        withItem.query.unparse(this, 10, 10);
+        this.endList(frame);
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/DefaultConfiguer.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/DefaultConfiguer.java
new file mode 100644
index 0000000..94c2526
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/DefaultConfiguer.java
@@ -0,0 +1,131 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.Locale;
+import java.util.Map;
+
+import org.apache.calcite.sql.SqlDialect;
+import org.apache.kylin.sdk.datasource.adaptor.AbstractJdbcAdaptor;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDef;
+
+import com.google.common.collect.Maps;
+
+public class DefaultConfiguer implements SqlConverter.IConfigurer{
+
+    private static final Map<String, SqlDialect> sqlDialectMap = Maps.newHashMap();
+
+    static {
+        sqlDialectMap.put("default", SqlDialect.CALCITE);
+        sqlDialectMap.put("calcite", SqlDialect.CALCITE);
+        sqlDialectMap.put("greenplum", SqlDialect.DatabaseProduct.POSTGRESQL.getDialect());
+        sqlDialectMap.put("postgresql", SqlDialect.DatabaseProduct.POSTGRESQL.getDialect());
+        sqlDialectMap.put("mysql", SqlDialect.DatabaseProduct.MYSQL.getDialect());
+        sqlDialectMap.put("mssql", SqlDialect.DatabaseProduct.MSSQL.getDialect());
+        sqlDialectMap.put("oracle", SqlDialect.DatabaseProduct.ORACLE.getDialect());
+        sqlDialectMap.put("vertica", SqlDialect.DatabaseProduct.VERTICA.getDialect());
+        sqlDialectMap.put("redshift", SqlDialect.DatabaseProduct.REDSHIFT.getDialect());
+        sqlDialectMap.put("hive", SqlDialect.DatabaseProduct.HIVE.getDialect());
+        sqlDialectMap.put("h2", SqlDialect.DatabaseProduct.H2.getDialect());
+        sqlDialectMap.put("unkown", SqlDialect.DUMMY);
+    }
+
+    private AbstractJdbcAdaptor adaptor;
+
+    private DataSourceDef dsDef;
+
+    public DefaultConfiguer(AbstractJdbcAdaptor adaptor, DataSourceDef dsDef) {
+        this.adaptor = adaptor;
+        this.dsDef = dsDef;
+    }
+
+    public DefaultConfiguer(DataSourceDef dsDef) {
+        this(null, dsDef);
+    }
+
+    @Override
+    public boolean skipDefaultConvert() {
+        return !"true".equalsIgnoreCase(dsDef.getPropertyValue("sql.default-converted-enabled", "true"));
+    }
+
+    @Override
+    public boolean skipHandleDefault() {
+        return !"true".equalsIgnoreCase(dsDef.getPropertyValue("sql.keyword-default-escape", "true"));
+    }
+
+    @Override
+    public boolean useUppercaseDefault() {
+        return "true".equalsIgnoreCase(dsDef.getPropertyValue("sql.keyword-default-uppercase", "true"));
+    }
+
+    @Override
+    public String fixAfterDefaultConvert(String orig) {
+        if (this.adaptor == null) {
+            return orig;
+        }
+        if (isCaseSensitive()) {
+            orig = adaptor.fixCaseSensitiveSql(orig);
+        }
+        return adaptor.fixSql(orig);
+    }
+
+    @Override
+    public SqlDialect getSqlDialect() throws SQLException {
+        if (adaptor != null) {
+            try (Connection conn = this.adaptor.getConnection()) {
+                return SqlDialect.create(conn.getMetaData());
+            }
+        } else {
+            String dialectName = dsDef.getDialectName() == null ? dsDef.getId() : dsDef.getDialectName();
+            SqlDialect sqlDialect = sqlDialectMap.get(dialectName.toLowerCase(Locale.ROOT));
+            return sqlDialect == null ? sqlDialectMap.get("unkown") : sqlDialect;
+        }
+    }
+
+    @Override
+    public boolean allowNoOffset() {
+        return "true".equalsIgnoreCase(dsDef.getPropertyValue("sql.allow-no-offset", "true"));
+    }
+
+    @Override
+    public boolean allowFetchNoRows() {
+        return "true".equalsIgnoreCase(dsDef.getPropertyValue("sql.allow-fetch-no-rows", "true"));
+    }
+
+    @Override
+    public boolean allowNoOrderByWithFetch() {
+        return "true".equalsIgnoreCase(dsDef.getPropertyValue("sql.allow-no-orderby-with-fetch", "true"));
+    }
+
+    @Override
+    public String getPagingType() {
+        return dsDef.getPropertyValue("sql.paging-type", "AUTO");
+    }
+
+    @Override
+    public boolean isCaseSensitive() {
+        return "true".equalsIgnoreCase(dsDef.getPropertyValue("sql.case-sensitive", "false"));
+    }
+
+    @Override
+    public boolean enableCache() {
+        return "true".equalsIgnoreCase(dsDef.getPropertyValue("metadata.enable-cache", "false"));
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/GenericSqlConverter.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/GenericSqlConverter.java
new file mode 100644
index 0000000..f1ea21e
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/GenericSqlConverter.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.sql.SQLException;
+import java.util.concurrent.TimeUnit;
+
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDef;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDefProvider;
+
+import com.google.common.cache.Cache;
+import com.google.common.cache.CacheBuilder;
+
+public class GenericSqlConverter {
+
+    private final Cache<String, SqlConverter> sqlConverterCache = CacheBuilder.newBuilder()
+            .expireAfterWrite(1, TimeUnit.DAYS).maximumSize(30).build();
+
+    public String convertSql(String originSql, String sourceDialect, String targetDialect) throws SQLException {
+        SqlConverter sqlConverter = getSqlConverter(sourceDialect, targetDialect);
+        return sqlConverter.convertSql(originSql);
+    }
+
+    private SqlConverter getSqlConverter(String sourceDialect, String targetDialect) throws SQLException {
+        String cacheKey = sourceDialect + "_" + targetDialect;
+        SqlConverter sqlConverter = sqlConverterCache.getIfPresent(cacheKey);
+        if (sqlConverter == null) {
+            sqlConverter = createSqlConverter(sourceDialect, targetDialect);
+            sqlConverterCache.put(cacheKey, sqlConverter);
+        }
+        return sqlConverter;
+    }
+
+    private SqlConverter createSqlConverter(String sourceDialect, String targetDialect) throws SQLException {
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        DataSourceDef sourceDs = provider.getById(sourceDialect);
+        final DataSourceDef targetDs = provider.getById(targetDialect);
+        ConvMaster convMaster = new ConvMaster(sourceDs, targetDs);
+        SqlConverter.IConfigurer configurer = new DefaultConfiguer(targetDs);
+        return new SqlConverter(configurer, convMaster);
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ParamNodeParser.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ParamNodeParser.java
new file mode 100644
index 0000000..be54769
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/ParamNodeParser.java
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+class ParamNodeParser {
+    private static final Logger logger = LoggerFactory.getLogger(ParamNodeParser.class);
+
+    private static final Pattern PARAM_PATTERN = Pattern.compile("\\$(\\d+)");
+
+    static int parseParamIdx(String paramNodeValue) {
+        if (!StringUtils.isEmpty(paramNodeValue)) {
+            try {
+                Matcher m = PARAM_PATTERN.matcher(paramNodeValue);
+                if (m.matches()) {
+                    return Integer.parseInt(m.group(1));
+                }
+            } catch (Throwable e) {
+                logger.error("Failed to parse the value to get the parameter id.", e);
+            }
+        }
+        return -1; // return negative value if not matched.
+    }
+}
\ No newline at end of file
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlConverter.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlConverter.java
new file mode 100644
index 0000000..a055bd3
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlConverter.java
@@ -0,0 +1,101 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.sql.SQLException;
+
+import org.apache.calcite.sql.SqlDialect;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.parser.SqlParser;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class SqlConverter {
+    private static final Logger logger = LoggerFactory.getLogger(SqlConverter.class);
+
+    private final ConvSqlWriter sqlWriter;
+    private final IConfigurer configurer;
+    private final SqlNodeConverter sqlNodeConverter;
+
+    public SqlConverter(IConfigurer configurer, ConvMaster convMaster) throws SQLException {
+        this.sqlNodeConverter = new SqlNodeConverter(convMaster);
+        this.configurer = configurer;
+
+        sqlWriter = new ConvSqlWriter(configurer);
+        sqlWriter.setQuoteAllIdentifiers(false);
+    }
+
+    public String convertSql(String orig) {
+        String converted = orig;
+        if (!configurer.skipHandleDefault()) {
+            String escapedDefault = SqlDialect.CALCITE
+                    .quoteIdentifier(configurer.useUppercaseDefault() ? "DEFAULT" : "default");
+            converted = converted.replaceAll("(?i)default\\.", escapedDefault + "."); // use Calcite dialect to cater to SqlParser
+            converted = converted.replaceAll("\"(?i)default\"\\.", escapedDefault + ".");
+        }
+
+        if (!configurer.skipDefaultConvert()) {
+            try {
+                SqlNode sqlNode = SqlParser.create(converted).parseQuery();
+                sqlNode = sqlNode.accept(sqlNodeConverter);
+                converted = sqlWriter.format(sqlNode);
+            } catch (Throwable e) {
+                logger.error("Failed to default convert sql, will use the input: {}", orig, e);
+            } finally {
+                sqlWriter.reset();
+            }
+        }
+        converted = configurer.fixAfterDefaultConvert(converted);
+        return converted;
+    }
+
+    public String convertColumn(String column) {
+        if (configurer.isCaseSensitive()) {
+            return configurer.fixAfterDefaultConvert(column);
+        }
+        return column;
+    }
+
+    public IConfigurer getConfigurer() {
+        return configurer;
+    }
+
+    public interface IConfigurer {
+        public boolean skipDefaultConvert();
+
+        public boolean skipHandleDefault();
+
+        public boolean useUppercaseDefault();
+
+        public String fixAfterDefaultConvert(String orig);
+
+        public SqlDialect getSqlDialect() throws SQLException;
+
+        boolean allowNoOffset();
+
+        boolean allowFetchNoRows();
+
+        boolean allowNoOrderByWithFetch();
+
+        String getPagingType();
+
+        boolean isCaseSensitive();
+
+        boolean enableCache();
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlNodeConverter.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlNodeConverter.java
new file mode 100644
index 0000000..b73c170
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlNodeConverter.java
@@ -0,0 +1,129 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.util.Map;
+
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlDataTypeSpec;
+import org.apache.calcite.sql.SqlIdentifier;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.SqlOperator;
+import org.apache.calcite.sql.SqlOverOperator;
+import org.apache.calcite.sql.SqlWindow;
+import org.apache.calcite.sql.util.SqlShuttle;
+import org.apache.kylin.common.util.Pair;
+
+import com.google.common.base.Preconditions;
+
+public class SqlNodeConverter extends SqlShuttle {
+
+    private final ConvMaster convMaster;
+
+    SqlNodeConverter(ConvMaster convMaster) {
+        this.convMaster = convMaster;
+    }
+
+    @Override
+    public SqlNode visit(SqlDataTypeSpec type) {
+        SqlDataTypeSpec target = convertSqlDataTypeSpec(type);
+        return target == null ? super.visit(type) : target;
+    }
+
+    @Override
+    public SqlNode visit(SqlCall call) {
+        SqlNode target = convertSqlCall(call);
+        return target == null ? super.visit(call) : target;
+    }
+
+    @Override
+    public SqlNode visit(SqlIdentifier id) {
+        SqlNode target = convertSqlIdentifier(id);
+        return target == null ? super.visit(id) : target;
+    }
+
+    private SqlDataTypeSpec convertSqlDataTypeSpec(SqlDataTypeSpec typeSpec) {
+        return convMaster.findTargetSqlDataTypeSpec(typeSpec);
+    }
+
+    private SqlNode convertSqlIdentifier(SqlIdentifier sqlIdentifier) {
+        Pair<SqlNode, SqlNode> matched = convMaster.matchSqlFunc(sqlIdentifier);
+        if (matched != null) {
+            Preconditions.checkState(matched.getFirst() instanceof SqlIdentifier);
+            return matched.getSecond();
+        } else {
+            return null;
+        }
+    }
+
+    private SqlNode convertSqlCall(SqlCall sqlCall) {
+        SqlOperator operator = sqlCall.getOperator();
+        if (operator != null) {
+            Pair<SqlNode, SqlNode> matched = convMaster.matchSqlFunc(sqlCall);
+
+            if (matched != null) {
+                Preconditions.checkState(matched.getFirst() instanceof SqlCall);
+                SqlCall sourceTmpl = (SqlCall) matched.getFirst();
+
+                Preconditions.checkState(sourceTmpl.operandCount() == sqlCall.operandCount());
+                SqlNode targetTmpl = matched.getSecond();
+
+                boolean isWindowCall = sourceTmpl.getOperator() instanceof SqlOverOperator;
+                SqlParamsFinder sqlParamsFinder = SqlParamsFinder.newInstance(sourceTmpl, sqlCall, isWindowCall);
+                return targetTmpl.accept(new SqlFuncFiller(sqlParamsFinder.getParamNodes(), isWindowCall));
+            }
+        }
+        return null;
+    }
+
+    private class SqlFuncFiller extends SqlShuttle {
+
+        private final Map<Integer, SqlNode> operands;
+
+        private boolean isWindowCall = false;
+
+        private SqlFuncFiller(final Map<Integer, SqlNode> operands) {
+            this.operands = operands;
+        }
+
+        private SqlFuncFiller(final Map<Integer, SqlNode> operands, boolean isWindowCall) {
+            this.operands = operands;
+            this.isWindowCall = isWindowCall;
+        }
+
+        @Override
+        public SqlNode visit(SqlIdentifier id) {
+            String maybeParam = id.toString();
+            int idx = ParamNodeParser.parseParamIdx(maybeParam);
+            if (idx >= 0 && operands.containsKey(idx)) {
+                SqlNode sqlNode = operands.get(idx);
+                if (sqlNode instanceof SqlIdentifier) {
+                    return sqlNode;
+                } else {
+                    return sqlNode.accept(SqlNodeConverter.this);
+                }
+            }
+            return id;
+        }
+
+        @Override
+        public SqlNode visit(SqlCall sqlCall) {
+            return sqlCall instanceof SqlWindow && isWindowCall ? operands.get(1) : super.visit(sqlCall);
+        }
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlParamsFinder.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlParamsFinder.java
new file mode 100644
index 0000000..1e72ad0
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/conv/SqlParamsFinder.java
@@ -0,0 +1,109 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.TreeMap;
+import java.util.concurrent.TimeUnit;
+
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlIdentifier;
+import org.apache.calcite.sql.SqlNode;
+
+import com.google.common.cache.Cache;
+import com.google.common.cache.CacheBuilder;
+import com.google.common.collect.Lists;
+
+public class SqlParamsFinder {
+
+    private final static Cache<SqlCall, Map<Integer, List<Integer>>> PATH_CACHE = CacheBuilder.newBuilder()
+            .expireAfterWrite(1, TimeUnit.DAYS).maximumSize(100).build();
+
+    private Map<Integer, List<Integer>> paramPath;
+
+    private SqlCall sourceTmpl;
+
+    private SqlCall sqlCall;
+
+    public SqlParamsFinder(SqlCall sourceTmpl, SqlCall sqlCall) {
+        this.sourceTmpl = sourceTmpl;
+        this.sqlCall = sqlCall;
+    }
+
+    public Map<Integer, SqlNode> getParamNodes() {
+        paramPath = SqlParamsFinder.PATH_CACHE.getIfPresent(this.sourceTmpl);
+        if (paramPath == null) {
+            this.paramPath = new TreeMap<>();
+            genParamPath(this.sourceTmpl, new ArrayList<Integer>());
+            SqlParamsFinder.PATH_CACHE.put(this.sourceTmpl, this.paramPath);
+        }
+        Map<Integer, SqlNode> sqlNodes = new HashMap<>();
+        for (Map.Entry<Integer, List<Integer>> entry : paramPath.entrySet()) {
+            List<Integer> path = entry.getValue();
+            sqlNodes.put(entry.getKey(), getParamNode(path, sqlCall, 0));
+        }
+        return sqlNodes;
+    }
+
+    private SqlNode getParamNode(List<Integer> path, SqlNode sqlNode, int level) {
+        if (level == path.size() - 1) {
+            return ((SqlCall) sqlNode).getOperandList().get(path.get(level));
+        } else {
+            return getParamNode(path, ((SqlCall) sqlNode).getOperandList().get(path.get(level)), ++level);
+        }
+    }
+
+    private void genParamPath(SqlNode sqlNode, List<Integer> path) {
+        if (sqlNode instanceof SqlIdentifier) {
+            int paramIdx = ParamNodeParser.parseParamIdx(sqlNode.toString());
+            if (paramIdx >= 0 && path.size() > 0) {
+                paramPath.put(paramIdx, path);
+            }
+        } else if (sqlNode instanceof SqlCall) {
+            List<SqlNode> operands = ((SqlCall) sqlNode).getOperandList();
+            for (int i = 0; i < operands.size(); i++) {
+                List<Integer> copiedPath = Lists.newArrayList(path);
+                copiedPath.add(i);
+                genParamPath(operands.get(i), copiedPath);
+            }
+        }
+    }
+
+    public static SqlParamsFinder newInstance(SqlCall sourceTmpl, final SqlCall sqlCall, boolean isWindowCall) {
+        if (!isWindowCall) {
+            return new SqlParamsFinder(sourceTmpl, sqlCall);
+        } else {
+            return new SqlParamsFinder(sourceTmpl, sqlCall) {
+
+                @Override
+                public Map<Integer, SqlNode> getParamNodes() {
+                    Map<Integer, SqlNode> sqlNodes = new HashMap<>();
+                    List<SqlNode> sqlNodeList = sqlCall.getOperandList();
+                    SqlNode firstParam = ((SqlCall) sqlNodeList.get(0)).getOperandList().get(0);
+                    SqlNode secondParam = (SqlCall) sqlNodeList.get(1);
+                    sqlNodes.put(0, firstParam);
+                    sqlNodes.put(1, secondParam);
+                    return sqlNodes;
+                }
+            };
+        }
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDef.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDef.java
new file mode 100644
index 0000000..0ddfb21
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDef.java
@@ -0,0 +1,219 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
+
+import java.lang.reflect.Field;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlIdentifier;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.parser.SqlParser;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+
+@JacksonXmlRootElement(localName = "DATASOURCE_DEF")
+public class DataSourceDef {
+    private static final Logger logger = LoggerFactory.getLogger(DataSourceDef.class);
+
+    @JacksonXmlProperty(localName = "NAME", isAttribute = true)
+    private String name;
+    @JacksonXmlProperty(localName = "ID", isAttribute = true)
+    private String id;
+    @JacksonXmlProperty(localName = "DIALECT", isAttribute = true)
+    private String dialect;
+
+    @JacksonXmlProperty(localName = "PROPERTY")
+    @JacksonXmlElementWrapper(useWrapping = false)
+    private List<PropertyDef> properties;
+
+    @JacksonXmlProperty(localName = "FUNCTION_DEF")
+    @JacksonXmlElementWrapper(useWrapping = false)
+    private List<FunctionDef> functions;
+
+    @JacksonXmlProperty(localName = "TYPE_DEF")
+    @JacksonXmlElementWrapper(useWrapping = false)
+    private List<TypeDef> types;
+
+    @JacksonXmlProperty(localName = "TYPE_MAPPING")
+    @JacksonXmlElementWrapper(useWrapping = false)
+    private List<TypeMapping> typeMappings;
+
+    // calculated members
+    private Map<String, SqlNode> functionDefSqlNodeMap; // defId <---> SqlCall or SqlIdentifier
+    private Map<String, List<String>> functionNameDefMap; // name <---> defId[], because multiple function_def may share same name.
+    private Map<String, TypeDef> typeDefMap; // id <---> TypeDef
+    private Map<String, List<TypeDef>> typeNameDefMap; // Name <---> TypeDef
+    private Map<String, PropertyDef> propertyDefMap;
+    private Map<String, Integer> dataTypeMap;
+    private static final Map<String, Integer> TYPE_VALUES_MAP;
+
+    static {
+        Class clazz = java.sql.Types.class;
+        Field[] fileds = clazz.getDeclaredFields();
+        TYPE_VALUES_MAP = new HashMap<>(fileds.length);
+
+        for (Field field : fileds) {
+            try {
+                TYPE_VALUES_MAP.put(field.getName(), field.getInt(clazz));
+            } catch (IllegalAccessException e) {
+                logger.error("failed to load java.sql.Types.", e);
+            }
+        }
+    }
+
+    public DataSourceDef() {
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void init() {
+        functionDefSqlNodeMap = Maps.newHashMap();
+        functionNameDefMap = Maps.newHashMap();
+        typeNameDefMap = Maps.newHashMap();
+        typeDefMap = Maps.newHashMap();
+        propertyDefMap = Maps.newHashMap();
+        dataTypeMap = Maps.newHashMap();
+
+        if (functions != null) {
+            for (FunctionDef function : functions) {
+                function.init();
+                try {
+                    SqlParser sqlParser = SqlParser.create(function.getExpression());
+                    SqlNode parsed = sqlParser.parseExpression();
+                    if (parsed instanceof SqlCall || parsed instanceof SqlIdentifier) {
+                        String name = parsed instanceof SqlCall ? ((SqlCall) parsed).getOperator().getName()
+                                : parsed.toString();
+                        List<String> defIds = functionNameDefMap.get(name);
+                        if (defIds == null) {
+                            defIds = Lists.newLinkedList();
+                            functionNameDefMap.put(name, defIds);
+                        }
+                        defIds.add(function.getId());
+                        functionNameDefMap.put(name, defIds);
+                        functionDefSqlNodeMap.put(function.getId(), parsed);
+                    } else {
+                        throw new IllegalStateException("Not a valid SqlCall.");
+                    }
+                } catch (Throwable e) {
+                    logger.error("Failed to load function: ID={}, EXPRESSION={}", function.getId(), function.getExpression(),
+                            e);
+                }
+            }
+        }
+
+        if (types != null) {
+            for (TypeDef type : types) {
+                try {
+                    type.init();
+                    List<TypeDef> defs = typeNameDefMap.get(type.getName());
+                    if (defs == null) {
+                        defs = Lists.newLinkedList();
+                        typeNameDefMap.put(type.getName(), defs);
+                    }
+                    defs.add(type);
+                    typeDefMap.put(type.getId(), type);
+                } catch (Throwable e) {
+                    logger.error("Failed to load type: ID={}, NAME={}, EXPRESSION={}", type.getId(), type.getName(),
+                            type.getExpression());
+                }
+            }
+        }
+
+        if (properties != null) {
+            for (PropertyDef prop : properties) {
+                propertyDefMap.put(prop.getName().toLowerCase(Locale.ROOT), prop);
+            }
+        }
+
+        if (typeMappings != null) {
+            for (TypeMapping typeMapping : typeMappings) {
+                String sourceType = typeMapping.getSourceType();
+                String targetType = typeMapping.getTargetType();
+                Integer typeValue = TYPE_VALUES_MAP.get(targetType.toUpperCase(Locale.ROOT));
+                if (typeValue == null) {
+                    logger.error("target dataType can not be found in java.sql.Types, SOURCE_TYPE={}, TARGET_TYPE={}",
+                            sourceType, targetType);
+                } else {
+                    dataTypeMap.put(sourceType.toUpperCase(Locale.ROOT), typeValue);
+                }
+            }
+        }
+    }
+
+    // ===================================================================
+
+    public SqlNode getFuncDefSqlNode(String id) {
+        return functionDefSqlNodeMap.get(id.toUpperCase(Locale.ROOT));
+    }
+
+    public List<String> getFuncDefsByName(String name) {
+        return functionNameDefMap.get(name.toUpperCase(Locale.ROOT));
+    }
+
+    public TypeDef getTypeDef(String id) {
+        return typeDefMap.get(id.toUpperCase(Locale.ROOT));
+    }
+
+    public List<TypeDef> getTypeDefsByName(String typeName) {
+        return typeNameDefMap.get(typeName.toUpperCase(Locale.ROOT));
+    }
+
+    public String getPropertyValue(String name) {
+        return getPropertyValue(name, null);
+    }
+
+    public String getPropertyValue(String name, String defaultValue) {
+        if (name == null)
+            return defaultValue;
+
+        PropertyDef prop = propertyDefMap.get(name.toLowerCase(Locale.ROOT));
+        return prop == null ? defaultValue : prop.getValue();
+    }
+
+    public String getValidationQuery() {
+        return getPropertyValue("source.validation-query");
+    }
+
+    public Integer getDataTypeValue(String sourceType) {
+        return dataTypeMap.get(sourceType.toUpperCase(Locale.ROOT));
+    }
+
+    public Map<String, TypeDef> getTypeDefMap() {
+        return this.typeDefMap;
+    }
+
+    public String getDialectName() {
+        return this.dialect;
+    }
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDefProvider.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDefProvider.java
new file mode 100644
index 0000000..9574d66
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDefProvider.java
@@ -0,0 +1,115 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
+
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.util.Map;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.kylin.common.KylinConfig;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.Maps;
+
+import org.apache.kylin.sdk.datasource.framework.utils.XmlUtil;
+
+public class DataSourceDefProvider {
+    private static final Logger logger = LoggerFactory.getLogger(DataSourceDefProvider.class);
+    private static final String RESOURCE_DIR = "datasource";
+    private static final String DATASOURCE_DEFAULT = "default";
+
+    private static final DataSourceDefProvider INSTANCE = new DataSourceDefProvider();
+    private final Map<String, DataSourceDef> dsCache = Maps.newConcurrentMap();
+    private final ClassLoader cl = getClass().getClassLoader();
+
+    public static DataSourceDefProvider getInstance() {
+        return INSTANCE;
+    }
+
+    private DataSourceDef loadDataSourceFromEnv(String id) {
+        String resourcePath = RESOURCE_DIR + "/" + id + ".xml";
+        InputStream is = null;
+        try {
+            URL url = cl.getResource(resourcePath);
+            if (url == null)
+                return null;
+
+            is = url.openStream();
+            DataSourceDef ds = XmlUtil.readValue(is, DataSourceDef.class);
+            ds.init();
+            return ds;
+        } catch (IOException e) {
+            logger.error("Failed to load data source: Path={}", resourcePath, e);
+            return null;
+        } finally {
+            IOUtils.closeQuietly(is);
+        }
+    }
+
+    // only for dev purpose
+    private DataSourceDef loadDataSourceFromDir(String id) {
+        String resourcePath = KylinConfig.getKylinHome() + "/conf/datasource/" + id + ".xml";
+        try (InputStream is = new FileInputStream(resourcePath)) {
+            DataSourceDef ds = XmlUtil.readValue(is, DataSourceDef.class);
+            ds.init();
+            return ds;
+        } catch (IOException e) {
+            logger.error("[Dev Only] Failed to load data source from directory.: Path={}", resourcePath,
+                    e.getMessage());
+            return null;
+        }
+    }
+
+    private boolean isDevEnv() {
+        return (System.getenv("KYLIN_HOME") != null || System.getProperty("KYLIN_HOME") != null)
+                && KylinConfig.getInstanceFromEnv().isDevEnv();
+    }
+
+    // ===============================================
+
+    public DataSourceDef getById(String id) {
+        if (isDevEnv()) {
+            DataSourceDef devDs = loadDataSourceFromDir(id);
+            if (devDs != null)
+                return devDs;
+        }
+
+        DataSourceDef ds = dsCache.get(id);
+        if (ds != null)
+            return ds;
+
+        synchronized (this) {
+            ds = dsCache.get(id);
+            if (ds == null) {
+                ds = loadDataSourceFromEnv(id);
+                if (ds != null)
+                    dsCache.put(id, ds);
+            }
+        }
+        return ds;
+    }
+
+    public DataSourceDef getDefault() {
+        return getById(DATASOURCE_DEFAULT);
+    }
+
+}
diff --git a/source-hive/src/main/java/org/apache/kylin/source/jdbc/metadata/IJdbcMetadata.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/FunctionDef.java
similarity index 55%
copy from source-hive/src/main/java/org/apache/kylin/source/jdbc/metadata/IJdbcMetadata.java
copy to datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/FunctionDef.java
index 169fe60..49ee22f 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/jdbc/metadata/IJdbcMetadata.java
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/FunctionDef.java
@@ -14,20 +14,36 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
-*/
-package org.apache.kylin.source.jdbc.metadata;
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
 
-import java.sql.DatabaseMetaData;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.List;
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
 
-public interface IJdbcMetadata {
-    List<String> listDatabases() throws SQLException;
+import java.util.Locale;
 
-    List<String> listTables(String database) throws SQLException;
+public class FunctionDef {
+    @JacksonXmlProperty(localName = "ID", isAttribute = true)
+    private String id;
 
-    ResultSet getTable(final DatabaseMetaData dbmd, String database, String table) throws SQLException;
+    @JacksonXmlProperty(localName = "EXPRESSION", isAttribute = true)
+    private String expression;
 
-    ResultSet listColumns(final DatabaseMetaData dbmd, String database, String table) throws SQLException;
+    public String getId() {
+        return id;
+    }
+
+    void setId(String id) {
+        this.id = id;
+    }
+
+    public String getExpression() {
+        return expression;
+    }
+
+    void init() {
+        id = id.toUpperCase(Locale.ROOT);
+    }
+
+    FunctionDef() {
+    }
 }
diff --git a/source-hive/src/main/java/org/apache/kylin/source/jdbc/JdbcDialect.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/PropertyDef.java
similarity index 63%
copy from source-hive/src/main/java/org/apache/kylin/source/jdbc/JdbcDialect.java
copy to datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/PropertyDef.java
index 7e5ecee..9acb019 100644
--- a/source-hive/src/main/java/org/apache/kylin/source/jdbc/JdbcDialect.java
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/PropertyDef.java
@@ -14,13 +14,23 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
-*/
-package org.apache.kylin.source.jdbc;
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
 
-public class JdbcDialect {
-    public static final String DIALECT_VERTICA = "vertica";
-    public static final String DIALECT_ORACLE = "oracle";
-    public static final String DIALECT_MYSQL = "mysql";
-    public static final String DIALECT_HIVE = "hive";
-    public static final String DIALECT_MSSQL = "mssql";
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
+
+public class PropertyDef {
+    @JacksonXmlProperty(localName = "NAME", isAttribute = true)
+    private String name;
+
+    @JacksonXmlProperty(localName = "VALUE", isAttribute = true)
+    private String value;
+
+    public String getName() {
+        return name;
+    }
+
+    public String getValue() {
+        return value;
+    }
 }
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/TypeDef.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/TypeDef.java
new file mode 100644
index 0000000..15e5e83
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/TypeDef.java
@@ -0,0 +1,111 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
+
+import java.util.Locale;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
+import com.google.common.annotations.VisibleForTesting;
+import com.google.common.primitives.Ints;
+
+public class TypeDef {
+    private static final Pattern P = Pattern
+            .compile("\\s*([^\\(\\)]+)\\s*(?:\\(\\s*([^\\s,]+)(?:\\s*,\\s*([^\\s,]+)\\s*)?\\))?\\s*");
+
+    @JacksonXmlProperty(localName = "ID", isAttribute = true)
+    private String id;
+
+    @JacksonXmlProperty(localName = "EXPRESSION", isAttribute = true)
+    private String expression;
+
+    @JacksonXmlProperty(localName = "MAXPRECISION", isAttribute = true)
+    private String maxPrecision;
+
+    // computed fields
+    private String name;
+    private int defaultPrecision;
+    private int defaultScale;
+
+    void init() {
+        id = id.toUpperCase(Locale.ROOT);
+
+        Matcher m = P.matcher(expression);
+        if (m.matches()) {
+            name = m.group(1).toUpperCase(Locale.ROOT);
+            Integer p = m.group(2) != null ? Ints.tryParse(m.group(2)) : null;
+            Integer s = m.group(3) != null ? Ints.tryParse(m.group(3)) : null;
+            defaultPrecision = p != null ? p : -1;
+            defaultScale = s != null ? s : -1;
+        }
+    }
+
+    @VisibleForTesting
+    void setExpression(String expression) {
+        this.expression = expression;
+    }
+
+    @VisibleForTesting
+    void setId(String id) {
+        this.id = id;
+    }
+
+    TypeDef() {
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public String getExpression() {
+        return expression;
+    }
+
+    public int getMaxPrecision() {
+        try {
+            return Integer.parseInt(maxPrecision);
+        } catch (Exception e) {
+            return Integer.MAX_VALUE;
+        }
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public int getDefaultPrecision() {
+        return defaultPrecision;
+    }
+
+    public int getDefaultScale() {
+        return defaultScale;
+    }
+
+    public String buildString(int p, int s) {
+        return expression.replaceAll("\\$p", Integer.toString(p)).replaceAll("\\$s", Integer.toString(s));
+    }
+
+    public static TypeDef fromString(String kylinTypeName) {
+        TypeDef t = new TypeDef();
+        t.setId("UNKNOWN");
+        t.setExpression(kylinTypeName);
+        t.init();
+        return t;
+    }
+}
diff --git a/source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/TypeMapping.java
similarity index 54%
copy from source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java
copy to datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/TypeMapping.java
index d9c7425..7c9d53f 100644
--- a/source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/def/TypeMapping.java
@@ -15,21 +15,31 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.kylin.source.jdbc.metadata;
-
-import org.apache.kylin.source.jdbc.JdbcDialect;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class JdbcMetadataFactoryTest {
-
-    @Test
-    public void testGetJdbcMetadata() {
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_MSSQL, null) instanceof SQLServerJdbcMetadata);
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_MYSQL, null) instanceof MySQLJdbcMetadata);
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_VERTICA, null) instanceof DefaultJdbcMetadata);
+package org.apache.kylin.sdk.datasource.framework.def;
+
+import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
+
+public class TypeMapping {
+
+    @JacksonXmlProperty(localName = "SOURCE_TYPE", isAttribute = true)
+    private String sourceType;
+
+    @JacksonXmlProperty(localName = "TARGET_TYPE", isAttribute = true)
+    private String targetType;
+
+    public String getSourceType() {
+        return sourceType;
+    }
+
+    public void setSourceType(String sourceType) {
+        this.sourceType = sourceType;
+    }
+
+    public String getTargetType() {
+        return targetType;
+    }
+
+    public void setTargetType(String targetType) {
+        this.targetType = targetType;
     }
 }
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/utils/ExpressionComparator.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/utils/ExpressionComparator.java
new file mode 100644
index 0000000..e25ace1
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/utils/ExpressionComparator.java
@@ -0,0 +1,165 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.utils;
+
+import com.google.common.base.Preconditions;
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlDataTypeSpec;
+import org.apache.calcite.sql.SqlLiteral;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.SqlIdentifier;
+import org.apache.calcite.sql.SqlNodeList;
+import org.apache.commons.collections.CollectionUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.List;
+import java.util.Objects;
+
+public class ExpressionComparator {
+
+    private static final Logger logger = LoggerFactory.getLogger(ExpressionComparator.class);
+
+
+    public static boolean isNodeEqual(SqlNode queryNode, SqlNode exprNode, SqlNodeComparator nodeComparator) {
+        try {
+            Preconditions.checkNotNull(nodeComparator);
+            return nodeComparator.isSqlNodeEqual(queryNode, exprNode);
+        } catch (Exception e) {
+            logger.error("Exception while running isNodeEqual, return false", e);
+            return false;
+        }
+    }
+
+
+
+    public static abstract class SqlNodeComparator {
+        protected abstract boolean isSqlIdentifierEqual(SqlIdentifier querySqlIdentifier,
+                SqlIdentifier exprSqlIdentifier);
+
+        public boolean isSqlNodeEqual(SqlNode queryNode, SqlNode exprNode) {
+            if (queryNode == null) {
+                return exprNode == null;
+            } else if (exprNode == null) {
+                return false;
+            }
+
+            if (!Objects.equals(queryNode.getClass().getSimpleName(), exprNode.getClass().getSimpleName())) {
+                return false;
+            }
+
+            if (queryNode instanceof SqlCall) {
+                if (!(exprNode instanceof SqlCall)) {
+                    return false;
+                }
+
+                SqlCall thisNode = (SqlCall) queryNode;
+                SqlCall thatNode = (SqlCall) exprNode;
+
+                if (!thisNode.getOperator().getName().equalsIgnoreCase(thatNode.getOperator().getName())) {
+                    return false;
+                }
+                return isNodeListEqual(thisNode.getOperandList(), thatNode.getOperandList());
+            }
+            if (queryNode instanceof SqlLiteral) {
+                if (!(exprNode instanceof SqlLiteral)) {
+                    return false;
+                }
+
+                SqlLiteral thisNode = (SqlLiteral) queryNode;
+                SqlLiteral thatNode = (SqlLiteral) exprNode;
+
+                return Objects.equals(thisNode.getValue(), thatNode.getValue());
+            }
+            if (queryNode instanceof SqlNodeList) {
+                if (!(exprNode instanceof SqlNodeList)) {
+                    return false;
+                }
+
+                SqlNodeList thisNode = (SqlNodeList) queryNode;
+                SqlNodeList thatNode = (SqlNodeList) exprNode;
+
+                if (thisNode.getList().size() != thatNode.getList().size()) {
+                    return false;
+                }
+
+                for (int i = 0; i < thisNode.getList().size(); i++) {
+                    SqlNode thisChild = thisNode.getList().get(i);
+                    final SqlNode thatChild = thatNode.getList().get(i);
+                    if (!isSqlNodeEqual(thisChild, thatChild)) {
+                        return false;
+                    }
+                }
+                return true;
+            }
+
+            if (queryNode instanceof SqlIdentifier) {
+                if (!(exprNode instanceof SqlIdentifier)) {
+                    return false;
+                }
+                SqlIdentifier thisNode = (SqlIdentifier) queryNode;
+                SqlIdentifier thatNode = (SqlIdentifier) exprNode;
+
+                return isSqlIdentifierEqual(thisNode, thatNode);
+            }
+
+            if (queryNode instanceof SqlDataTypeSpec) {
+                if (!(exprNode instanceof SqlDataTypeSpec))
+                    return false;
+
+                SqlDataTypeSpec thisNode = (SqlDataTypeSpec) queryNode;
+                SqlDataTypeSpec thatNode = (SqlDataTypeSpec) exprNode;
+                return isSqlDataTypeSpecEqual(thisNode, thatNode);
+            }
+
+            return false;
+        }
+
+        protected boolean isSqlDataTypeSpecEqual(SqlDataTypeSpec querySqlDataTypeSpec,
+                SqlDataTypeSpec exprSqlDataTypeSpec) {
+            if (querySqlDataTypeSpec.getTypeName() == null
+                    || CollectionUtils.isEmpty(querySqlDataTypeSpec.getTypeName().names))
+                return false;
+            if (querySqlDataTypeSpec.getTypeName().names.size() != exprSqlDataTypeSpec.getTypeName().names.size())
+                return false;
+
+            for (int i = 0; i < querySqlDataTypeSpec.getTypeName().names.size(); i++) {
+                String queryName = querySqlDataTypeSpec.getTypeName().names.get(i);
+                if (!exprSqlDataTypeSpec.getTypeName().names.contains(queryName)) {
+                    return false;
+                }
+            }
+
+            return querySqlDataTypeSpec.getScale() == exprSqlDataTypeSpec.getScale()
+                    && querySqlDataTypeSpec.getPrecision() == exprSqlDataTypeSpec.getPrecision();
+        }
+
+        protected boolean isNodeListEqual(List<SqlNode> queryNodeList, List<SqlNode> exprNodeList) {
+            if (queryNodeList.size() != exprNodeList.size()) {
+                return false;
+            }
+            for (int i = 0; i < queryNodeList.size(); i++) {
+                if (!isSqlNodeEqual(queryNodeList.get(i), exprNodeList.get(i))) {
+                    return false;
+                }
+            }
+            return true;
+        }
+    }
+
+}
diff --git a/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/utils/XmlUtil.java b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/utils/XmlUtil.java
new file mode 100644
index 0000000..596e50c
--- /dev/null
+++ b/datasource-sdk/src/main/java/org/apache/kylin/sdk/datasource/framework/utils/XmlUtil.java
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.utils;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.dataformat.xml.XmlMapper;
+
+public class XmlUtil {
+
+    // reuse the object mapper to save memory footprint
+    private static final XmlMapper xmlMapper = new XmlMapper();
+
+    static {
+        xmlMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
+    }
+
+    public static <T> T readValue(File src, Class<T> valueType) throws IOException {
+        return xmlMapper.readValue(src, valueType);
+    }
+
+    public static <T> T readValue(InputStream inputStream, Class<T> valueType) throws IOException {
+        return xmlMapper.readValue(inputStream, valueType);
+    }
+
+    public static <T> T readValue(String content, Class<T> valueType) throws IOException {
+        return xmlMapper.readValue(content, valueType);
+    }
+
+}
diff --git a/datasource-sdk/src/main/resources/datasource/default.xml b/datasource-sdk/src/main/resources/datasource/default.xml
new file mode 100644
index 0000000..dda2dac
--- /dev/null
+++ b/datasource-sdk/src/main/resources/datasource/default.xml
@@ -0,0 +1,202 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<DATASOURCE_DEF NAME="kylin" ID="default">
+    <PROPERTY NAME="sql.default-converted-enabled" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-offset" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-fetch-no-rows" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-orderby-with-fetch" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-escape" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-uppercase" VALUE="true"/>
+    <PROPERTY NAME="sql.case-sensitive" VALUE="false"/>
+    <PROPERTY NAME="metadata.enable-cache" VALUE="false"/>
+    <!--Min-->
+    <FUNCTION_DEF ID="1" EXPRESSION="MIN($0)"/>
+    <!--Max-->
+    <FUNCTION_DEF ID="3" EXPRESSION="MAX($0)"/>
+    <!--CurrentDate-->
+    <FUNCTION_DEF ID="5" EXPRESSION="CURRENT_DATE"/>
+    <!--CurrentDateTime-->
+    <FUNCTION_DEF ID="6" EXPRESSION="CURRENT_TIMESTAMP"/>
+    <!--Date-->
+    <FUNCTION_DEF ID="7" EXPRESSION="CAST($0 AS DATE)"/>
+    <!--DayOfMonth-->
+    <FUNCTION_DEF ID="8" EXPRESSION="EXTRACT(DAY FROM $0)"/>
+    <!--DayOfYear-->
+    <FUNCTION_DEF ID="9" EXPRESSION="DAYOFYEAR($0)"/>
+    <!--Month-->
+    <FUNCTION_DEF ID="10" EXPRESSION="EXTRACT(MONTH FROM $0)"/>
+    <!--Quarter-->
+    <FUNCTION_DEF ID="11" EXPRESSION="EXTRACT(QUARTER FROM $0)"/>
+    <!--Year-->
+    <FUNCTION_DEF ID="12" EXPRESSION="EXTRACT(YEAR FROM $0)"/>
+    <!--IsNotNull-->
+    <FUNCTION_DEF ID="13" EXPRESSION="$0 IS NOT NULL"/>
+    <!--IsNull-->
+    <FUNCTION_DEF ID="14" EXPRESSION="$0 IS NULL"/>
+    <!--NullToZero-->
+    <FUNCTION_DEF ID="15" EXPRESSION="COALESCE($0, 0)"/>
+    <!--ZeroToNull-->
+    <FUNCTION_DEF ID="16" EXPRESSION="NULLIF($0, 0)"/>
+    <!--FirstInRange-->
+    <FUNCTION_DEF ID="17" EXPRESSION="first_value($0) over($1)"/>
+    <!--MovingAvg-->
+    <FUNCTION_DEF ID="18" EXPRESSION="avg($0) over($1)"/>
+    <!--MovingCount-->
+    <FUNCTION_DEF ID="19" EXPRESSION="count($0) over($1)"/>
+    <!--MovingMax-->
+    <FUNCTION_DEF ID="20" EXPRESSION="max($0) over($1)"/>
+    <!--MovingMin-->
+    <FUNCTION_DEF ID="21" EXPRESSION="min($0) over($1)"/>
+    <!--MovingSum-->
+    <FUNCTION_DEF ID="22" EXPRESSION="sum($0) over($1)"/>
+    <!--RunningStdevP-->
+    <FUNCTION_DEF ID="23" EXPRESSION="STDDEV_POP($0) OVER($1)"/>
+    <!--LeftStr-->
+    <FUNCTION_DEF ID="24" EXPRESSION="SUBSTRING($0, 1, $1)"/>
+    <!--Length-->
+    <FUNCTION_DEF ID="25" EXPRESSION="CHAR_LENGTH($0)"/>
+    <!--Lower-->
+    <FUNCTION_DEF ID="26" EXPRESSION="LOWER($0)"/>
+    <!--SubStr-->
+    <FUNCTION_DEF ID="27" EXPRESSION="SUBSTRING($0, $1, $2)"/>
+    <!--initcap-->
+    <FUNCTION_DEF ID="28" EXPRESSION="INITCAP($0)"/>
+    <!--Trim-->
+    <FUNCTION_DEF ID="29" EXPRESSION="TRIM($0)"/>
+    <!--Upper-->
+    <FUNCTION_DEF ID="30" EXPRESSION="UPPER($0)"/>
+    <!--Abs-->
+    <FUNCTION_DEF ID="31" EXPRESSION="ABS($0)"/>
+    <!--Acos-->
+    <FUNCTION_DEF ID="32" EXPRESSION="ACOS($0)"/>
+    <!--Asin-->
+    <FUNCTION_DEF ID="34" EXPRESSION="ASIN($0)"/>
+    <!--Atan-->
+    <FUNCTION_DEF ID="36" EXPRESSION="ATAN($0)"/>
+    <!--Atan2-->
+    <FUNCTION_DEF ID="37" EXPRESSION="ATAN2($1, $0)"/>
+    <!--Ceiling-->
+    <FUNCTION_DEF ID="39" EXPRESSION="CEIL($0)"/>
+    <!--Cos-->
+    <FUNCTION_DEF ID="40" EXPRESSION="COS($0)"/>
+    <!--Degrees-->
+    <FUNCTION_DEF ID="42" EXPRESSION="DEGREES($0)"/>
+    <!--Exp-->
+    <FUNCTION_DEF ID="43" EXPRESSION="EXP($0)"/>
+    <!--Floor-->
+    <FUNCTION_DEF ID="44" EXPRESSION="FLOOR($0)"/>
+    <!--Int-->
+    <FUNCTION_DEF ID="45" EXPRESSION="FLOOR($0)"/>
+    <!--Int2-->
+    <FUNCTION_DEF ID="46" EXPRESSION="FLOOR($0)"/>
+    <!--Ln-->
+    <FUNCTION_DEF ID="47" EXPRESSION="LN($0)"/>
+    <!--Log-->
+    <FUNCTION_DEF ID="48" EXPRESSION="LN($0)/LN($1)"/>
+    <!--Log10-->
+    <FUNCTION_DEF ID="49" EXPRESSION="LOG10($0)"/>
+    <!--Mod-->
+    <FUNCTION_DEF ID="50" EXPRESSION="$0-FLOOR($0/$1)*$1"/>
+    <!--Power-->
+    <FUNCTION_DEF ID="51" EXPRESSION="POWER($0, $1)"/>
+    <!--Radians-->
+    <FUNCTION_DEF ID="53" EXPRESSION="RADIANS($0)"/>
+    <!--Round-->
+    <FUNCTION_DEF ID="55" EXPRESSION="ROUND($0, 0)"/>
+    <!--Sin-->
+    <FUNCTION_DEF ID="56" EXPRESSION="SIN($0)"/>
+    <!--Sqrt-->
+    <FUNCTION_DEF ID="58" EXPRESSION="SQRT($0)"/>
+    <!--Tan-->
+    <FUNCTION_DEF ID="59" EXPRESSION="TAN($0)"/>
+    <!--Trunc-->
+    <FUNCTION_DEF ID="61" EXPRESSION="CAST($0 AS INTEGER)"/>
+    <!--Median-->
+    <FUNCTION_DEF ID="63" EXPRESSION="MEDIAN($0)"/>
+    <!--Daysbetween-->
+    <FUNCTION_DEF ID="64" EXPRESSION="TIMESTAMPDIFF(day, $0, $1)"/>
+    <!--DateAdd-->
+    <FUNCTION_DEF ID="65" EXPRESSION="TIMESTAMPADD(day, $1, $0)"/>
+    <!--AddMonths-->
+    <FUNCTION_DEF ID="66" EXPRESSION="TIMESTAMPADD(month, $1, $0)"/>
+    <!--CurrentTime-->
+    <FUNCTION_DEF ID="67" EXPRESSION="CURRENT_TIME"/>
+    <!--DayofWeek-->
+    <FUNCTION_DEF ID="68" EXPRESSION="DAYOFWEEK($0)"/>
+    <!--Monthsbetween-->
+    <FUNCTION_DEF ID="69" EXPRESSION="TIMESTAMPDIFF(month, $0, $1)"/>
+    <!--Week-->
+    <FUNCTION_DEF ID="70" EXPRESSION="WEEK($0)"/>
+    <!--NulltoEmpty-->
+    <FUNCTION_DEF ID="71" EXPRESSION="COALESCE($0, '')"/>
+    <!--StrBeginsWith-->
+    <FUNCTION_DEF ID="72"
+                  EXPRESSION="case when SUBSTRING($0 from 1 for CHAR_LENGTH('$1') ) =$1 then 1 else 0 end"/>
+    <!--Concat-->
+    <FUNCTION_DEF ID="73" EXPRESSION="concat ($0 , $1)"/>
+    <!--StrEndsWith-->
+    <FUNCTION_DEF ID="74"
+                  EXPRESSION="case when SUBSTRING($0 from  (CHAR_LENGTH($0)-CHAR_LENGTH($1)+1) for CHAR_LENGTH($1) ) =$1 then 1 else 0 end"/>
+    <!--LTrim-->
+    <FUNCTION_DEF ID="76" EXPRESSION="TRIM( LEADING ' '  FROM $0)"/>
+    <!--Position-->
+    <FUNCTION_DEF ID="77" EXPRESSION="POSITION($0 IN $1)"/>
+    <!--StrReplace-->
+    <FUNCTION_DEF ID="78" EXPRESSION="REPLACE($0, $1, $2)"/>
+    <!--RightStr-->
+    <FUNCTION_DEF ID="79"
+                  EXPRESSION="SUBSTRING($0 FROM (char_length($0) -$1 +1) FOR $1)"/>
+    <!--RTrim-->
+    <FUNCTION_DEF ID="80" EXPRESSION="TRIM(TRAILING ' '  FROM $0)"/>
+    <!--Round2-->
+    <FUNCTION_DEF ID="81" EXPRESSION="ROUND($0, $1)"/>
+    <!--CORRELATION -->
+    <FUNCTION_DEF ID="82" EXPRESSION="CORR($0, $1)"/>
+    <!--Random number-->
+    <FUNCTION_DEF ID="83" EXPRESSION="RAND()"/>
+
+    <TYPE_DEF ID="Any" EXPRESSION="ANY"/>
+
+    <TYPE_DEF ID="Integer" EXPRESSION="INTEGER"/>
+    <TYPE_DEF ID="Int" EXPRESSION="INT"/>
+    <TYPE_DEF ID="BigInt" EXPRESSION="BIGINT"/>
+    <TYPE_DEF ID="TinyInt" EXPRESSION="TINYINT"/>
+    <TYPE_DEF ID="SmallInt" EXPRESSION="SMALLINT"/>
+    <TYPE_DEF ID="Short" EXPRESSION="SHORT"/>
+    <TYPE_DEF ID="Long" EXPRESSION="LONG"/>
+
+    <TYPE_DEF ID="Numeric" EXPRESSION="NUMERIC($p, $s)"/>
+    <TYPE_DEF ID="Decimal" EXPRESSION="DECIMAL($p, $s)"/>
+    <TYPE_DEF ID="Real" EXPRESSION="REAL"/>
+    <TYPE_DEF ID="Double" EXPRESSION="DOUBLE"/>
+    <TYPE_DEF ID="Float" EXPRESSION="FLOAT"/>
+
+    <TYPE_DEF ID="Char" EXPRESSION="CHAR($p)"/>
+    <TYPE_DEF ID="VarChar" EXPRESSION="VARCHAR($p)"/>
+    <TYPE_DEF ID="String" EXPRESSION="STRING"/>
+
+    <TYPE_DEF ID="Binary" EXPRESSION="BINARY"/>
+    <TYPE_DEF ID="Byte" EXPRESSION="BYTE"/>
+    <TYPE_DEF ID="Boolean" EXPRESSION="BOOLEAN"/>
+
+    <TYPE_DEF ID="Date" EXPRESSION="DATE"/>
+    <TYPE_DEF ID="Time" EXPRESSION="TIME"/>
+    <TYPE_DEF ID="DateTime" EXPRESSION="DATETIME"/>
+    <TYPE_DEF ID="TimeStamp" EXPRESSION="TIMESTAMP"/>
+</DATASOURCE_DEF>
diff --git a/datasource-sdk/src/main/resources/datasource/mysql.xml b/datasource-sdk/src/main/resources/datasource/mysql.xml
new file mode 100644
index 0000000..d31c11e
--- /dev/null
+++ b/datasource-sdk/src/main/resources/datasource/mysql.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<DATASOURCE_DEF NAME="kylin" ID="mysql">
+    <PROPERTY NAME="sql.default-converted-enabled" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-offset" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-fetch-no-rows" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-orderby-with-fetch" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-escape" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-uppercase" VALUE="true"/>
+    <PROPERTY NAME="table-sampling.template.max-or-min-value-default"
+              VALUE="SELECT MAX({0}), MIN({0}) FROM {1} WHERE {0} IS NOT NULL"/>
+    <PROPERTY NAME="table-sampling.template.max-or-min-len-value-default"
+              VALUE="SELECT {0} FROM {1}  WHERE {0} IS NOT NULL ORDER BY CHAR_LENGTH({0}){2} LIMIT 1"/>
+    <PROPERTY NAME="table-sampling.template.exceed-precision-count-default"
+              VALUE="SELECT COUNT({0}) FROM {1} WHERE CHAR_LENGTH({0}) > {2}"/>
+    <PROPERTY NAME="table-sampling.template.exceed-precision-max-length-value-default"
+              VALUE="SELECT MAX(CHAR_LENGTH({0})) FROM {1} WHERE CHAR_LENGTH({0}) > {2}"/>
+    <PROPERTY NAME="sql.case-sensitive" VALUE="true"/>
+    <PROPERTY NAME="sql.paging-type" VALUE="LIMIT_OFFSET"/>
+
+
+    <!--Trunc-->
+    <FUNCTION_DEF ID="61" EXPRESSION="CAST($0 AS SIGNED)"/>
+
+    <TYPE_DEF ID="Short" EXPRESSION="MEDIUMINT"/>
+    <TYPE_DEF ID="String" EXPRESSION="TEXT"/>
+    <TYPE_DEF ID="Byte" EXPRESSION="TINYINT"/>
+    <TYPE_DEF ID="Boolean" EXPRESSION="BOOLEAN"/>
+
+</DATASOURCE_DEF>
diff --git a/source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/adaptor/AdaptorConfigTest.java
similarity index 58%
copy from source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java
copy to datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/adaptor/AdaptorConfigTest.java
index d9c7425..3ef826c 100644
--- a/source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/adaptor/AdaptorConfigTest.java
@@ -15,21 +15,22 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.kylin.source.jdbc.metadata;
+package org.apache.kylin.sdk.datasource.adaptor;
 
-import org.apache.kylin.source.jdbc.JdbcDialect;
 import org.junit.Assert;
 import org.junit.Test;
 
-public class JdbcMetadataFactoryTest {
-
+public class AdaptorConfigTest {
     @Test
-    public void testGetJdbcMetadata() {
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_MSSQL, null) instanceof SQLServerJdbcMetadata);
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_MYSQL, null) instanceof MySQLJdbcMetadata);
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_VERTICA, null) instanceof DefaultJdbcMetadata);
+    public void testEquals() {
+        AdaptorConfig conf1 = new AdaptorConfig("a", "b", "c", "d");
+        AdaptorConfig conf2 = new AdaptorConfig("a", "b", "c", "d");
+        AdaptorConfig conf3 = new AdaptorConfig("a1", "b1", "c1", "d1");
+
+        Assert.assertEquals(conf1, conf2);
+        Assert.assertEquals(conf1.hashCode(), conf2.hashCode());
+        Assert.assertNotSame(conf1, conf2);
+        Assert.assertNotEquals(conf1, conf3);
+        Assert.assertNotEquals(conf1.hashCode(), conf3.hashCode());
     }
 }
diff --git a/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/JdbcConnectorTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/JdbcConnectorTest.java
new file mode 100644
index 0000000..b63c929
--- /dev/null
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/JdbcConnectorTest.java
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.sql.Types;
+import java.util.LinkedHashMap;
+
+import org.apache.calcite.sql.parser.SqlParseException;
+import org.apache.kylin.common.util.DBUtils;
+import org.apache.kylin.common.util.LocalFileMetadataTestCase;
+import org.apache.kylin.sdk.datasource.framework.conv.SqlConverter;
+import org.apache.kylin.source.H2Database;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class JdbcConnectorTest extends LocalFileMetadataTestCase {
+    private static JdbcConnector connector = null;
+    private static Connection h2Conn = null;
+    private static H2Database h2Db = null;
+
+    @BeforeClass
+    public static void setUp() throws Exception {
+        staticCreateTestMetadata();
+        getTestConfig().setProperty("kylin.source.jdbc.dialect", "testing");
+
+        connector = SourceConnectorFactory.getJdbcConnector(getTestConfig());
+        h2Conn = connector.getConnection();
+
+        h2Db = new H2Database(h2Conn, getTestConfig(), "default");
+        h2Db.loadAllTables();
+    }
+
+    @AfterClass
+    public static void after() throws Exception {
+        h2Db.dropAll();
+        DBUtils.closeQuietly(h2Conn);
+
+        staticCleanupTestMetadata();
+    }
+
+    @Test
+    public void testBasics() throws SQLException, SqlParseException {
+        Assert.assertNotNull(connector);
+        Assert.assertNotNull(connector.getJdbcDriver());
+        Assert.assertNotNull(connector.getJdbcUrl());
+        Assert.assertNotNull(connector.getJdbcUser());
+        Assert.assertNotNull(connector.getJdbcPassword());
+
+        try (Connection conn = connector.getConnection()) {
+            Assert.assertNotNull(conn);
+            Assert.assertTrue(!conn.isClosed());
+        }
+
+        Assert.assertNotNull(connector.convertSql("select 1"));
+        Assert.assertFalse(connector.listDatabases().isEmpty());
+        Assert.assertFalse(connector.listDatabases().contains("EDW"));
+        Assert.assertTrue(connector.listDatabases().contains("DEFAULT"));
+        Assert.assertFalse(connector.listTables("DEFAULT").isEmpty());
+        Assert.assertTrue(connector.listColumns("DEFAULT", "TEST_KYLIN_FACT").next());
+        Assert.assertNotNull(connector.buildSqlToCreateSchema("NEW_SCHEMA"));
+        Assert.assertNotNull(connector.buildSqlToCreateTable("NEW_TABLE", new LinkedHashMap<String, String>()));
+        Assert.assertNotNull(connector.buildSqlToCreateView("NEW_VIEW", "select 1"));
+        Assert.assertNotNull(connector.buildSqlToLoadDataFromLocal("TABLE", "/tmp"));
+
+        connector.executeUpdate("select 1"); // expected no exceptions
+
+        SqlConverter.IConfigurer configurer = connector.getSqlConverter().getConfigurer();
+        Assert.assertTrue(configurer.allowFetchNoRows());
+        Assert.assertTrue(configurer.allowNoOffset());
+        Assert.assertTrue(configurer.allowNoOrderByWithFetch());
+        Assert.assertFalse(configurer.skipHandleDefault());
+        Assert.assertFalse(configurer.skipDefaultConvert());
+
+        Assert.assertEquals(Types.DOUBLE, connector.toKylinTypeId("DOUBLE PRECISION", 0));
+        Assert.assertEquals(Types.DOUBLE, connector.toKylinTypeId("double PRECISION", 0));
+        Assert.assertEquals(Types.VARCHAR, connector.toKylinTypeId("CHARACTER VARYING", 0));
+    }
+
+}
diff --git a/source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/SourceConnectorFactoryTest.java
similarity index 55%
copy from source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java
copy to datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/SourceConnectorFactoryTest.java
index d9c7425..735da85 100644
--- a/source-hive/src/test/java/org/apache/kylin/source/jdbc/metadata/JdbcMetadataFactoryTest.java
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/SourceConnectorFactoryTest.java
@@ -15,21 +15,30 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.kylin.source.jdbc.metadata;
+package org.apache.kylin.sdk.datasource.framework;
 
-import org.apache.kylin.source.jdbc.JdbcDialect;
+import org.apache.kylin.common.KylinConfig;
+import org.apache.kylin.common.util.LocalFileMetadataTestCase;
+import org.junit.AfterClass;
 import org.junit.Assert;
+import org.junit.BeforeClass;
 import org.junit.Test;
 
-public class JdbcMetadataFactoryTest {
+public class SourceConnectorFactoryTest extends LocalFileMetadataTestCase {
+    @BeforeClass
+    public static void setUp() throws Exception {
+        staticCreateTestMetadata();
+    }
+
+    @AfterClass
+    public static void after() throws Exception {
+        staticCleanupTestMetadata();
+    }
 
     @Test
-    public void testGetJdbcMetadata() {
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_MSSQL, null) instanceof SQLServerJdbcMetadata);
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_MYSQL, null) instanceof MySQLJdbcMetadata);
-        Assert.assertTrue(
-                JdbcMetadataFactory.getJdbcMetadata(JdbcDialect.DIALECT_VERTICA, null) instanceof DefaultJdbcMetadata);
+    public void testGetJdbcConnector() {
+        KylinConfig conf1 = getTestConfig();
+        JdbcConnector conn1 = SourceConnectorFactory.getJdbcConnector(conf1);
+        Assert.assertNotNull(conn1);
     }
 }
diff --git a/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/GenericSqlConverterTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/GenericSqlConverterTest.java
new file mode 100644
index 0000000..324ad91
--- /dev/null
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/GenericSqlConverterTest.java
@@ -0,0 +1,64 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.sql.SQLException;
+import java.util.LinkedList;
+import java.util.List;
+
+public class GenericSqlConverterTest {
+
+    @Test
+    public void testConvertSql() throws SQLException {
+        GenericSqlConverter sqlConverter = new GenericSqlConverter();
+        // test function
+        List<String> functionTestSqls = new LinkedList<>();
+        functionTestSqls.add("SELECT MIN(C1)\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT EXP(AVG(LN(EXTRACT(DOY FROM CAST('2018-03-20' AS DATE)))))\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT CASE WHEN SUM(C1 - C1 + 1) = 1 THEN 0 ELSE (SUM(C1 * C1) - SUM(C1) * SUM(C1) / SUM(C1 - C1 + 1)) / (SUM(C1 - C1 + 1) - 1) END\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT EXTRACT(DAY FROM CAST('2018-03-20' AS DATE))\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT FIRST_VALUE(C1) OVER (ORDER BY C1)\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT SUBSTR('world', 1, CAST(2 AS INTEGER))\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT 2 - TRUNC(2 / NULLIF(3, 0)) * 3\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT CASE WHEN SUBSTRING('hello' FROM CAST(LENGTH('llo') - LENGTH('llo') + 1 AS INTEGER) FOR CAST(LENGTH('llo') AS INTEGER)) = 'llo' THEN 1 ELSE 0 END\nFROM TEST_SUITE");
+        functionTestSqls.add("SELECT SUBSTRING('world' FROM CAST(LENGTH('world') - 3 + 1 AS INTEGER) FOR CAST(3 AS INTEGER))\nFROM TEST_SUITE");
+
+        for (String originSql : functionTestSqls) {
+            testSqlConvert(originSql, "testing", "default", sqlConverter);
+        }
+        // test datatype
+        List<String> typeTestSqls = new LinkedList<>();
+        typeTestSqls.add("SELECT CAST(PRICE AS DOUBLE PRECISION)\nFROM \"default\".FACT");
+        typeTestSqls.add("SELECT CAST(PRICE AS DECIMAL(19, 4))\nFROM \"default\".FACT");
+        typeTestSqls.add("SELECT CAST(PRICE AS DECIMAL(19))\nFROM \"default\".FACT");
+        typeTestSqls.add("SELECT CAST(BYTE AS BIT(8))\nFROM \"default\".FACT");
+        typeTestSqls.add("SELECT CAST(BYTE AS VARCHAR(1024))\nFROM \"default\".FACT");
+        for (String originSql : typeTestSqls) {
+            testSqlConvert(originSql, "testing", "default", sqlConverter);
+        }
+    }
+
+    private void testSqlConvert(String originSql, String sourceDialect, String targetDialect, GenericSqlConverter sqlConverter) throws SQLException {
+        String convertedSql = sqlConverter.convertSql(originSql, sourceDialect, targetDialect);
+        String revertSql = sqlConverter.convertSql(convertedSql, targetDialect, sourceDialect);
+        Assert.assertEquals(originSql, revertSql);
+    }
+}
diff --git a/source-hive/src/test/java/org/apache/kylin/source/jdbc/SqlUtilTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/ParamNodeParserTest.java
similarity index 50%
copy from source-hive/src/test/java/org/apache/kylin/source/jdbc/SqlUtilTest.java
copy to datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/ParamNodeParserTest.java
index 7a7fd33..ae0afb3 100644
--- a/source-hive/src/test/java/org/apache/kylin/source/jdbc/SqlUtilTest.java
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/ParamNodeParserTest.java
@@ -15,32 +15,24 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.kylin.source.jdbc;
-
-import java.sql.Types;
+package org.apache.kylin.sdk.datasource.framework.conv;
 
 import org.junit.Assert;
 import org.junit.Test;
 
-public class SqlUtilTest {
-
+public class ParamNodeParserTest {
     @Test
-    public void testJdbcTypetoKylinDataType() {
-        this.getClass().getClassLoader().toString();
-        Assert.assertEquals("double", SqlUtil.jdbcTypeToKylinDataType(Types.FLOAT));
-        Assert.assertEquals("varchar", SqlUtil.jdbcTypeToKylinDataType(Types.NVARCHAR));
-        Assert.assertEquals("any", SqlUtil.jdbcTypeToKylinDataType(Types.ARRAY));
-    }
+    public void testParseParamIdx() {
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx("t**t"));
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx(null));
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx(""));
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx("1"));
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx("$$0"));
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx("$0$"));
+        Assert.assertEquals(-1, ParamNodeParser.parseParamIdx("$10000000000000000000000000"));
 
-    @Test
-    public void testIsPrecisionApplicable() {
-        Assert.assertFalse(SqlUtil.isPrecisionApplicable("boolean"));
-        Assert.assertTrue(SqlUtil.isPrecisionApplicable("varchar"));
-    }
-
-    @Test
-    public void testIsScaleApplicable() {
-        Assert.assertFalse(SqlUtil.isScaleApplicable("varchar"));
-        Assert.assertTrue(SqlUtil.isScaleApplicable("decimal"));
+        Assert.assertEquals(1, ParamNodeParser.parseParamIdx("$1"));
+        Assert.assertEquals(0, ParamNodeParser.parseParamIdx("$0"));
+        Assert.assertEquals(1, ParamNodeParser.parseParamIdx("$01"));
     }
 }
diff --git a/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/SqlConverterTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/SqlConverterTest.java
new file mode 100644
index 0000000..0224ce4
--- /dev/null
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/SqlConverterTest.java
@@ -0,0 +1,319 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import java.sql.SQLException;
+
+import org.apache.calcite.sql.SqlDialect;
+import org.apache.calcite.sql.parser.SqlParseException;
+import org.apache.kylin.common.util.LocalFileMetadataTestCase;
+import org.apache.kylin.sdk.datasource.framework.def.DataSourceDefProvider;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class SqlConverterTest extends LocalFileMetadataTestCase {
+    private final static String TEST_TARGET = "testing";
+
+    @BeforeClass
+    public static void setUp() throws Exception {
+        staticCreateTestMetadata();
+    }
+
+    @AfterClass
+    public static void after() throws Exception {
+        staticCleanupTestMetadata();
+    }
+
+    @Test
+    public void testConvertSqlWithoutEscape() throws SQLException, SqlParseException {
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        ConvMaster master = new ConvMaster(provider.getDefault(), provider.getById(TEST_TARGET));
+        SqlConverter converter = new SqlConverter(new SqlConverter.IConfigurer() {
+            @Override
+            public boolean skipDefaultConvert() {
+                return false;
+            }
+
+            @Override
+            public boolean skipHandleDefault() {
+                return true;
+            }
+
+            @Override
+            public boolean useUppercaseDefault() {
+                return true;
+            }
+
+            @Override
+            public String fixAfterDefaultConvert(String orig) {
+                return orig;
+            }
+
+            @Override
+            public SqlDialect getSqlDialect() throws SQLException {
+                return SqlDialect.CALCITE;
+            }
+
+            @Override
+            public boolean allowNoOffset() {
+                return true;
+            }
+
+            @Override
+            public boolean allowFetchNoRows() {
+                return true;
+            }
+
+            @Override
+            public boolean allowNoOrderByWithFetch() {
+                return true;
+            }
+
+            @Override
+            public String getPagingType() {
+                return "AUTO";
+            }
+
+            @Override
+            public boolean isCaseSensitive() {
+                return false;
+            }
+
+            @Override
+            public boolean enableCache() {
+                return true;
+            }
+        }, master);
+
+        // escape default keywords
+        Assert.assertEquals("SELECT *\nFROM DEFAULT.FACT", converter.convertSql("select * from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT *\nFROM \"Default\".FACT", converter.convertSql("select * from \"Default\".FACT"));
+        Assert.assertEquals("SELECT *\nFROM \"default\".FACT", converter.convertSql("select * from \"default\".FACT"));
+    }
+
+    @Test
+    public void testConvertSqlWithEscape() throws SQLException, SqlParseException {
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        ConvMaster master = new ConvMaster(provider.getDefault(), provider.getById(TEST_TARGET));
+        SqlConverter converter = new SqlConverter(new SqlConverter.IConfigurer() {
+
+            @Override
+            public boolean skipDefaultConvert() {
+                return false;
+            }
+
+            @Override
+            public boolean skipHandleDefault() {
+                return false;
+            }
+
+            @Override
+            public boolean useUppercaseDefault() {
+                return true;
+            }
+
+            @Override
+            public String fixAfterDefaultConvert(String orig) {
+                return orig;
+            }
+
+            @Override
+            public SqlDialect getSqlDialect() throws SQLException {
+                return SqlDialect.CALCITE;
+            }
+
+            @Override
+            public boolean allowNoOffset() {
+                return true;
+            }
+
+            @Override
+            public boolean allowFetchNoRows() {
+                return true;
+            }
+
+            @Override
+            public boolean allowNoOrderByWithFetch() {
+                return true;
+            }
+
+            @Override
+            public String getPagingType() {
+                return "AUTO";
+            }
+
+            @Override
+            public boolean isCaseSensitive() {
+                return false;
+            }
+
+            @Override
+            public boolean enableCache() {
+                return true;
+            }
+        }, master);
+
+        // normal cases
+        Assert.assertEquals("SELECT 1", converter.convertSql("select     1"));
+        Assert.assertEquals("SELECT *\nFROM FACT", converter.convertSql("select * from FACT"));
+
+        // limit and offset
+        Assert.assertEquals("SELECT 1\nFETCH NEXT 1 ROWS ONLY", converter.convertSql("SELECT 1 LIMIT 1"));
+        Assert.assertEquals("SELECT 1\nFETCH NEXT 0 ROWS ONLY", converter.convertSql("SELECT 1 LIMIT 0"));
+        Assert.assertEquals("SELECT 1\nOFFSET 1 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 LIMIT 1 OFFSET 1"));
+
+        // escape default keywords
+        Assert.assertEquals("SELECT *\nFROM \"DEFAULT\".FACT", converter.convertSql("select * from DEFAULT.FACT"));
+        Assert.assertEquals("SELECT *\nFROM \"DEFAULT\".FACT", converter.convertSql("select * from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT *\nFROM \"DEFAULT\".FACT", converter.convertSql("select * from \"Default\".FACT"));
+        Assert.assertEquals("SELECT *\nFROM \"DEFAULT\".FACT", converter.convertSql("select * from \"default\".FACT"));
+
+        // function mapping
+        Assert.assertEquals("SELECT EXTRACT(DOY FROM PART_DT)\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select DAYOFYEAR(PART_DT) from \"DEFAULT\".FACT"));
+        Assert.assertEquals(
+                "SELECT 12 * (EXTRACT(YEAR FROM DT1) - EXTRACT(YEAR FROM DT2)) + EXTRACT(MONTH FROM DT1) - EXTRACT(MONTH FROM DT2) "
+                        + "- CASE WHEN EXTRACT(DAY FROM DT2) > EXTRACT(DAY FROM DT1) THEN 1 ELSE 0 END\n"
+                        + "FROM \"DEFAULT\".FACT",
+                converter.convertSql("select TIMESTAMPDIFF(month,DT2,      DT1) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT TRUNC(ID)\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(ID as INT) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT 1\nFROM A\nWHERE 1 BETWEEN ASYMMETRIC 0 AND 2",
+                converter.convertSql("select 1 from a where 1 BETWEEN 0 and 2"));
+        Assert.assertEquals("SELECT CURRENT_DATE, TEST_CURR_TIME()",
+                converter.convertSql("select CURRENT_DATE, CURRENT_TIME"));
+        Assert.assertEquals("SELECT EXP(AVG(LN(EXTRACT(DOY FROM CAST('2018-03-20' AS DATE)))))\nFROM \"DEFAULT\".FACT",
+                converter.convertSql(
+                        "select exp(avg(ln(dayofyear(cast('2018-03-20' as date))))) from \"DEFAULT\".FACT"));
+
+        // over function
+        Assert.assertEquals("SELECT STDDEVP(C1) OVER (ORDER BY C1)\nFROM TEST_SUITE\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("select stddev_pop(c1) over(order by c1) from test_suite limit 1"));
+
+        // type mapping
+        Assert.assertEquals("SELECT CAST(PRICE AS DOUBLE PRECISION)\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(PRICE as DOUBLE) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT CAST(PRICE AS DECIMAL(19, 4))\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(PRICE as DECIMAL(19,4)) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT CAST(PRICE AS DECIMAL(19))\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(PRICE as DECIMAL(19)) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT CAST(BYTE AS BIT(8))\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(BYTE as BYTE) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT CAST(BYTE AS VARCHAR(1024))\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(BYTE as VARCHAR(1024)) from \"DEFAULT\".FACT"));
+
+        // cannot find mapping
+        Assert.assertEquals("SELECT CURRENT_DATE_1, CURRENT_TIME_1",
+                converter.convertSql("select CURRENT_DATE_1, CURRENT_TIME_1"));
+        Assert.assertEquals("SELECT CURRENT_DATE_1, TEST_CURR_TIME(), CURRENT_DATE",
+                converter.convertSql("select CURRENT_DATE_1, CURRENT_TIME, CURRENT_DATE"));
+        Assert.assertEquals("SELECT CAST(BYTE AS VAR(1024))\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(BYTE as VAR(1024)) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT CAST(PRICE AS DDD)\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select cast(PRICE as DDD) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT A(), B(A), CAST(PRICE AS DDD)\nFROM \"DEFAULT\".FACT",
+                converter.convertSql("select A(), B(A), cast(PRICE as DDD) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("SELECT ONLY_DEFAULT(1)", converter.convertSql("SELECT ONLY_DEFAULT(1)"));
+
+        // invalid case
+        Assert.assertEquals("create table test(id int, price double, name string, value byte)",
+                converter.convertSql("create table test(id int, price double, name string, value byte)"));
+        Assert.assertEquals("select cast(BYTE as VARCHAR(1000000000000)) from \"DEFAULT\".FACT",
+                converter.convertSql("select cast(BYTE as VARCHAR(1000000000000)) from \"DEFAULT\".FACT"));
+        Assert.assertEquals("I am not a SQL", converter.convertSql("I am not a SQL"));
+    }
+
+    @Test
+    public void testConvertSqlWithStrictLimitOffset() throws SQLException, SqlParseException {
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        ConvMaster master = new ConvMaster(provider.getDefault(), provider.getById(TEST_TARGET));
+        SqlConverter converter = new SqlConverter(new SqlConverter.IConfigurer() {
+
+            @Override
+            public boolean skipDefaultConvert() {
+                return false;
+            }
+
+            @Override
+            public boolean skipHandleDefault() {
+                return false;
+            }
+
+            @Override
+            public boolean useUppercaseDefault() {
+                return true;
+            }
+
+            @Override
+            public String fixAfterDefaultConvert(String orig) {
+                return orig;
+            }
+
+            @Override
+            public SqlDialect getSqlDialect() throws SQLException {
+                return SqlDialect.CALCITE;
+            }
+
+            @Override
+            public boolean allowNoOffset() {
+                return false;
+            }
+
+            @Override
+            public boolean allowFetchNoRows() {
+                return false;
+            }
+
+            @Override
+            public boolean allowNoOrderByWithFetch() {
+                return false;
+            }
+
+            @Override
+            public String getPagingType() {
+                return "AUTO";
+            }
+
+            @Override
+            public boolean isCaseSensitive() {
+                return false;
+            }
+
+            @Override
+            public boolean enableCache() {
+                return true;
+            }
+        }, master);
+
+        Assert.assertEquals("SELECT 1\nORDER BY 2\nOFFSET 0 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 ORDER BY 2 LIMIT 1"));
+        Assert.assertEquals("SELECT 1\nORDER BY 1\nOFFSET 0 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 ORDER BY 1 LIMIT 1"));
+        Assert.assertEquals("SELECT 1\nORDER BY COL\nOFFSET 0 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 ORDER BY COL LIMIT 1"));
+        Assert.assertEquals("SELECT 1\nORDER BY 1\nOFFSET 0 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 ORDER BY 1 LIMIT 0"));
+        Assert.assertEquals("SELECT 1\nORDER BY 1\nOFFSET 1 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 ORDER BY 1 LIMIT 1 OFFSET 1"));
+        Assert.assertEquals("SELECT 1\nORDER BY 1\nOFFSET 0 ROWS\nFETCH NEXT 1 ROWS ONLY",
+                converter.convertSql("SELECT 1 LIMIT 1"));
+    }
+}
diff --git a/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/SqlParamsFinderTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/SqlParamsFinderTest.java
new file mode 100644
index 0000000..3aef676
--- /dev/null
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/conv/SqlParamsFinderTest.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.conv;
+
+import org.apache.calcite.sql.SqlCall;
+import org.apache.calcite.sql.SqlNode;
+import org.apache.calcite.sql.SqlWindow;
+import org.apache.calcite.sql.parser.SqlParseException;
+import org.apache.calcite.sql.parser.SqlParser;
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.Map;
+
+public class SqlParamsFinderTest {
+
+    @Test
+    public void testParamFinder() throws SqlParseException {
+        SqlParser sqlParser1 = SqlParser.create("POWER($0, $1) + AVG(LN($3)) + EXP($5)");
+        SqlNode sqlPattern = sqlParser1.parseExpression();
+        SqlParser sqlParser2 = SqlParser.create("POWER(3, POWER(2, POWER(2, 3))) + AVG(LN(EXP(4))) + EXP(CAST('2018-03-22' AS DATE))");
+        SqlNode sqlCall = sqlParser2.parseExpression();
+
+        SqlParamsFinder sqlParamsFinder = new SqlParamsFinder((SqlCall)sqlPattern, (SqlCall)sqlCall);
+        Map<Integer, SqlNode> paramNodes =  sqlParamsFinder.getParamNodes();
+
+        Assert.assertEquals("3", paramNodes.get(0).toString());
+        Assert.assertEquals("POWER(2, POWER(2, 3))", paramNodes.get(1).toString());
+        Assert.assertEquals("EXP(4)", paramNodes.get(3).toString());
+        Assert.assertEquals("CAST('2018-03-22' AS DATE)", paramNodes.get(5).toString());
+
+    }
+
+    @Test
+    public void testWindowCallParams() throws SqlParseException {
+        SqlParser sqlParser1 = SqlParser.create("STDDEV_POP($0) OVER($1)");
+        SqlNode sqlPattern = sqlParser1.parseExpression();
+        SqlParser sqlParser2 = SqlParser.create("STDDEV_POP(C1) OVER (ORDER BY C1)");
+        SqlNode sqlCall = sqlParser2.parseExpression();
+        SqlParamsFinder sqlParamsFinder = SqlParamsFinder.newInstance((SqlCall)sqlPattern, (SqlCall)sqlCall, true);
+        Map<Integer, SqlNode> paramNodes =  sqlParamsFinder.getParamNodes();
+
+        Assert.assertEquals("C1", paramNodes.get(0).toString());
+        Assert.assertEquals("(ORDER BY `C1`)", paramNodes.get(1).toString());
+        Assert.assertTrue(paramNodes.get(1) instanceof SqlWindow);
+    }
+}
diff --git a/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDefTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDefTest.java
new file mode 100644
index 0000000..b07c251
--- /dev/null
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/def/DataSourceDefTest.java
@@ -0,0 +1,75 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
+
+import org.apache.kylin.common.util.LocalFileMetadataTestCase;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import java.io.IOException;
+import java.sql.Types;
+import java.util.List;
+
+public class DataSourceDefTest extends LocalFileMetadataTestCase {
+
+    @BeforeClass
+    public static void setUp() throws Exception {
+        staticCreateTestMetadata();
+    }
+
+    @AfterClass
+    public static void after() throws Exception {
+        staticCleanupTestMetadata();
+    }
+
+    @Test
+    public void testBasic() throws IOException {
+        DataSourceDefProvider provider = DataSourceDefProvider.getInstance();
+        DataSourceDef defaultDef = provider.getDefault();
+
+        Assert.assertNotNull(defaultDef);
+        Assert.assertEquals("default", defaultDef.getId());
+
+        // functions
+        List<String> funcDefU = defaultDef.getFuncDefsByName("NULLIF");
+        List<String> funcDefL = defaultDef.getFuncDefsByName("nullif");
+        Assert.assertEquals(funcDefL, funcDefU);
+        Assert.assertFalse(funcDefU.isEmpty());
+        Assert.assertNotNull(defaultDef.getFuncDefSqlNode(funcDefU.get(0)));
+
+        // types
+        List<TypeDef> typeDefU = defaultDef.getTypeDefsByName("STRING");
+        List<TypeDef> typeDefL = defaultDef.getTypeDefsByName("string");
+        Assert.assertEquals(typeDefU, typeDefL);
+        Assert.assertFalse(typeDefL.isEmpty());
+        Assert.assertNotNull(defaultDef.getTypeDef(typeDefL.get(0).getId()));
+
+        // properties
+        Assert.assertNotNull(defaultDef.getPropertyValue("sql.default-converted-enabled", null));
+        Assert.assertNull(defaultDef.getPropertyValue("invalid-key", null));
+
+        // dataTypeMappings
+        DataSourceDef testingDsDef = provider.getById("testing");
+
+        Assert.assertEquals(Types.VARCHAR, (int) testingDsDef.getDataTypeValue("CHARACTER VARYING"));
+        Assert.assertEquals(Types.DOUBLE, (int) testingDsDef.getDataTypeValue("DOUBLE PRECISION"));
+        Assert.assertEquals(Types.DOUBLE, (int) testingDsDef.getDataTypeValue("double precision"));
+    }
+}
diff --git a/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/def/TypeDefTest.java b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/def/TypeDefTest.java
new file mode 100644
index 0000000..c5d7962
--- /dev/null
+++ b/datasource-sdk/src/test/java/org/apache/kylin/sdk/datasource/framework/def/TypeDefTest.java
@@ -0,0 +1,54 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.kylin.sdk.datasource.framework.def;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.Locale;
+import java.util.UUID;
+
+public class TypeDefTest {
+    @Test
+    public void testInit() {
+        {
+            TypeDef t = defineType("DECIMAL(19,4)");
+            Assert.assertEquals(19, t.getDefaultPrecision());
+            Assert.assertEquals(4, t.getDefaultScale());
+            Assert.assertEquals("DECIMAL(19,4)", t.buildString(30, 2));
+            Assert.assertEquals("DECIMAL", t.getName());
+            Assert.assertEquals(t.getId(), t.getId().toUpperCase(Locale.ROOT));
+        }
+        {
+            TypeDef t = defineType("DECIMAL($p,$s)");
+            Assert.assertEquals(-1, t.getDefaultPrecision());
+            Assert.assertEquals(-1, t.getDefaultScale());
+            Assert.assertEquals("DECIMAL(19,4)", t.buildString(19, 4));
+            Assert.assertEquals("DECIMAL", t.getName());
+            Assert.assertEquals(t.getId(), t.getId().toUpperCase(Locale.ROOT));
+        }
+    }
+
+    private TypeDef defineType(String pattern) {
+        TypeDef t = new TypeDef();
+        t.setId(UUID.randomUUID().toString().toLowerCase(Locale.ROOT));
+        t.setExpression(pattern);
+        t.init();
+        return t;
+    }
+}
diff --git a/datasource-sdk/src/test/resources/datasource/default.xml b/datasource-sdk/src/test/resources/datasource/default.xml
new file mode 100644
index 0000000..eec3a98
--- /dev/null
+++ b/datasource-sdk/src/test/resources/datasource/default.xml
@@ -0,0 +1,226 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<DATASOURCE_DEF NAME="kylin" ID="default" DIALECT="calcite">
+    <PROPERTY NAME="sql.default-converted-enabled" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-offset" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-fetch-no-rows" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-orderby-with-fetch" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-escape" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-uppercase" VALUE="true"/>
+    <PROPERTY NAME="sql.case-sensitive" VALUE="false"/>
+    <PROPERTY NAME="metadata.enable-cache" VALUE="false"/>
+
+    <!--Min-->
+    <FUNCTION_DEF ID="1" EXPRESSION="MIN($0)"/>
+    <!--GeoMean-->
+    <FUNCTION_DEF ID="2" EXPRESSION="EXP(AVG(LN($0)))"/>
+    <!--Max-->
+    <FUNCTION_DEF ID="3" EXPRESSION="MAX($0)"/>
+    <!--Var-->
+    <FUNCTION_DEF ID="4"
+                  EXPRESSION="(CASE WHEN SUM($0- $0+1)=1 THEN 0 ELSE ((SUM($0*$0)-((SUM($0)*SUM($0))/(SUM($0- $0+1))))/(SUM($0- $0+1)-1)) END)"/>
+    <!--CurrentDate-->
+    <FUNCTION_DEF ID="5" EXPRESSION="CURRENT_DATE"/>
+    <!--CurrentDateTime-->
+    <FUNCTION_DEF ID="6" EXPRESSION="CURRENT_TIMESTAMP"/>
+    <!--Date-->
+    <FUNCTION_DEF ID="7" EXPRESSION="CAST($0 AS DATE)"/>
+    <!--DayOfMonth-->
+    <FUNCTION_DEF ID="8" EXPRESSION="EXTRACT(DAY FROM $0)"/>
+    <!--DayOfYear-->
+    <FUNCTION_DEF ID="9" EXPRESSION="DAYOFYEAR($0)"/>
+    <!--Month-->
+    <FUNCTION_DEF ID="10" EXPRESSION="EXTRACT(MONTH FROM $0)"/>
+    <!--Quarter-->
+    <FUNCTION_DEF ID="11" EXPRESSION="EXTRACT(QUARTER FROM $0)"/>
+    <!--Year-->
+    <FUNCTION_DEF ID="12" EXPRESSION="EXTRACT(YEAR FROM $0)"/>
+    <!--IsNotNull-->
+    <FUNCTION_DEF ID="13" EXPRESSION="$0 IS NOT NULL"/>
+    <!--IsNull-->
+    <FUNCTION_DEF ID="14" EXPRESSION="$0 IS NULL"/>
+    <!--NullToZero-->
+    <FUNCTION_DEF ID="15" EXPRESSION="COALESCE($0, 0)"/>
+    <!--ZeroToNull-->
+    <FUNCTION_DEF ID="16" EXPRESSION="NULLIF($0, 0)"/>
+    <!--FirstInRange-->
+    <FUNCTION_DEF ID="17" EXPRESSION="first_value($0) over($1)"/>
+    <!--MovingAvg-->
+    <FUNCTION_DEF ID="18" EXPRESSION="avg($0) over($1)"/>
+    <!--MovingCount-->
+    <FUNCTION_DEF ID="19" EXPRESSION="count($0) over($1)"/>
+    <!--MovingMax-->
+    <FUNCTION_DEF ID="20" EXPRESSION="max($0) over($1)"/>
+    <!--MovingMin-->
+    <FUNCTION_DEF ID="21" EXPRESSION="min($0) over($1)"/>
+    <!--MovingSum-->
+    <FUNCTION_DEF ID="22" EXPRESSION="sum($0) over($1)"/>
+    <!--RunningStdevP-->
+    <FUNCTION_DEF ID="23" EXPRESSION="STDDEV_POP($0) OVER($1)"/>
+    <!--LeftStr-->
+    <FUNCTION_DEF ID="24" EXPRESSION="SUBSTRING($0, 1, $1)"/>
+    <!--Length-->
+    <FUNCTION_DEF ID="25" EXPRESSION="CHAR_LENGTH($0)"/>
+    <!--Lower-->
+    <FUNCTION_DEF ID="26" EXPRESSION="LOWER($0)"/>
+    <!--SubStr-->
+    <FUNCTION_DEF ID="27" EXPRESSION="SUBSTRING($0, $1, $2)"/>
+    <!--StrTitleCap-->
+    <FUNCTION_DEF ID="28" EXPRESSION="INITCAP($0)"/>
+    <!--Trim-->
+    <FUNCTION_DEF ID="29" EXPRESSION="TRIM($0)"/>
+    <!--Upper-->
+    <FUNCTION_DEF ID="30" EXPRESSION="UPPER($0)"/>
+    <!--Abs-->
+    <FUNCTION_DEF ID="31" EXPRESSION="ABS($0)"/>
+    <!--Acos-->
+    <FUNCTION_DEF ID="32" EXPRESSION="ACOS($0)"/>
+    <!--Acosh-->
+    <FUNCTION_DEF ID="33" EXPRESSION="LN($0+SQRT($0-1)*SQRT($0+1))"/>
+    <!--Asin-->
+    <FUNCTION_DEF ID="34" EXPRESSION="ASIN($0)"/>
+    <!--Asinh-->
+    <FUNCTION_DEF ID="35" EXPRESSION="LN($0+SQRT(POWER($0,2)+1))"/>
+    <!--Atan-->
+    <FUNCTION_DEF ID="36" EXPRESSION="ATAN($0)"/>
+    <!--Atan2-->
+    <FUNCTION_DEF ID="37" EXPRESSION="ATAN2($1, $0)"/>
+    <!--Atanh-->
+    <FUNCTION_DEF ID="38" EXPRESSION="((LN(1+$0)-LN(1- $0))/2)"/>
+    <!--Ceiling-->
+    <FUNCTION_DEF ID="39" EXPRESSION="CEIL($0)"/>
+    <!--Cos-->
+    <FUNCTION_DEF ID="40" EXPRESSION="COS($0)"/>
+    <!--Cosh-->
+    <FUNCTION_DEF ID="41" EXPRESSION="(EXP($0)+EXP(-$0))/2"/>
+    <!--Degrees-->
+    <FUNCTION_DEF ID="42" EXPRESSION="DEGREES($0)"/>
+    <!--Exp-->
+    <FUNCTION_DEF ID="43" EXPRESSION="EXP($0)"/>
+    <!--Floor-->
+    <FUNCTION_DEF ID="44" EXPRESSION="FLOOR($0)"/>
+    <!--Int-->
+    <FUNCTION_DEF ID="45" EXPRESSION="FLOOR($0)"/>
+    <!--Int2-->
+    <FUNCTION_DEF ID="46" EXPRESSION="FLOOR($0)"/>
+    <!--Ln-->
+    <FUNCTION_DEF ID="47" EXPRESSION="LN($0)"/>
+    <!--Log-->
+    <FUNCTION_DEF ID="48" EXPRESSION="(LN($0)/LN($1))"/>
+    <!--Log10-->
+    <FUNCTION_DEF ID="49" EXPRESSION="LOG10($0)"/>
+    <!--Mod-->
+    <FUNCTION_DEF ID="50" EXPRESSION="($0-FLOOR(($0)/NULLIF($1, 0))*($1))"/>
+    <!--Power-->
+    <FUNCTION_DEF ID="51" EXPRESSION="POWER($0, $1)"/>
+    <!--Quotient-->
+    <FUNCTION_DEF ID="52" EXPRESSION="CAST(($0)/NULLIF($1, 0) AS INTEGER)"/>
+    <!--Radians-->
+    <FUNCTION_DEF ID="53" EXPRESSION="RADIANS($0)"/>
+    <!--Randbetween-->
+    <FUNCTION_DEF ID="54" EXPRESSION="(($1- $0)*RAND()+$0)"/>
+    <!--Round-->
+    <FUNCTION_DEF ID="55" EXPRESSION="ROUND($0, 0)"/>
+    <!--Sin-->
+    <FUNCTION_DEF ID="56" EXPRESSION="SIN($0)"/>
+    <!--Sinh-->
+    <FUNCTION_DEF ID="57" EXPRESSION="((EXP($0) - EXP($0*(-1)))/2)"/>
+    <!--Sqrt-->
+    <FUNCTION_DEF ID="58" EXPRESSION="SQRT($0)"/>
+    <!--Tan-->
+    <FUNCTION_DEF ID="59" EXPRESSION="TAN($0)"/>
+    <!--Tanh-->
+    <FUNCTION_DEF ID="60" EXPRESSION="(-1+(2/(1+EXP(-2*$0))))"/>
+    <!--Trunc-->
+    <FUNCTION_DEF ID="61" EXPRESSION="CAST($0 AS INTEGER)"/>
+    <!--InverseFisher-->
+    <FUNCTION_DEF ID="62" EXPRESSION="((EXP(2*$0)-1)/(EXP(2*$0)+1))"/>
+    <!--Median-->
+    <FUNCTION_DEF ID="63" EXPRESSION="MEDIAN($0)"/>
+    <!--Daysbetween-->
+    <FUNCTION_DEF ID="64" EXPRESSION="TIMESTAMPDIFF(day, $0, $1)"/>
+    <!--DateAdd-->
+    <FUNCTION_DEF ID="65" EXPRESSION="TIMESTAMPADD(day, $1, $0)"/>
+    <!--AddMonths-->
+    <FUNCTION_DEF ID="66" EXPRESSION="TIMESTAMPADD(month, $1, $0)"/>
+    <!--CurrentTime-->
+    <FUNCTION_DEF ID="67" EXPRESSION="CURRENT_TIME"/>
+    <!--DayofWeek-->
+    <FUNCTION_DEF ID="68" EXPRESSION="DAYOFWEEK($0)"/>
+    <!--Monthsbetween-->
+    <FUNCTION_DEF ID="69" EXPRESSION="TIMESTAMPDIFF(month, $0, $1)"/>
+    <!--Week-->
+    <FUNCTION_DEF ID="70" EXPRESSION="WEEK($0)"/>
+    <!--NulltoEmpty-->
+    <FUNCTION_DEF ID="71" EXPRESSION="COALESCE($0, '')"/>
+    <!--StrBeginsWith-->
+    <FUNCTION_DEF ID="72"
+                  EXPRESSION="case when SUBSTRING($0 from 1 for CHAR_LENGTH('$1') ) =$1 then 1 else 0 end"/>
+    <!--Concat-->
+    <FUNCTION_DEF ID="73" EXPRESSION="concat ($0 , $1)"/>
+    <!--StrEndsWith-->
+    <FUNCTION_DEF ID="74"
+                  EXPRESSION="case when SUBSTRING($0 from  (CHAR_LENGTH($0)-CHAR_LENGTH($1)+1) for CHAR_LENGTH($1) ) =$1 then 1 else 0 end"/>
+    <!--LTrim-->
+    <FUNCTION_DEF ID="76" EXPRESSION="TRIM( LEADING ' '  FROM $0)"/>
+    <!--Position-->
+    <FUNCTION_DEF ID="77" EXPRESSION="POSITION($0 IN $1)"/>
+    <!--StrReplace-->
+    <FUNCTION_DEF ID="78" EXPRESSION="REPLACE($0, $1, $2)"/>
+    <!--RightStr-->
+    <FUNCTION_DEF ID="79"
+                  EXPRESSION="SUBSTRING($0 FROM (char_length($0) -$1 +1) FOR $1)"/>
+    <!--RTrim-->
+    <FUNCTION_DEF ID="80" EXPRESSION="TRIM(TRAILING ' '  FROM $0)"/>
+    <!--Round2-->
+    <FUNCTION_DEF ID="81" EXPRESSION="ROUND($0, $1)"/>
+    <!--CORRELATION -->
+    <FUNCTION_DEF ID="82" EXPRESSION="CORR($0, $1)"/>
+
+    <FUNCTION_DEF ID="83" EXPRESSION="ONLY_DEFAULT($0)"/>
+
+    <TYPE_DEF ID="Any" EXPRESSION="ANY"/>
+
+    <TYPE_DEF ID="Integer" EXPRESSION="INTEGER"/>
+    <TYPE_DEF ID="Int" EXPRESSION="INT"/>
+    <TYPE_DEF ID="BigInt" EXPRESSION="BIGINT"/>
+    <TYPE_DEF ID="TinyInt" EXPRESSION="TINYINT"/>
+    <TYPE_DEF ID="SmallInt" EXPRESSION="SMALLINT"/>
+    <TYPE_DEF ID="Short" EXPRESSION="SHORT"/>
+    <TYPE_DEF ID="Long" EXPRESSION="LONG"/>
+
+    <TYPE_DEF ID="Numeric" EXPRESSION="NUMERIC($p, $s)"/>
+    <TYPE_DEF ID="Decimal" EXPRESSION="DECIMAL($p, $s)"/>
+    <TYPE_DEF ID="Real" EXPRESSION="REAL"/>
+    <TYPE_DEF ID="Double" EXPRESSION="DOUBLE"/>
+    <TYPE_DEF ID="Float" EXPRESSION="FLOAT"/>
+
+    <TYPE_DEF ID="Char" EXPRESSION="CHAR($p)"/>
+    <TYPE_DEF ID="VarChar" EXPRESSION="VARCHAR($p)"/>
+    <TYPE_DEF ID="String" EXPRESSION="STRING"/>
+
+    <TYPE_DEF ID="Binary" EXPRESSION="BINARY"/>
+    <TYPE_DEF ID="Byte" EXPRESSION="BYTE"/>
+    <TYPE_DEF ID="Boolean" EXPRESSION="BOOLEAN"/>
+
+    <TYPE_DEF ID="Date" EXPRESSION="DATE"/>
+    <TYPE_DEF ID="Time" EXPRESSION="TIME"/>
+    <TYPE_DEF ID="DateTime" EXPRESSION="DATETIME"/>
+    <TYPE_DEF ID="TimeStamp" EXPRESSION="TIMESTAMP"/>
+</DATASOURCE_DEF>
\ No newline at end of file
diff --git a/datasource-sdk/src/test/resources/datasource/testing.xml b/datasource-sdk/src/test/resources/datasource/testing.xml
new file mode 100644
index 0000000..854b50f
--- /dev/null
+++ b/datasource-sdk/src/test/resources/datasource/testing.xml
@@ -0,0 +1,122 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<DATASOURCE_DEF NAME="Testing" ID="testing" DIALECT="postgresql">
+    <PROPERTY NAME="sql.default-converted-enabled" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-offset" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-fetch-no-rows" VALUE="true"/>
+    <PROPERTY NAME="sql.allow-no-orderby-with-fetch" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-escape" VALUE="true"/>
+    <PROPERTY NAME="sql.keyword-default-uppercase" VALUE="false"/>
+    <PROPERTY NAME="schema.database.black-list-pattern" VALUE="publi.*, edw"/>
+	<PROPERTY NAME="sql.case-sensitive" VALUE="false"/>
+    <PROPERTY NAME="metadata.enable-cache" VALUE="false"/>
+
+    <FUNCTION_DEF ID="31" EXPRESSION="ABS($0)"/>
+    <FUNCTION_DEF ID="32" EXPRESSION="ACOS($0)"/>
+    <FUNCTION_DEF ID="33" EXPRESSION="LN($0+SQRT($0-1)*SQRT($0+1))"/>
+    <FUNCTION_DEF ID="34" EXPRESSION="ASIN($0)"/>
+    <FUNCTION_DEF ID="36" EXPRESSION="ATAN($0)"/>
+    <FUNCTION_DEF ID="35" EXPRESSION="LN($0+SQRT(POWER($0,2)+1))"/>
+    <FUNCTION_DEF ID="37" EXPRESSION="ATAN2($1, $0)"/>
+    <FUNCTION_DEF ID="38" EXPRESSION="((LN(1+$0)-LN(1- $0))/2)"/>
+    <FUNCTION_DEF ID="39" EXPRESSION="CEIL($0)"/>
+    <FUNCTION_DEF ID="40" EXPRESSION="COS($0)"/>
+    <FUNCTION_DEF ID="5" EXPRESSION="CURRENT_DATE"/>
+    <FUNCTION_DEF ID="6" EXPRESSION="CURRENT_TIMESTAMP"/>
+    <FUNCTION_DEF ID="67" EXPRESSION="TEST_CURR_TIME()"/>
+    <FUNCTION_DEF ID="8" EXPRESSION="EXTRACT(DAY FROM $0)"/>
+    <FUNCTION_DEF ID="68" EXPRESSION="(EXTRACT(DOW FROM $0) + 1)"/>
+    <FUNCTION_DEF ID="9" EXPRESSION="EXTRACT(DOY FROM $0)"/>
+    <FUNCTION_DEF ID="70" EXPRESSION="EXTRACT(WEEK FROM $0)"/>
+    <FUNCTION_DEF ID="42" EXPRESSION="DEGREES($0)"/>
+    <FUNCTION_DEF ID="43" EXPRESSION="EXP($0)"/>
+    <FUNCTION_DEF ID="44" EXPRESSION="FLOOR($0)"/>
+    <FUNCTION_DEF ID="2" EXPRESSION="EXP(AVG(LN($0)))"/>
+    <FUNCTION_DEF ID="24" EXPRESSION="SUBSTR($0, 1, CAST($1 AS INTEGER))"/>
+    <FUNCTION_DEF ID="25" EXPRESSION="LENGTH($0)"/>
+    <FUNCTION_DEF ID="47" EXPRESSION="LN($0)"/>
+    <FUNCTION_DEF ID="48" EXPRESSION="LOG($1, $0)"/>
+    <FUNCTION_DEF ID="49" EXPRESSION="LOG($0)"/>
+    <FUNCTION_DEF ID="26" EXPRESSION="LOWER($0)"/>
+    <FUNCTION_DEF ID="76" EXPRESSION="LTRIM($0)"/>
+    <FUNCTION_DEF ID="50" EXPRESSION="($0-TRUNC(($0)/NULLIF($1,0))*($1))"/>
+    <FUNCTION_DEF ID="10" EXPRESSION="EXTRACT(MONTH FROM $0)"/>
+    <FUNCTION_DEF ID="15" EXPRESSION="COALESCE($0, 0)"/>
+    <FUNCTION_DEF ID="77" EXPRESSION="POSITION($0 IN $1)"/>
+    <FUNCTION_DEF ID="51" EXPRESSION="POWER($0, $1)"/>
+    <FUNCTION_DEF ID="11" EXPRESSION="EXTRACT(QUARTER FROM $0)"/>
+    <FUNCTION_DEF ID="53" EXPRESSION="RADIANS($0)"/>
+    <FUNCTION_DEF ID="54" EXPRESSION="(($1- $0)*RANDOM()+$0)"/>
+    <FUNCTION_DEF ID="79"
+                  EXPRESSION="SUBSTR($0, (LENGTH($0) - CAST($1 AS INTEGER) + 1))"/>
+    <FUNCTION_DEF ID="55" EXPRESSION="ROUND($0)"/>
+    <FUNCTION_DEF ID="81" EXPRESSION="ROUND($0, $1)"/>
+    <FUNCTION_DEF ID="80" EXPRESSION="RTRIM($0)"/>
+    <FUNCTION_DEF ID="56" EXPRESSION="SIN($0)"/>
+    <FUNCTION_DEF ID="23" EXPRESSION="STDDEVP($0) OVER($1)"/>
+    <FUNCTION_DEF ID="58" EXPRESSION="SQRT($0)"/>
+    <FUNCTION_DEF ID="27"
+                  EXPRESSION="SUBSTRING($0 FROM CAST($1 AS INTEGER) FOR CAST($2 AS INTEGER))"/>
+    <FUNCTION_DEF ID="59" EXPRESSION="TAN($0)"/>
+    <FUNCTION_DEF ID="29" EXPRESSION="TRIM(BOTH ' ' FROM $0)"/>
+    <FUNCTION_DEF ID="61" EXPRESSION="TRUNC($0)"/>
+    <FUNCTION_DEF ID="12" EXPRESSION="EXTRACT(YEAR FROM $0)"/>
+    <FUNCTION_DEF ID="16" EXPRESSION="NULLIF($0, 0)"/>
+    <FUNCTION_DEF ID="30" EXPRESSION="UPPER($0)"/>
+    <FUNCTION_DEF ID="45" EXPRESSION="FLOOR($0)"/>
+    <FUNCTION_DEF ID="52" EXPRESSION="TRUNC($0/$1, 0)"/>
+    <FUNCTION_DEF ID="46" EXPRESSION="FLOOR($0)"/>
+    <FUNCTION_DEF ID="7" EXPRESSION="CAST($0 AS DATE)"/>
+    <FUNCTION_DEF ID="64" EXPRESSION="(CAST($1 AS DATE) - CAST($0 AS DATE))"/>
+    <FUNCTION_DEF ID="69"
+                  EXPRESSION="(12 * (EXTRACT(YEAR FROM $1) - EXTRACT(YEAR FROM $0)) + EXTRACT(MONTH FROM $1) - EXTRACT(MONTH FROM $0) - (CASE WHEN EXTRACT(DAY FROM $0) > EXTRACT (DAY FROM $1) THEN 1 ELSE 0 END))"/>
+    <FUNCTION_DEF ID="82" EXPRESSION="corr($0, $1)"/>
+
+    <TYPE_DEF ID="Any" EXPRESSION="ANY"/>
+
+    <TYPE_DEF ID="Integer" EXPRESSION="INTEGER"/>
+    <TYPE_DEF ID="Int" EXPRESSION="INTEGER"/>
+    <TYPE_DEF ID="BigInt" EXPRESSION="BIGINT"/>
+    <TYPE_DEF ID="TinyInt" EXPRESSION="TINYINT"/>
+    <TYPE_DEF ID="SmallInt" EXPRESSION="SMALLINT"/>
+    <TYPE_DEF ID="Short" EXPRESSION="SMALLINT"/>
+    <TYPE_DEF ID="Long" EXPRESSION="BIGINT"/>
+
+    <TYPE_DEF ID="Numeric" EXPRESSION="NUMERIC($p, $s)"/>
+    <TYPE_DEF ID="Decimal" EXPRESSION="DECIMAL($p, $s)"/>
+    <TYPE_DEF ID="Real" EXPRESSION="REAL"/>
+    <TYPE_DEF ID="Double" EXPRESSION="DOUBLE PRECISION"/>
+    <TYPE_DEF ID="Float" EXPRESSION="REAL"/>
+
+    <TYPE_DEF ID="Char" EXPRESSION="CHAR($p)"/>
+    <TYPE_DEF ID="VarChar" EXPRESSION="VARCHAR($p)"/>
+    <TYPE_DEF ID="String" EXPRESSION="VARCHAR"/>
+
+    <TYPE_DEF ID="Binary" EXPRESSION="BIT"/>
+    <TYPE_DEF ID="Byte" EXPRESSION="BIT(8)"/>
+    <TYPE_DEF ID="Boolean" EXPRESSION="BOOLEAN"/>
+
+    <TYPE_DEF ID="Date" EXPRESSION="DATE"/>
+    <TYPE_DEF ID="Time" EXPRESSION="TIME"/>
+    <TYPE_DEF ID="DateTime" EXPRESSION="DATETIME"/>
+    <TYPE_DEF ID="TimeStamp" EXPRESSION="TIMESTAMP"/>
+
+    <TYPE_MAPPING SOURCE_TYPE="DOUBLE PRECISION" TARGET_TYPE="DOUBLE"/>
+    <TYPE_MAPPING SOURCE_TYPE="CHARACTER VARYING" TARGET_TYPE="VARCHAR"/>
+</DATASOURCE_DEF>
diff --git a/examples/test_case_data/localmeta/data/DEFAULT.TEST_ACCOUNT.csv b/examples/test_case_data/localmeta/data/DEFAULT.TEST_ACCOUNT.csv
new file mode 100644
index 0000000..7e182db
--- /dev/null
+++ b/examples/test_case_data/localmeta/data/DEFAULT.TEST_ACCOUNT.csv
@@ -0,0 +1,2000 @@
+10000000,3,2,GB,ACCO603
+10000001,0,1,GB,ACCO204
+10000002,4,4,FR,ACCO567
+10000003,1,2,FR,ACCO149
+10000004,4,0,GE,ACCO376
+10000005,0,2,RU,ACCO755
+10000006,0,1,GB,ACCO873
+10000007,0,1,IT,ACCO288
+10000008,2,2,FR,ACCO878
+10000009,2,2,GE,ACCO226
+10000010,1,4,IT,ACCO877
+10000011,2,3,FR,ACCO931
+10000012,3,2,FR,ACCO253
+10000013,4,3,JP,ACCO835
+10000014,1,1,GE,ACCO137
+10000015,0,0,RU,ACCO586
+10000016,1,2,IT,ACCO41
+10000017,2,3,JP,ACCO928
+10000018,0,2,RU,ACCO885
+10000019,0,1,GB,ACCO215
+10000020,0,4,FR,ACCO62
+10000021,2,4,GE,ACCO252
+10000022,3,1,CN,ACCO475
+10000023,2,4,FR,ACCO581
+10000024,3,1,FR,ACCO659
+10000025,0,3,FR,ACCO190
+10000026,3,0,FR,ACCO749
+10000027,4,3,IT,ACCO478
+10000028,3,1,IT,ACCO310
+10000029,4,4,CN,ACCO887
+10000030,1,3,JP,ACCO957
+10000031,2,1,GE,ACCO272
+10000032,1,4,CN,ACCO460
+10000033,1,2,GE,ACCO421
+10000034,2,1,US,ACCO172
+10000035,1,1,GB,ACCO506
+10000036,1,4,CN,ACCO939
+10000037,3,1,GB,ACCO672
+10000038,4,3,IT,ACCO427
+10000039,3,1,GE,ACCO284
+10000040,4,1,GB,ACCO638
+10000041,2,1,US,ACCO897
+10000042,0,4,GB,ACCO495
+10000043,1,4,US,ACCO204
+10000044,2,0,IT,ACCO492
+10000045,4,3,CN,ACCO291
+10000046,2,3,IT,ACCO845
+10000047,4,0,US,ACCO613
+10000048,0,4,CN,ACCO93
+10000049,2,0,GB,ACCO177
+10000050,4,4,FR,ACCO130
+10000051,0,2,GE,ACCO386
+10000052,3,3,JP,ACCO10
+10000053,4,3,IT,ACCO463
+10000054,4,3,US,ACCO933
+10000055,3,2,CN,ACCO761
+10000056,2,2,IT,ACCO368
+10000057,4,4,GB,ACCO453
+10000058,1,4,RU,ACCO964
+10000059,3,4,CN,ACCO162
+10000060,1,3,JP,ACCO793
+10000061,2,0,CN,ACCO614
+10000062,4,1,GB,ACCO96
+10000063,0,1,IT,ACCO598
+10000064,2,1,FR,ACCO159
+10000065,1,1,IT,ACCO191
+10000066,2,4,IT,ACCO478
+10000067,1,4,IT,ACCO189
+10000068,2,1,RU,ACCO125
+10000069,2,1,CN,ACCO346
+10000070,3,1,GB,ACCO970
+10000071,2,4,CN,ACCO968
+10000072,4,0,GE,ACCO852
+10000073,4,4,GE,ACCO162
+10000074,0,4,CN,ACCO842
+10000075,3,2,GB,ACCO229
+10000076,0,0,JP,ACCO447
+10000077,2,1,GE,ACCO953
+10000078,1,0,GE,ACCO100
+10000079,3,2,CN,ACCO688
+10000080,0,4,GE,ACCO940
+10000081,3,1,GE,ACCO126
+10000082,0,2,GE,ACCO197
+10000083,0,1,RU,ACCO422
+10000084,4,2,CN,ACCO224
+10000085,2,4,FR,ACCO122
+10000086,1,0,IT,ACCO759
+10000087,2,4,IT,ACCO157
+10000088,4,0,FR,ACCO285
+10000089,4,1,IT,ACCO793
+10000090,4,1,RU,ACCO190
+10000091,2,2,GB,ACCO432
+10000092,1,4,GE,ACCO482
+10000093,1,4,GE,ACCO206
+10000094,1,1,IT,ACCO608
+10000095,4,4,US,ACCO63
+10000096,2,3,CN,ACCO976
+10000097,1,3,US,ACCO406
+10000098,0,4,GE,ACCO407
+10000099,1,3,RU,ACCO426
+10000100,3,1,IT,ACCO196
+10000101,3,0,GE,ACCO159
+10000102,1,1,IT,ACCO188
+10000103,1,0,JP,ACCO526
+10000104,3,3,FR,ACCO893
+10000105,3,3,JP,ACCO298
+10000106,1,0,RU,ACCO385
+10000107,4,3,US,ACCO168
+10000108,2,4,CN,ACCO892
+10000109,1,2,JP,ACCO235
+10000110,2,3,FR,ACCO2
+10000111,3,1,JP,ACCO519
+10000112,3,0,GE,ACCO683
+10000113,4,0,FR,ACCO953
+10000114,2,2,JP,ACCO401
+10000115,0,0,FR,ACCO718
+10000116,2,4,JP,ACCO556
+10000117,4,4,RU,ACCO121
+10000118,1,0,US,ACCO350
+10000119,0,4,GE,ACCO871
+10000120,4,1,IT,ACCO823
+10000121,2,2,GB,ACCO725
+10000122,3,3,RU,ACCO255
+10000123,3,0,CN,ACCO467
+10000124,1,1,US,ACCO271
+10000125,1,4,IT,ACCO122
+10000126,3,0,RU,ACCO202
+10000127,2,1,GE,ACCO317
+10000128,0,1,IT,ACCO689
+10000129,4,0,GE,ACCO703
+10000130,3,1,US,ACCO228
+10000131,3,4,FR,ACCO6
+10000132,0,4,JP,ACCO370
+10000133,2,1,CN,ACCO889
+10000134,3,0,FR,ACCO404
+10000135,1,2,GB,ACCO643
+10000136,2,4,RU,ACCO389
+10000137,2,1,CN,ACCO315
+10000138,0,3,IT,ACCO513
+10000139,4,1,JP,ACCO628
+10000140,1,2,JP,ACCO93
+10000141,3,1,IT,ACCO83
+10000142,4,1,FR,ACCO84
+10000143,3,3,RU,ACCO678
+10000144,2,3,GE,ACCO245
+10000145,1,0,RU,ACCO656
+10000146,2,2,FR,ACCO924
+10000147,2,0,IT,ACCO535
+10000148,3,2,IT,ACCO818
+10000149,2,3,GB,ACCO111
+10000150,1,0,US,ACCO92
+10000151,3,0,US,ACCO153
+10000152,0,3,CN,ACCO993
+10000153,3,3,GE,ACCO61
+10000154,3,1,JP,ACCO27
+10000155,0,1,US,ACCO688
+10000156,0,2,JP,ACCO522
+10000157,0,1,RU,ACCO719
+10000158,1,3,IT,ACCO712
+10000159,0,2,FR,ACCO349
+10000160,0,1,CN,ACCO105
+10000161,3,3,GE,ACCO117
+10000162,1,2,IT,ACCO264
+10000163,0,2,GE,ACCO789
+10000164,3,1,GE,ACCO933
+10000165,4,2,CN,ACCO221
+10000166,0,0,GB,ACCO414
+10000167,2,4,CN,ACCO676
+10000168,3,3,JP,ACCO94
+10000169,4,1,GB,ACCO291
+10000170,0,3,GE,ACCO973
+10000171,2,4,CN,ACCO987
+10000172,2,0,JP,ACCO720
+10000173,2,1,RU,ACCO822
+10000174,1,1,JP,ACCO701
+10000175,3,2,FR,ACCO416
+10000176,1,4,IT,ACCO574
+10000177,3,0,RU,ACCO398
+10000178,3,0,JP,ACCO791
+10000179,2,3,CN,ACCO869
+10000180,0,0,JP,ACCO269
+10000181,2,2,JP,ACCO602
+10000182,0,2,JP,ACCO31
+10000183,2,0,FR,ACCO273
+10000184,4,4,RU,ACCO823
+10000185,4,1,GE,ACCO622
+10000186,4,1,GE,ACCO181
+10000187,0,0,RU,ACCO466
+10000188,2,1,US,ACCO761
+10000189,4,1,GB,ACCO57
+10000190,3,4,US,ACCO552
+10000191,4,0,GB,ACCO948
+10000192,1,2,IT,ACCO729
+10000193,3,4,RU,ACCO476
+10000194,2,4,JP,ACCO432
+10000195,0,0,CN,ACCO98
+10000196,3,0,GB,ACCO271
+10000197,1,2,FR,ACCO423
+10000198,3,3,GE,ACCO726
+10000199,2,1,FR,ACCO899
+10000200,0,0,RU,ACCO798
+10000201,2,2,GB,ACCO846
+10000202,1,2,JP,ACCO474
+10000203,4,4,FR,ACCO73
+10000204,3,0,JP,ACCO127
+10000205,1,3,GE,ACCO88
+10000206,1,2,IT,ACCO352
+10000207,1,1,IT,ACCO827
+10000208,3,1,IT,ACCO563
+10000209,0,3,IT,ACCO104
+10000210,0,3,IT,ACCO841
+10000211,4,0,GB,ACCO763
+10000212,3,2,GB,ACCO659
+10000213,0,2,GE,ACCO788
+10000214,3,2,FR,ACCO609
+10000215,2,2,US,ACCO785
+10000216,2,1,GB,ACCO622
+10000217,2,3,RU,ACCO275
+10000218,2,0,IT,ACCO210
+10000219,4,0,RU,ACCO509
+10000220,3,0,IT,ACCO950
+10000221,2,0,FR,ACCO420
+10000222,1,4,IT,ACCO589
+10000223,3,4,GE,ACCO196
+10000224,3,2,RU,ACCO919
+10000225,4,1,GE,ACCO409
+10000226,1,3,JP,ACCO720
+10000227,0,4,CN,ACCO2
+10000228,0,4,RU,ACCO773
+10000229,3,3,RU,ACCO658
+10000230,2,3,IT,ACCO384
+10000231,1,0,GE,ACCO78
+10000232,4,4,GB,ACCO505
+10000233,3,4,GB,ACCO270
+10000234,1,4,US,ACCO452
+10000235,0,2,JP,ACCO755
+10000236,0,3,GE,ACCO671
+10000237,3,0,US,ACCO276
+10000238,0,3,US,ACCO683
+10000239,0,2,RU,ACCO370
+10000240,2,0,US,ACCO343
+10000241,3,1,US,ACCO168
+10000242,3,0,FR,ACCO588
+10000243,3,2,GB,ACCO237
+10000244,4,4,JP,ACCO439
+10000245,0,1,US,ACCO522
+10000246,3,2,GB,ACCO264
+10000247,1,2,JP,ACCO263
+10000248,3,3,IT,ACCO769
+10000249,4,2,FR,ACCO792
+10000250,4,3,IT,ACCO934
+10000251,4,1,US,ACCO359
+10000252,2,0,GB,ACCO302
+10000253,1,4,RU,ACCO499
+10000254,2,2,GE,ACCO731
+10000255,0,0,CN,ACCO547
+10000256,3,2,CN,ACCO495
+10000257,0,0,JP,ACCO567
+10000258,0,0,GE,ACCO971
+10000259,0,0,US,ACCO104
+10000260,0,2,IT,ACCO659
+10000261,0,2,JP,ACCO11
+10000262,2,2,CN,ACCO257
+10000263,1,0,US,ACCO696
+10000264,0,0,FR,ACCO58
+10000265,2,4,CN,ACCO681
+10000266,0,2,GB,ACCO534
+10000267,0,0,GB,ACCO757
+10000268,2,1,IT,ACCO940
+10000269,2,4,GE,ACCO144
+10000270,3,2,JP,ACCO298
+10000271,0,4,FR,ACCO521
+10000272,0,0,US,ACCO135
+10000273,3,4,FR,ACCO636
+10000274,3,4,CN,ACCO780
+10000275,2,1,US,ACCO712
+10000276,2,2,GE,ACCO12
+10000277,1,2,GE,ACCO183
+10000278,4,1,IT,ACCO575
+10000279,0,4,RU,ACCO541
+10000280,2,3,RU,ACCO453
+10000281,3,4,CN,ACCO753
+10000282,4,0,GE,ACCO900
+10000283,2,3,IT,ACCO793
+10000284,0,3,CN,ACCO733
+10000285,3,0,US,ACCO811
+10000286,0,2,FR,ACCO590
+10000287,4,0,FR,ACCO555
+10000288,0,0,GB,ACCO155
+10000289,2,1,IT,ACCO338
+10000290,3,0,FR,ACCO782
+10000291,0,4,RU,ACCO57
+10000292,3,1,FR,ACCO853
+10000293,0,3,FR,ACCO550
+10000294,2,2,CN,ACCO147
+10000295,0,1,RU,ACCO676
+10000296,1,0,CN,ACCO157
+10000297,1,3,IT,ACCO186
+10000298,1,0,FR,ACCO341
+10000299,3,4,FR,ACCO338
+10000300,1,0,JP,ACCO122
+10000301,2,2,GE,ACCO214
+10000302,4,1,JP,ACCO15
+10000303,4,4,US,ACCO420
+10000304,2,0,US,ACCO822
+10000305,4,1,FR,ACCO976
+10000306,0,2,JP,ACCO399
+10000307,4,2,IT,ACCO400
+10000308,1,3,RU,ACCO103
+10000309,3,1,GB,ACCO169
+10000310,2,1,GB,ACCO83
+10000311,2,4,FR,ACCO553
+10000312,2,3,FR,ACCO893
+10000313,3,3,FR,ACCO139
+10000314,2,3,US,ACCO105
+10000315,0,1,IT,ACCO890
+10000316,0,1,FR,ACCO255
+10000317,1,2,GE,ACCO16
+10000318,1,0,US,ACCO330
+10000319,4,0,GE,ACCO138
+10000320,0,3,IT,ACCO610
+10000321,0,2,RU,ACCO718
+10000322,4,1,US,ACCO757
+10000323,2,3,US,ACCO768
+10000324,0,3,GB,ACCO71
+10000325,3,0,JP,ACCO807
+10000326,1,3,FR,ACCO428
+10000327,0,2,CN,ACCO600
+10000328,1,1,CN,ACCO239
+10000329,4,3,FR,ACCO5
+10000330,3,3,GE,ACCO221
+10000331,0,4,IT,ACCO126
+10000332,2,0,FR,ACCO293
+10000333,0,1,FR,ACCO691
+10000334,3,4,GB,ACCO351
+10000335,1,2,JP,ACCO63
+10000336,4,1,IT,ACCO489
+10000337,2,1,CN,ACCO558
+10000338,3,2,GB,ACCO503
+10000339,3,4,GE,ACCO432
+10000340,4,0,JP,ACCO141
+10000341,3,2,CN,ACCO986
+10000342,0,3,FR,ACCO606
+10000343,1,4,IT,ACCO846
+10000344,0,2,RU,ACCO325
+10000345,4,1,FR,ACCO25
+10000346,1,1,US,ACCO488
+10000347,3,2,JP,ACCO564
+10000348,2,0,US,ACCO256
+10000349,1,2,FR,ACCO414
+10000350,3,1,RU,ACCO876
+10000351,4,2,GE,ACCO618
+10000352,4,2,GB,ACCO333
+10000353,2,1,FR,ACCO856
+10000354,3,2,RU,ACCO299
+10000355,3,2,JP,ACCO130
+10000356,1,0,GE,ACCO372
+10000357,3,2,IT,ACCO186
+10000358,4,1,GB,ACCO791
+10000359,0,4,FR,ACCO111
+10000360,1,1,IT,ACCO379
+10000361,3,0,GE,ACCO791
+10000362,0,0,FR,ACCO970
+10000363,2,4,CN,ACCO830
+10000364,1,3,IT,ACCO729
+10000365,4,4,US,ACCO939
+10000366,1,1,IT,ACCO975
+10000367,0,1,US,ACCO958
+10000368,2,2,JP,ACCO978
+10000369,2,3,FR,ACCO76
+10000370,0,2,GE,ACCO8
+10000371,0,3,IT,ACCO956
+10000372,0,1,CN,ACCO72
+10000373,2,0,FR,ACCO263
+10000374,0,2,GB,ACCO174
+10000375,3,4,GB,ACCO631
+10000376,4,1,GE,ACCO418
+10000377,1,4,FR,ACCO503
+10000378,0,2,US,ACCO807
+10000379,4,2,US,ACCO187
+10000380,4,3,GE,ACCO716
+10000381,2,0,GE,ACCO921
+10000382,0,3,US,ACCO839
+10000383,3,4,RU,ACCO225
+10000384,1,2,US,ACCO914
+10000385,1,3,IT,ACCO923
+10000386,3,2,GE,ACCO285
+10000387,4,4,CN,ACCO643
+10000388,3,4,CN,ACCO746
+10000389,4,2,US,ACCO546
+10000390,2,4,IT,ACCO224
+10000391,0,2,FR,ACCO580
+10000392,1,3,GB,ACCO429
+10000393,0,0,GE,ACCO603
+10000394,3,4,FR,ACCO895
+10000395,0,4,IT,ACCO622
+10000396,2,2,GB,ACCO250
+10000397,0,0,JP,ACCO649
+10000398,2,2,US,ACCO442
+10000399,0,0,GE,ACCO918
+10000400,1,4,US,ACCO712
+10000401,4,0,IT,ACCO437
+10000402,3,2,US,ACCO128
+10000403,1,0,GE,ACCO841
+10000404,4,1,CN,ACCO69
+10000405,1,3,US,ACCO828
+10000406,0,3,IT,ACCO213
+10000407,4,4,IT,ACCO522
+10000408,4,3,US,ACCO855
+10000409,2,3,JP,ACCO298
+10000410,3,3,US,ACCO816
+10000411,2,2,CN,ACCO620
+10000412,0,0,GE,ACCO422
+10000413,3,0,JP,ACCO884
+10000414,1,0,IT,ACCO47
+10000415,4,4,JP,ACCO265
+10000416,2,1,GB,ACCO677
+10000417,3,1,CN,ACCO955
+10000418,3,3,CN,ACCO623
+10000419,1,4,CN,ACCO669
+10000420,0,4,GE,ACCO339
+10000421,4,3,US,ACCO661
+10000422,1,2,GB,ACCO811
+10000423,0,0,IT,ACCO853
+10000424,1,1,CN,ACCO642
+10000425,4,2,IT,ACCO437
+10000426,0,3,FR,ACCO808
+10000427,1,2,GB,ACCO753
+10000428,4,3,US,ACCO884
+10000429,3,0,US,ACCO578
+10000430,3,0,JP,ACCO148
+10000431,4,0,RU,ACCO665
+10000432,0,1,CN,ACCO524
+10000433,4,3,RU,ACCO133
+10000434,3,0,GE,ACCO385
+10000435,2,0,GE,ACCO771
+10000436,0,3,GB,ACCO368
+10000437,1,0,GB,ACCO589
+10000438,2,1,JP,ACCO945
+10000439,1,4,GB,ACCO90
+10000440,0,2,GE,ACCO705
+10000441,3,2,RU,ACCO477
+10000442,0,4,US,ACCO55
+10000443,2,0,FR,ACCO386
+10000444,2,3,GE,ACCO252
+10000445,1,3,CN,ACCO252
+10000446,1,4,GE,ACCO312
+10000447,2,0,US,ACCO48
+10000448,0,3,GB,ACCO777
+10000449,1,4,FR,ACCO669
+10000450,3,0,GB,ACCO932
+10000451,3,4,GE,ACCO167
+10000452,0,1,FR,ACCO541
+10000453,2,3,GE,ACCO549
+10000454,0,3,IT,ACCO293
+10000455,1,2,IT,ACCO5
+10000456,2,0,RU,ACCO694
+10000457,3,3,IT,ACCO409
+10000458,4,4,IT,ACCO419
+10000459,4,1,IT,ACCO268
+10000460,1,2,RU,ACCO266
+10000461,1,0,US,ACCO490
+10000462,2,0,IT,ACCO433
+10000463,1,0,JP,ACCO692
+10000464,1,2,FR,ACCO172
+10000465,0,4,CN,ACCO425
+10000466,3,2,US,ACCO479
+10000467,0,0,CN,ACCO949
+10000468,0,2,US,ACCO717
+10000469,4,0,RU,ACCO837
+10000470,3,2,US,ACCO741
+10000471,3,4,CN,ACCO227
+10000472,1,2,CN,ACCO379
+10000473,0,1,RU,ACCO100
+10000474,2,3,FR,ACCO425
+10000475,0,4,US,ACCO26
+10000476,4,3,IT,ACCO616
+10000477,4,4,CN,ACCO637
+10000478,1,4,GE,ACCO982
+10000479,2,3,FR,ACCO889
+10000480,4,2,JP,ACCO578
+10000481,1,0,IT,ACCO835
+10000482,2,3,GB,ACCO409
+10000483,4,0,GB,ACCO763
+10000484,3,0,CN,ACCO2
+10000485,3,0,RU,ACCO982
+10000486,2,3,US,ACCO560
+10000487,2,3,GB,ACCO424
+10000488,3,1,JP,ACCO860
+10000489,4,2,GB,ACCO492
+10000490,1,3,JP,ACCO890
+10000491,0,0,JP,ACCO690
+10000492,2,0,IT,ACCO898
+10000493,1,2,CN,ACCO853
+10000494,2,4,CN,ACCO789
+10000495,0,1,RU,ACCO707
+10000496,1,3,GE,ACCO860
+10000497,4,0,US,ACCO772
+10000498,3,3,JP,ACCO656
+10000499,2,0,JP,ACCO180
+10000500,4,3,IT,ACCO296
+10000501,1,2,GE,ACCO761
+10000502,4,4,GB,ACCO445
+10000503,0,1,US,ACCO512
+10000504,1,3,RU,ACCO418
+10000505,4,4,CN,ACCO611
+10000506,3,2,GE,ACCO66
+10000507,3,1,GB,ACCO352
+10000508,3,2,RU,ACCO32
+10000509,4,4,JP,ACCO211
+10000510,1,4,IT,ACCO141
+10000511,3,4,RU,ACCO863
+10000512,0,2,CN,ACCO317
+10000513,3,3,JP,ACCO508
+10000514,4,2,IT,ACCO978
+10000515,0,1,FR,ACCO365
+10000516,1,4,JP,ACCO400
+10000517,3,4,GB,ACCO630
+10000518,1,0,GE,ACCO562
+10000519,3,2,JP,ACCO961
+10000520,0,1,CN,ACCO816
+10000521,3,1,JP,ACCO793
+10000522,2,4,IT,ACCO857
+10000523,3,4,GB,ACCO768
+10000524,3,1,US,ACCO654
+10000525,1,4,FR,ACCO687
+10000526,3,4,GB,ACCO404
+10000527,4,2,CN,ACCO498
+10000528,4,2,FR,ACCO967
+10000529,0,1,JP,ACCO82
+10000530,2,1,GE,ACCO342
+10000531,4,3,FR,ACCO811
+10000532,0,1,RU,ACCO428
+10000533,0,3,IT,ACCO861
+10000534,3,1,GE,ACCO790
+10000535,0,1,GE,ACCO143
+10000536,1,0,US,ACCO640
+10000537,1,3,GE,ACCO519
+10000538,3,0,JP,ACCO494
+10000539,4,2,JP,ACCO471
+10000540,0,1,GE,ACCO574
+10000541,4,3,GB,ACCO553
+10000542,1,0,RU,ACCO946
+10000543,2,0,RU,ACCO480
+10000544,4,0,US,ACCO637
+10000545,0,2,RU,ACCO225
+10000546,0,3,GB,ACCO458
+10000547,4,4,IT,ACCO938
+10000548,3,2,CN,ACCO657
+10000549,2,3,FR,ACCO847
+10000550,3,4,CN,ACCO438
+10000551,0,0,JP,ACCO758
+10000552,3,3,CN,ACCO294
+10000553,1,4,JP,ACCO965
+10000554,0,4,US,ACCO318
+10000555,2,2,JP,ACCO9
+10000556,3,0,IT,ACCO635
+10000557,4,0,GE,ACCO683
+10000558,3,4,FR,ACCO387
+10000559,0,4,FR,ACCO94
+10000560,2,4,GE,ACCO913
+10000561,4,4,FR,ACCO616
+10000562,1,2,GE,ACCO405
+10000563,4,1,JP,ACCO279
+10000564,2,3,US,ACCO7
+10000565,1,0,US,ACCO149
+10000566,2,4,FR,ACCO826
+10000567,3,4,GB,ACCO219
+10000568,3,0,GB,ACCO716
+10000569,2,0,US,ACCO411
+10000570,1,0,RU,ACCO168
+10000571,4,2,JP,ACCO715
+10000572,2,1,GE,ACCO87
+10000573,3,1,GB,ACCO853
+10000574,1,2,RU,ACCO847
+10000575,3,2,CN,ACCO79
+10000576,1,2,FR,ACCO598
+10000577,2,2,US,ACCO592
+10000578,4,3,IT,ACCO430
+10000579,3,3,FR,ACCO342
+10000580,0,4,RU,ACCO738
+10000581,1,0,GE,ACCO630
+10000582,3,1,GB,ACCO472
+10000583,4,4,GB,ACCO82
+10000584,0,1,FR,ACCO491
+10000585,2,3,RU,ACCO930
+10000586,3,1,IT,ACCO563
+10000587,4,2,JP,ACCO330
+10000588,2,4,IT,ACCO141
+10000589,1,2,US,ACCO958
+10000590,4,2,CN,ACCO269
+10000591,2,4,GB,ACCO817
+10000592,4,1,FR,ACCO871
+10000593,1,2,GE,ACCO353
+10000594,4,0,IT,ACCO330
+10000595,2,2,GB,ACCO867
+10000596,3,3,CN,ACCO228
+10000597,4,4,CN,ACCO436
+10000598,1,3,GB,ACCO327
+10000599,0,4,CN,ACCO536
+10000600,4,2,GB,ACCO615
+10000601,4,2,CN,ACCO131
+10000602,1,0,GB,ACCO429
+10000603,3,3,IT,ACCO577
+10000604,0,0,RU,ACCO464
+10000605,1,4,FR,ACCO425
+10000606,2,1,RU,ACCO362
+10000607,4,0,JP,ACCO872
+10000608,4,1,RU,ACCO485
+10000609,3,0,JP,ACCO724
+10000610,2,3,CN,ACCO521
+10000611,4,0,JP,ACCO932
+10000612,0,4,GB,ACCO15
+10000613,0,4,CN,ACCO511
+10000614,3,0,FR,ACCO164
+10000615,3,0,GB,ACCO545
+10000616,3,0,US,ACCO147
+10000617,2,1,US,ACCO150
+10000618,2,1,GE,ACCO396
+10000619,4,3,GB,ACCO678
+10000620,2,1,CN,ACCO112
+10000621,4,0,FR,ACCO540
+10000622,2,1,CN,ACCO318
+10000623,3,0,JP,ACCO808
+10000624,0,4,JP,ACCO260
+10000625,2,1,JP,ACCO721
+10000626,4,2,FR,ACCO65
+10000627,3,1,RU,ACCO900
+10000628,2,4,US,ACCO278
+10000629,0,3,IT,ACCO407
+10000630,1,3,US,ACCO327
+10000631,1,4,JP,ACCO738
+10000632,1,1,JP,ACCO783
+10000633,0,3,CN,ACCO364
+10000634,2,1,FR,ACCO216
+10000635,1,0,CN,ACCO125
+10000636,0,3,GB,ACCO323
+10000637,4,1,GE,ACCO458
+10000638,0,4,US,ACCO78
+10000639,4,3,IT,ACCO415
+10000640,2,4,CN,ACCO973
+10000641,4,3,IT,ACCO65
+10000642,2,0,IT,ACCO169
+10000643,3,0,US,ACCO97
+10000644,3,1,GB,ACCO796
+10000645,4,1,IT,ACCO502
+10000646,4,0,GE,ACCO879
+10000647,4,0,GB,ACCO983
+10000648,1,3,GE,ACCO80
+10000649,0,4,JP,ACCO556
+10000650,4,1,FR,ACCO694
+10000651,2,4,US,ACCO290
+10000652,0,2,FR,ACCO160
+10000653,3,3,GE,ACCO489
+10000654,3,2,GB,ACCO114
+10000655,0,0,JP,ACCO679
+10000656,2,1,US,ACCO852
+10000657,2,2,GB,ACCO972
+10000658,2,2,CN,ACCO326
+10000659,4,1,US,ACCO78
+10000660,3,3,RU,ACCO634
+10000661,4,4,GB,ACCO538
+10000662,0,0,FR,ACCO936
+10000663,0,1,RU,ACCO973
+10000664,0,2,GE,ACCO728
+10000665,0,1,GE,ACCO248
+10000666,1,1,GE,ACCO806
+10000667,3,0,JP,ACCO554
+10000668,1,3,CN,ACCO933
+10000669,3,4,GB,ACCO427
+10000670,4,1,IT,ACCO95
+10000671,0,0,GB,ACCO591
+10000672,1,3,CN,ACCO227
+10000673,0,3,GB,ACCO243
+10000674,3,2,GE,ACCO80
+10000675,0,3,JP,ACCO144
+10000676,0,4,GE,ACCO132
+10000677,0,3,IT,ACCO446
+10000678,4,4,CN,ACCO555
+10000679,4,2,GB,ACCO768
+10000680,1,1,GE,ACCO937
+10000681,1,4,GE,ACCO673
+10000682,2,0,IT,ACCO133
+10000683,0,2,CN,ACCO753
+10000684,1,3,JP,ACCO361
+10000685,3,0,US,ACCO233
+10000686,0,4,CN,ACCO413
+10000687,2,2,IT,ACCO339
+10000688,3,3,GE,ACCO84
+10000689,0,0,US,ACCO87
+10000690,1,0,IT,ACCO36
+10000691,0,2,GE,ACCO964
+10000692,0,0,RU,ACCO13
+10000693,3,3,FR,ACCO633
+10000694,0,4,JP,ACCO805
+10000695,0,2,JP,ACCO21
+10000696,0,2,JP,ACCO141
+10000697,3,4,GE,ACCO998
+10000698,3,1,US,ACCO331
+10000699,0,0,RU,ACCO869
+10000700,1,3,IT,ACCO249
+10000701,0,4,JP,ACCO106
+10000702,2,4,US,ACCO521
+10000703,3,0,IT,ACCO454
+10000704,4,1,CN,ACCO450
+10000705,1,3,CN,ACCO71
+10000706,2,1,CN,ACCO650
+10000707,0,0,GE,ACCO309
+10000708,1,2,IT,ACCO845
+10000709,2,0,GB,ACCO660
+10000710,2,4,RU,ACCO702
+10000711,0,3,JP,ACCO24
+10000712,3,3,GB,ACCO791
+10000713,2,1,GB,ACCO815
+10000714,2,2,RU,ACCO189
+10000715,2,2,FR,ACCO760
+10000716,1,4,US,ACCO287
+10000717,0,4,CN,ACCO407
+10000718,2,3,GB,ACCO163
+10000719,4,0,GB,ACCO6
+10000720,0,3,IT,ACCO256
+10000721,0,1,FR,ACCO269
+10000722,3,4,US,ACCO816
+10000723,4,4,JP,ACCO138
+10000724,4,1,IT,ACCO337
+10000725,0,2,GB,ACCO432
+10000726,4,1,IT,ACCO107
+10000727,1,1,GE,ACCO54
+10000728,1,2,FR,ACCO738
+10000729,4,4,FR,ACCO487
+10000730,3,1,JP,ACCO554
+10000731,2,3,JP,ACCO865
+10000732,0,4,GB,ACCO773
+10000733,3,1,IT,ACCO745
+10000734,2,3,CN,ACCO289
+10000735,4,1,IT,ACCO39
+10000736,2,3,GB,ACCO975
+10000737,0,4,JP,ACCO640
+10000738,4,2,IT,ACCO732
+10000739,4,0,GB,ACCO934
+10000740,4,3,CN,ACCO306
+10000741,1,3,US,ACCO740
+10000742,3,3,GB,ACCO507
+10000743,3,0,IT,ACCO275
+10000744,4,4,GE,ACCO264
+10000745,3,4,GB,ACCO660
+10000746,0,4,IT,ACCO433
+10000747,1,3,IT,ACCO723
+10000748,1,2,GB,ACCO854
+10000749,4,4,FR,ACCO616
+10000750,1,0,GE,ACCO497
+10000751,3,0,JP,ACCO230
+10000752,3,2,GE,ACCO178
+10000753,4,4,GB,ACCO618
+10000754,0,3,JP,ACCO958
+10000755,4,3,RU,ACCO741
+10000756,3,3,JP,ACCO899
+10000757,1,2,RU,ACCO666
+10000758,2,4,JP,ACCO60
+10000759,0,1,CN,ACCO36
+10000760,2,0,GB,ACCO516
+10000761,3,0,GE,ACCO257
+10000762,1,3,US,ACCO248
+10000763,2,3,JP,ACCO483
+10000764,2,2,US,ACCO820
+10000765,2,2,FR,ACCO109
+10000766,1,1,JP,ACCO729
+10000767,0,1,CN,ACCO334
+10000768,3,2,GB,ACCO269
+10000769,2,1,FR,ACCO322
+10000770,3,0,JP,ACCO170
+10000771,0,2,GB,ACCO516
+10000772,2,3,GE,ACCO14
+10000773,3,0,CN,ACCO898
+10000774,3,3,GE,ACCO6
+10000775,3,3,FR,ACCO165
+10000776,2,2,RU,ACCO552
+10000777,3,4,US,ACCO948
+10000778,4,1,IT,ACCO102
+10000779,0,2,GB,ACCO373
+10000780,4,0,CN,ACCO649
+10000781,1,1,RU,ACCO472
+10000782,4,3,JP,ACCO537
+10000783,4,2,JP,ACCO613
+10000784,1,1,CN,ACCO193
+10000785,2,3,CN,ACCO394
+10000786,0,2,RU,ACCO153
+10000787,4,2,FR,ACCO89
+10000788,1,4,RU,ACCO887
+10000789,0,1,IT,ACCO541
+10000790,1,3,RU,ACCO894
+10000791,1,4,FR,ACCO403
+10000792,4,4,IT,ACCO894
+10000793,3,3,FR,ACCO134
+10000794,2,1,RU,ACCO65
+10000795,4,3,CN,ACCO110
+10000796,1,2,GE,ACCO89
+10000797,3,4,GB,ACCO329
+10000798,3,3,CN,ACCO527
+10000799,0,3,RU,ACCO871
+10000800,2,0,US,ACCO352
+10000801,1,2,GE,ACCO866
+10000802,2,1,IT,ACCO632
+10000803,4,2,GB,ACCO14
+10000804,1,1,GB,ACCO119
+10000805,3,4,US,ACCO170
+10000806,2,2,IT,ACCO651
+10000807,2,0,GB,ACCO738
+10000808,4,0,JP,ACCO609
+10000809,0,3,FR,ACCO313
+10000810,0,3,JP,ACCO424
+10000811,1,0,GE,ACCO522
+10000812,1,2,FR,ACCO190
+10000813,3,3,GB,ACCO314
+10000814,4,3,GB,ACCO241
+10000815,2,3,GE,ACCO137
+10000816,2,0,FR,ACCO318
+10000817,4,2,IT,ACCO754
+10000818,3,2,US,ACCO950
+10000819,4,3,US,ACCO977
+10000820,4,2,IT,ACCO569
+10000821,0,2,IT,ACCO418
+10000822,3,3,GE,ACCO779
+10000823,2,1,CN,ACCO919
+10000824,3,4,GB,ACCO516
+10000825,0,1,IT,ACCO973
+10000826,1,1,JP,ACCO416
+10000827,1,3,GE,ACCO607
+10000828,3,2,FR,ACCO930
+10000829,0,0,GB,ACCO707
+10000830,3,4,RU,ACCO910
+10000831,1,3,FR,ACCO174
+10000832,3,4,GE,ACCO389
+10000833,2,4,US,ACCO579
+10000834,2,0,JP,ACCO449
+10000835,3,4,CN,ACCO478
+10000836,1,2,RU,ACCO23
+10000837,4,3,US,ACCO559
+10000838,4,1,RU,ACCO822
+10000839,0,1,FR,ACCO551
+10000840,4,1,RU,ACCO610
+10000841,0,0,GB,ACCO553
+10000842,0,3,RU,ACCO754
+10000843,4,1,FR,ACCO807
+10000844,0,2,IT,ACCO543
+10000845,3,4,US,ACCO28
+10000846,4,3,JP,ACCO628
+10000847,1,0,FR,ACCO484
+10000848,0,3,IT,ACCO791
+10000849,0,2,CN,ACCO597
+10000850,0,4,CN,ACCO424
+10000851,1,2,GB,ACCO649
+10000852,3,1,US,ACCO140
+10000853,2,1,IT,ACCO824
+10000854,0,0,IT,ACCO905
+10000855,2,3,CN,ACCO981
+10000856,2,1,CN,ACCO291
+10000857,0,4,FR,ACCO543
+10000858,1,3,RU,ACCO91
+10000859,4,2,RU,ACCO929
+10000860,0,3,GE,ACCO729
+10000861,0,2,CN,ACCO237
+10000862,4,2,GE,ACCO498
+10000863,0,2,RU,ACCO183
+10000864,0,2,FR,ACCO23
+10000865,3,0,IT,ACCO425
+10000866,2,3,FR,ACCO810
+10000867,4,1,GB,ACCO400
+10000868,3,4,GB,ACCO811
+10000869,4,1,RU,ACCO886
+10000870,2,1,JP,ACCO276
+10000871,2,3,CN,ACCO398
+10000872,2,2,FR,ACCO28
+10000873,3,4,IT,ACCO199
+10000874,2,3,CN,ACCO585
+10000875,0,4,US,ACCO704
+10000876,2,4,RU,ACCO346
+10000877,0,3,FR,ACCO16
+10000878,1,1,JP,ACCO62
+10000879,4,4,IT,ACCO612
+10000880,3,0,GE,ACCO551
+10000881,1,4,RU,ACCO311
+10000882,0,4,FR,ACCO764
+10000883,3,2,GE,ACCO326
+10000884,0,2,CN,ACCO950
+10000885,2,0,RU,ACCO58
+10000886,1,1,JP,ACCO339
+10000887,4,3,IT,ACCO335
+10000888,1,3,IT,ACCO31
+10000889,1,2,US,ACCO10
+10000890,4,2,GE,ACCO579
+10000891,1,4,US,ACCO825
+10000892,4,1,FR,ACCO244
+10000893,4,1,CN,ACCO196
+10000894,4,3,US,ACCO519
+10000895,0,0,GE,ACCO478
+10000896,0,3,JP,ACCO187
+10000897,1,2,CN,ACCO449
+10000898,2,1,US,ACCO366
+10000899,2,4,CN,ACCO529
+10000900,0,3,US,ACCO183
+10000901,4,0,RU,ACCO331
+10000902,0,3,FR,ACCO703
+10000903,0,3,RU,ACCO4
+10000904,4,0,GB,ACCO341
+10000905,1,2,JP,ACCO400
+10000906,0,0,GB,ACCO896
+10000907,4,1,JP,ACCO712
+10000908,0,0,US,ACCO665
+10000909,2,2,GE,ACCO923
+10000910,3,2,RU,ACCO795
+10000911,2,0,GB,ACCO491
+10000912,2,1,FR,ACCO467
+10000913,0,0,GE,ACCO333
+10000914,2,0,GE,ACCO886
+10000915,2,4,GB,ACCO764
+10000916,3,1,JP,ACCO482
+10000917,1,0,IT,ACCO419
+10000918,4,2,GE,ACCO270
+10000919,2,1,CN,ACCO546
+10000920,3,0,FR,ACCO794
+10000921,4,0,CN,ACCO617
+10000922,3,1,GB,ACCO847
+10000923,3,3,GE,ACCO890
+10000924,2,0,US,ACCO333
+10000925,0,3,CN,ACCO860
+10000926,1,2,FR,ACCO33
+10000927,0,0,GE,ACCO831
+10000928,1,0,FR,ACCO372
+10000929,3,0,IT,ACCO517
+10000930,4,4,FR,ACCO786
+10000931,3,0,FR,ACCO148
+10000932,4,4,GE,ACCO967
+10000933,4,0,US,ACCO498
+10000934,0,0,JP,ACCO285
+10000935,4,4,GB,ACCO253
+10000936,3,4,IT,ACCO129
+10000937,1,3,FR,ACCO350
+10000938,2,0,US,ACCO493
+10000939,3,3,US,ACCO220
+10000940,0,3,GB,ACCO185
+10000941,4,1,IT,ACCO441
+10000942,0,2,FR,ACCO152
+10000943,4,1,IT,ACCO575
+10000944,3,1,FR,ACCO694
+10000945,4,2,US,ACCO882
+10000946,2,2,FR,ACCO498
+10000947,1,1,GB,ACCO6
+10000948,0,4,US,ACCO491
+10000949,2,0,RU,ACCO104
+10000950,2,0,CN,ACCO628
+10000951,1,4,US,ACCO394
+10000952,3,2,IT,ACCO75
+10000953,1,0,GE,ACCO376
+10000954,2,1,CN,ACCO105
+10000955,0,3,FR,ACCO881
+10000956,0,3,CN,ACCO761
+10000957,2,3,GB,ACCO633
+10000958,4,1,JP,ACCO285
+10000959,4,3,US,ACCO559
+10000960,2,4,FR,ACCO470
+10000961,1,2,RU,ACCO987
+10000962,0,0,RU,ACCO722
+10000963,4,1,US,ACCO422
+10000964,1,0,JP,ACCO255
+10000965,1,2,GB,ACCO246
+10000966,1,0,FR,ACCO777
+10000967,3,4,CN,ACCO918
+10000968,0,0,GE,ACCO27
+10000969,4,3,CN,ACCO679
+10000970,4,4,JP,ACCO977
+10000971,0,0,JP,ACCO295
+10000972,2,0,JP,ACCO958
+10000973,3,1,GB,ACCO581
+10000974,3,4,GB,ACCO919
+10000975,0,4,US,ACCO195
+10000976,1,4,IT,ACCO349
+10000977,2,4,US,ACCO418
+10000978,0,1,FR,ACCO307
+10000979,4,0,CN,ACCO1
+10000980,1,1,FR,ACCO847
+10000981,2,4,FR,ACCO949
+10000982,4,1,CN,ACCO498
+10000983,4,2,GE,ACCO444
+10000984,1,0,GB,ACCO331
+10000985,0,0,FR,ACCO788
+10000986,3,2,GB,ACCO29
+10000987,3,4,FR,ACCO34
+10000988,1,2,RU,ACCO700
+10000989,3,3,IT,ACCO902
+10000990,1,4,US,ACCO950
+10000991,4,0,FR,ACCO200
+10000992,3,0,RU,ACCO94
+10000993,3,4,RU,ACCO447
+10000994,4,2,IT,ACCO18
+10000995,4,3,GE,ACCO371
+10000996,3,0,IT,ACCO947
+10000997,0,1,JP,ACCO749
+10000998,2,2,FR,ACCO407
+10000999,3,3,FR,ACCO225
+10001000,1,0,GB,ACCO423
+10001001,3,4,GE,ACCO735
+10001002,3,0,RU,ACCO419
+10001003,4,4,GE,ACCO230
+10001004,3,2,US,ACCO644
+10001005,4,1,GB,ACCO741
+10001006,1,3,GB,ACCO606
+10001007,0,4,GB,ACCO626
+10001008,1,1,JP,ACCO739
+10001009,4,4,CN,ACCO906
+10001010,0,3,GB,ACCO918
+10001011,2,3,RU,ACCO56
+10001012,3,4,CN,ACCO984
+10001013,4,1,CN,ACCO198
+10001014,3,4,CN,ACCO317
+10001015,2,4,JP,ACCO658
+10001016,1,4,CN,ACCO720
+10001017,4,1,US,ACCO376
+10001018,3,4,RU,ACCO633
+10001019,1,4,CN,ACCO456
+10001020,1,3,GE,ACCO114
+10001021,0,1,US,ACCO841
+10001022,2,3,IT,ACCO271
+10001023,1,0,IT,ACCO703
+10001024,3,3,GE,ACCO111
+10001025,4,0,FR,ACCO971
+10001026,2,2,CN,ACCO149
+10001027,2,3,CN,ACCO502
+10001028,3,0,FR,ACCO975
+10001029,0,2,RU,ACCO889
+10001030,2,3,GE,ACCO67
+10001031,2,2,IT,ACCO331
+10001032,3,2,RU,ACCO721
+10001033,3,2,GE,ACCO176
+10001034,3,0,JP,ACCO541
+10001035,3,0,US,ACCO236
+10001036,1,3,RU,ACCO615
+10001037,4,1,RU,ACCO395
+10001038,2,0,IT,ACCO568
+10001039,3,4,GE,ACCO442
+10001040,1,4,CN,ACCO20
+10001041,4,1,GB,ACCO796
+10001042,3,3,JP,ACCO222
+10001043,2,2,FR,ACCO976
+10001044,2,0,GB,ACCO11
+10001045,3,3,FR,ACCO582
+10001046,1,0,GE,ACCO392
+10001047,3,4,JP,ACCO241
+10001048,3,4,GE,ACCO229
+10001049,0,4,CN,ACCO328
+10001050,4,4,FR,ACCO335
+10001051,4,1,US,ACCO879
+10001052,4,0,GB,ACCO847
+10001053,4,4,GE,ACCO620
+10001054,2,2,FR,ACCO94
+10001055,2,2,CN,ACCO528
+10001056,3,1,US,ACCO349
+10001057,4,2,RU,ACCO757
+10001058,4,1,JP,ACCO384
+10001059,4,1,FR,ACCO499
+10001060,2,1,CN,ACCO695
+10001061,3,2,RU,ACCO14
+10001062,3,2,GB,ACCO386
+10001063,1,3,RU,ACCO577
+10001064,1,0,CN,ACCO55
+10001065,2,4,GB,ACCO824
+10001066,0,3,CN,ACCO12
+10001067,2,4,GE,ACCO598
+10001068,2,4,GB,ACCO251
+10001069,1,0,GE,ACCO828
+10001070,1,4,GB,ACCO577
+10001071,0,4,GB,ACCO342
+10001072,3,4,IT,ACCO173
+10001073,3,2,FR,ACCO246
+10001074,2,3,US,ACCO296
+10001075,2,4,JP,ACCO812
+10001076,4,0,FR,ACCO76
+10001077,3,2,FR,ACCO610
+10001078,0,3,RU,ACCO215
+10001079,0,4,CN,ACCO822
+10001080,2,4,GE,ACCO711
+10001081,1,2,FR,ACCO360
+10001082,3,2,CN,ACCO931
+10001083,4,0,US,ACCO556
+10001084,3,1,CN,ACCO718
+10001085,4,1,GE,ACCO291
+10001086,1,3,JP,ACCO375
+10001087,3,1,JP,ACCO663
+10001088,0,1,RU,ACCO421
+10001089,3,4,RU,ACCO80
+10001090,1,3,GE,ACCO990
+10001091,2,4,RU,ACCO15
+10001092,1,1,FR,ACCO790
+10001093,3,3,CN,ACCO330
+10001094,2,0,FR,ACCO374
+10001095,4,4,GE,ACCO405
+10001096,1,3,FR,ACCO618
+10001097,1,4,FR,ACCO402
+10001098,4,1,FR,ACCO315
+10001099,0,4,CN,ACCO47
+10001100,3,4,JP,ACCO43
+10001101,2,2,CN,ACCO731
+10001102,4,3,IT,ACCO965
+10001103,0,0,GB,ACCO642
+10001104,4,0,RU,ACCO177
+10001105,3,1,GE,ACCO684
+10001106,1,1,FR,ACCO512
+10001107,4,0,IT,ACCO225
+10001108,4,3,FR,ACCO87
+10001109,2,2,CN,ACCO518
+10001110,4,0,CN,ACCO262
+10001111,2,3,RU,ACCO395
+10001112,2,1,RU,ACCO745
+10001113,1,0,IT,ACCO93
+10001114,4,2,JP,ACCO411
+10001115,3,1,GE,ACCO91
+10001116,2,1,FR,ACCO901
+10001117,2,2,IT,ACCO84
+10001118,3,3,GB,ACCO236
+10001119,1,4,IT,ACCO209
+10001120,2,2,US,ACCO643
+10001121,0,2,US,ACCO465
+10001122,4,4,GE,ACCO404
+10001123,2,2,FR,ACCO830
+10001124,2,3,IT,ACCO458
+10001125,3,4,JP,ACCO103
+10001126,1,1,FR,ACCO493
+10001127,2,1,JP,ACCO252
+10001128,3,0,GB,ACCO512
+10001129,2,0,IT,ACCO242
+10001130,0,4,FR,ACCO311
+10001131,1,2,IT,ACCO172
+10001132,4,0,IT,ACCO541
+10001133,0,4,RU,ACCO246
+10001134,0,3,CN,ACCO633
+10001135,1,1,RU,ACCO113
+10001136,4,1,CN,ACCO325
+10001137,4,4,GB,ACCO384
+10001138,3,0,JP,ACCO673
+10001139,0,0,GB,ACCO290
+10001140,0,0,GE,ACCO104
+10001141,0,4,US,ACCO190
+10001142,0,4,FR,ACCO713
+10001143,4,4,IT,ACCO486
+10001144,1,4,GB,ACCO624
+10001145,1,0,RU,ACCO2
+10001146,2,1,FR,ACCO721
+10001147,2,1,CN,ACCO63
+10001148,1,1,RU,ACCO838
+10001149,0,0,JP,ACCO881
+10001150,0,4,JP,ACCO618
+10001151,4,0,CN,ACCO816
+10001152,2,0,IT,ACCO314
+10001153,4,2,JP,ACCO939
+10001154,4,4,IT,ACCO798
+10001155,2,4,GE,ACCO579
+10001156,0,4,FR,ACCO453
+10001157,0,4,IT,ACCO811
+10001158,0,2,RU,ACCO530
+10001159,0,3,IT,ACCO211
+10001160,4,2,CN,ACCO92
+10001161,2,1,US,ACCO941
+10001162,3,2,IT,ACCO732
+10001163,3,1,IT,ACCO696
+10001164,0,2,IT,ACCO508
+10001165,3,1,JP,ACCO39
+10001166,2,4,GB,ACCO799
+10001167,1,4,CN,ACCO185
+10001168,3,0,GB,ACCO436
+10001169,4,0,RU,ACCO160
+10001170,1,4,FR,ACCO424
+10001171,3,2,FR,ACCO212
+10001172,4,1,JP,ACCO451
+10001173,0,1,GE,ACCO278
+10001174,3,0,FR,ACCO421
+10001175,4,0,US,ACCO657
+10001176,0,2,CN,ACCO519
+10001177,4,3,GB,ACCO68
+10001178,1,1,JP,ACCO145
+10001179,3,0,CN,ACCO421
+10001180,1,1,GE,ACCO95
+10001181,2,4,RU,ACCO247
+10001182,0,1,US,ACCO822
+10001183,0,4,GB,ACCO401
+10001184,4,3,JP,ACCO798
+10001185,2,1,GE,ACCO202
+10001186,0,3,CN,ACCO311
+10001187,1,4,GE,ACCO850
+10001188,2,2,US,ACCO12
+10001189,1,1,CN,ACCO744
+10001190,3,4,GE,ACCO65
+10001191,0,2,US,ACCO364
+10001192,1,2,RU,ACCO475
+10001193,1,2,RU,ACCO214
+10001194,0,3,JP,ACCO958
+10001195,4,0,GB,ACCO272
+10001196,0,4,JP,ACCO515
+10001197,2,1,RU,ACCO139
+10001198,3,2,US,ACCO325
+10001199,1,4,JP,ACCO677
+10001200,0,4,FR,ACCO802
+10001201,3,1,GE,ACCO463
+10001202,2,3,CN,ACCO457
+10001203,2,4,GB,ACCO594
+10001204,4,4,FR,ACCO892
+10001205,4,3,FR,ACCO105
+10001206,4,0,FR,ACCO556
+10001207,2,2,US,ACCO130
+10001208,4,0,CN,ACCO306
+10001209,1,3,JP,ACCO109
+10001210,2,1,IT,ACCO408
+10001211,2,3,JP,ACCO944
+10001212,1,3,US,ACCO562
+10001213,0,1,GE,ACCO450
+10001214,3,0,GE,ACCO771
+10001215,0,4,GE,ACCO417
+10001216,0,3,RU,ACCO259
+10001217,0,1,CN,ACCO122
+10001218,3,1,JP,ACCO980
+10001219,2,3,CN,ACCO849
+10001220,0,1,GB,ACCO988
+10001221,0,4,CN,ACCO498
+10001222,2,0,GE,ACCO694
+10001223,3,2,RU,ACCO733
+10001224,2,4,JP,ACCO776
+10001225,2,1,GB,ACCO57
+10001226,0,4,GE,ACCO896
+10001227,0,2,IT,ACCO664
+10001228,4,0,FR,ACCO511
+10001229,1,1,RU,ACCO86
+10001230,2,1,US,ACCO310
+10001231,1,0,FR,ACCO249
+10001232,3,2,CN,ACCO924
+10001233,4,4,JP,ACCO434
+10001234,1,3,GE,ACCO272
+10001235,1,2,US,ACCO617
+10001236,0,1,US,ACCO654
+10001237,1,0,GE,ACCO308
+10001238,0,3,RU,ACCO932
+10001239,0,3,GE,ACCO915
+10001240,0,0,GE,ACCO574
+10001241,0,2,CN,ACCO875
+10001242,4,1,GE,ACCO498
+10001243,1,4,US,ACCO788
+10001244,4,2,RU,ACCO76
+10001245,3,2,GB,ACCO622
+10001246,4,2,US,ACCO693
+10001247,4,0,US,ACCO42
+10001248,4,0,US,ACCO902
+10001249,4,3,JP,ACCO143
+10001250,2,2,CN,ACCO681
+10001251,3,0,US,ACCO425
+10001252,2,4,IT,ACCO559
+10001253,0,3,JP,ACCO391
+10001254,4,1,IT,ACCO133
+10001255,0,2,US,ACCO760
+10001256,2,3,GB,ACCO167
+10001257,0,3,JP,ACCO923
+10001258,4,3,RU,ACCO31
+10001259,2,1,IT,ACCO35
+10001260,4,0,GE,ACCO60
+10001261,0,1,JP,ACCO483
+10001262,0,4,IT,ACCO374
+10001263,2,3,GE,ACCO905
+10001264,4,2,IT,ACCO605
+10001265,0,1,US,ACCO419
+10001266,1,1,CN,ACCO808
+10001267,3,2,IT,ACCO717
+10001268,1,1,CN,ACCO759
+10001269,3,3,GE,ACCO611
+10001270,2,1,GE,ACCO872
+10001271,4,2,FR,ACCO298
+10001272,0,0,IT,ACCO454
+10001273,1,3,CN,ACCO945
+10001274,0,3,GB,ACCO979
+10001275,0,2,CN,ACCO383
+10001276,0,1,JP,ACCO154
+10001277,4,4,GB,ACCO918
+10001278,1,0,CN,ACCO816
+10001279,4,2,FR,ACCO882
+10001280,3,4,CN,ACCO515
+10001281,0,2,RU,ACCO430
+10001282,3,1,IT,ACCO769
+10001283,4,3,FR,ACCO569
+10001284,0,1,JP,ACCO810
+10001285,1,2,GB,ACCO345
+10001286,1,0,JP,ACCO731
+10001287,0,0,GE,ACCO539
+10001288,3,1,FR,ACCO245
+10001289,2,2,GB,ACCO919
+10001290,4,1,IT,ACCO926
+10001291,1,4,FR,ACCO981
+10001292,3,2,JP,ACCO911
+10001293,0,4,RU,ACCO296
+10001294,4,1,FR,ACCO161
+10001295,4,2,JP,ACCO337
+10001296,1,1,JP,ACCO210
+10001297,3,4,JP,ACCO552
+10001298,4,0,RU,ACCO93
+10001299,0,3,CN,ACCO817
+10001300,1,4,CN,ACCO769
+10001301,2,0,US,ACCO98
+10001302,2,1,IT,ACCO460
+10001303,2,3,RU,ACCO185
+10001304,3,3,GB,ACCO415
+10001305,3,3,CN,ACCO908
+10001306,1,1,JP,ACCO262
+10001307,2,4,CN,ACCO402
+10001308,0,0,RU,ACCO430
+10001309,4,2,CN,ACCO224
+10001310,3,3,FR,ACCO72
+10001311,4,4,IT,ACCO987
+10001312,0,4,IT,ACCO517
+10001313,2,3,RU,ACCO922
+10001314,2,4,JP,ACCO737
+10001315,0,2,GB,ACCO186
+10001316,3,0,RU,ACCO177
+10001317,1,4,GB,ACCO301
+10001318,0,1,CN,ACCO26
+10001319,1,4,RU,ACCO745
+10001320,3,2,US,ACCO566
+10001321,2,0,GB,ACCO249
+10001322,3,1,RU,ACCO138
+10001323,0,2,JP,ACCO667
+10001324,0,1,IT,ACCO938
+10001325,4,4,RU,ACCO231
+10001326,4,0,GB,ACCO171
+10001327,2,3,RU,ACCO677
+10001328,4,1,FR,ACCO798
+10001329,4,1,JP,ACCO93
+10001330,0,2,IT,ACCO821
+10001331,4,2,GE,ACCO121
+10001332,0,1,RU,ACCO682
+10001333,2,2,FR,ACCO860
+10001334,2,0,GB,ACCO764
+10001335,3,2,GB,ACCO102
+10001336,3,3,US,ACCO692
+10001337,2,0,IT,ACCO350
+10001338,0,3,CN,ACCO312
+10001339,0,0,JP,ACCO820
+10001340,0,2,RU,ACCO37
+10001341,1,3,US,ACCO38
+10001342,2,2,JP,ACCO337
+10001343,0,4,IT,ACCO627
+10001344,3,1,US,ACCO664
+10001345,3,0,GE,ACCO368
+10001346,0,4,GB,ACCO157
+10001347,1,3,US,ACCO715
+10001348,0,2,GB,ACCO815
+10001349,2,4,GB,ACCO263
+10001350,1,1,IT,ACCO144
+10001351,2,2,JP,ACCO605
+10001352,3,4,GB,ACCO916
+10001353,0,0,GE,ACCO677
+10001354,3,3,IT,ACCO751
+10001355,3,0,JP,ACCO353
+10001356,3,0,GE,ACCO826
+10001357,2,2,GE,ACCO645
+10001358,2,1,GB,ACCO225
+10001359,0,0,US,ACCO257
+10001360,3,4,FR,ACCO13
+10001361,1,1,JP,ACCO956
+10001362,0,0,CN,ACCO122
+10001363,4,3,IT,ACCO459
+10001364,3,1,CN,ACCO292
+10001365,0,2,JP,ACCO902
+10001366,0,2,RU,ACCO661
+10001367,3,2,JP,ACCO164
+10001368,1,0,US,ACCO33
+10001369,1,2,US,ACCO957
+10001370,0,2,US,ACCO69
+10001371,1,1,GB,ACCO15
+10001372,0,1,FR,ACCO107
+10001373,3,1,GB,ACCO429
+10001374,3,1,GB,ACCO752
+10001375,4,4,CN,ACCO900
+10001376,3,0,RU,ACCO793
+10001377,4,3,GB,ACCO322
+10001378,3,0,GB,ACCO456
+10001379,4,1,US,ACCO246
+10001380,2,4,FR,ACCO138
+10001381,4,2,RU,ACCO755
+10001382,2,2,RU,ACCO344
+10001383,0,4,GB,ACCO413
+10001384,0,2,JP,ACCO333
+10001385,4,0,US,ACCO656
+10001386,3,1,JP,ACCO672
+10001387,2,4,FR,ACCO730
+10001388,3,1,GB,ACCO490
+10001389,2,2,GB,ACCO829
+10001390,4,3,JP,ACCO437
+10001391,0,1,FR,ACCO201
+10001392,1,1,CN,ACCO796
+10001393,4,2,GE,ACCO235
+10001394,0,0,FR,ACCO384
+10001395,2,2,FR,ACCO480
+10001396,0,0,US,ACCO940
+10001397,0,1,RU,ACCO604
+10001398,2,0,CN,ACCO169
+10001399,4,2,GB,ACCO582
+10001400,1,1,GB,ACCO563
+10001401,3,3,JP,ACCO941
+10001402,2,2,GE,ACCO248
+10001403,0,4,JP,ACCO143
+10001404,1,1,GB,ACCO27
+10001405,4,0,CN,ACCO352
+10001406,0,4,CN,ACCO983
+10001407,0,0,GE,ACCO820
+10001408,2,2,CN,ACCO907
+10001409,3,0,GE,ACCO182
+10001410,4,0,US,ACCO223
+10001411,2,4,GB,ACCO15
+10001412,3,3,RU,ACCO325
+10001413,2,2,GE,ACCO620
+10001414,4,1,CN,ACCO518
+10001415,2,3,IT,ACCO404
+10001416,1,0,GB,ACCO445
+10001417,1,2,CN,ACCO813
+10001418,4,2,FR,ACCO626
+10001419,1,4,GB,ACCO242
+10001420,3,3,JP,ACCO928
+10001421,1,4,JP,ACCO637
+10001422,2,3,IT,ACCO757
+10001423,0,1,CN,ACCO249
+10001424,4,3,JP,ACCO367
+10001425,3,2,JP,ACCO957
+10001426,4,1,JP,ACCO565
+10001427,3,1,GE,ACCO710
+10001428,4,1,GB,ACCO254
+10001429,0,0,GE,ACCO498
+10001430,3,1,GE,ACCO854
+10001431,4,1,RU,ACCO450
+10001432,4,4,GE,ACCO533
+10001433,3,3,CN,ACCO816
+10001434,1,4,CN,ACCO622
+10001435,1,3,IT,ACCO921
+10001436,2,2,FR,ACCO827
+10001437,4,1,JP,ACCO92
+10001438,3,2,FR,ACCO204
+10001439,1,2,IT,ACCO166
+10001440,3,1,RU,ACCO858
+10001441,3,4,US,ACCO424
+10001442,2,2,GB,ACCO694
+10001443,1,2,US,ACCO467
+10001444,0,1,FR,ACCO891
+10001445,2,2,US,ACCO767
+10001446,4,3,RU,ACCO622
+10001447,4,0,IT,ACCO845
+10001448,4,1,IT,ACCO559
+10001449,3,4,JP,ACCO584
+10001450,1,2,CN,ACCO129
+10001451,4,4,RU,ACCO271
+10001452,4,4,CN,ACCO695
+10001453,3,3,GE,ACCO431
+10001454,3,0,US,ACCO788
+10001455,3,4,CN,ACCO597
+10001456,4,1,IT,ACCO160
+10001457,3,1,IT,ACCO854
+10001458,1,4,FR,ACCO539
+10001459,1,4,US,ACCO913
+10001460,4,4,US,ACCO102
+10001461,0,1,US,ACCO476
+10001462,0,2,GB,ACCO919
+10001463,3,1,GE,ACCO979
+10001464,3,4,GB,ACCO84
+10001465,2,3,US,ACCO164
+10001466,1,0,FR,ACCO618
+10001467,0,2,FR,ACCO312
+10001468,0,2,GB,ACCO254
+10001469,0,0,GB,ACCO774
+10001470,4,0,GE,ACCO266
+10001471,4,0,JP,ACCO341
+10001472,1,0,FR,ACCO891
+10001473,2,0,FR,ACCO930
+10001474,4,4,RU,ACCO8
+10001475,1,2,JP,ACCO677
+10001476,2,4,FR,ACCO346
+10001477,1,1,FR,ACCO184
+10001478,0,1,FR,ACCO925
+10001479,4,2,GE,ACCO310
+10001480,4,1,IT,ACCO263
+10001481,2,0,US,ACCO797
+10001482,1,2,US,ACCO104
+10001483,1,3,JP,ACCO2
+10001484,2,3,US,ACCO938
+10001485,0,3,GB,ACCO24
+10001486,3,3,RU,ACCO118
+10001487,3,3,IT,ACCO26
+10001488,2,2,IT,ACCO501
+10001489,1,2,JP,ACCO707
+10001490,1,0,JP,ACCO598
+10001491,3,2,US,ACCO604
+10001492,4,1,GE,ACCO600
+10001493,4,4,FR,ACCO325
+10001494,1,0,FR,ACCO128
+10001495,2,3,IT,ACCO981
+10001496,4,3,US,ACCO75
+10001497,3,1,IT,ACCO788
+10001498,0,0,GB,ACCO585
+10001499,3,2,FR,ACCO985
+10001500,1,1,GB,ACCO391
+10001501,3,0,FR,ACCO232
+10001502,0,1,GB,ACCO349
+10001503,4,1,FR,ACCO655
+10001504,3,4,JP,ACCO1
+10001505,4,4,GB,ACCO122
+10001506,2,2,JP,ACCO818
+10001507,4,2,GB,ACCO298
+10001508,4,2,FR,ACCO548
+10001509,0,0,IT,ACCO379
+10001510,0,3,RU,ACCO77
+10001511,1,3,FR,ACCO266
+10001512,0,4,US,ACCO402
+10001513,1,3,CN,ACCO625
+10001514,2,0,GE,ACCO540
+10001515,1,0,JP,ACCO114
+10001516,4,4,JP,ACCO695
+10001517,2,4,GB,ACCO588
+10001518,0,0,CN,ACCO623
+10001519,3,4,RU,ACCO746
+10001520,3,4,RU,ACCO762
+10001521,2,1,JP,ACCO879
+10001522,0,3,RU,ACCO100
+10001523,3,4,RU,ACCO364
+10001524,3,3,JP,ACCO384
+10001525,0,4,CN,ACCO514
+10001526,2,4,GB,ACCO125
+10001527,4,4,RU,ACCO27
+10001528,0,4,JP,ACCO263
+10001529,3,3,CN,ACCO212
+10001530,4,2,FR,ACCO303
+10001531,4,1,RU,ACCO728
+10001532,3,2,CN,ACCO452
+10001533,1,2,GB,ACCO718
+10001534,1,4,GE,ACCO738
+10001535,1,0,CN,ACCO711
+10001536,1,0,GB,ACCO121
+10001537,4,0,GE,ACCO987
+10001538,2,4,CN,ACCO960
+10001539,4,4,CN,ACCO326
+10001540,1,0,JP,ACCO46
+10001541,1,4,IT,ACCO91
+10001542,4,2,RU,ACCO300
+10001543,4,2,FR,ACCO221
+10001544,2,0,US,ACCO395
+10001545,1,2,GB,ACCO615
+10001546,3,0,RU,ACCO321
+10001547,4,1,GB,ACCO784
+10001548,2,0,JP,ACCO568
+10001549,3,4,RU,ACCO903
+10001550,0,3,IT,ACCO180
+10001551,1,2,US,ACCO426
+10001552,0,4,RU,ACCO130
+10001553,2,0,IT,ACCO374
+10001554,3,2,RU,ACCO30
+10001555,0,3,FR,ACCO516
+10001556,4,3,FR,ACCO474
+10001557,2,1,FR,ACCO7
+10001558,3,0,GB,ACCO354
+10001559,1,4,RU,ACCO259
+10001560,0,2,US,ACCO266
+10001561,2,0,RU,ACCO113
+10001562,0,4,GB,ACCO344
+10001563,0,0,GE,ACCO168
+10001564,0,0,IT,ACCO439
+10001565,3,0,RU,ACCO614
+10001566,1,4,RU,ACCO139
+10001567,3,1,GB,ACCO112
+10001568,2,1,JP,ACCO990
+10001569,0,2,GB,ACCO449
+10001570,3,4,CN,ACCO309
+10001571,0,3,RU,ACCO868
+10001572,1,0,RU,ACCO341
+10001573,4,3,RU,ACCO190
+10001574,4,0,FR,ACCO557
+10001575,2,3,CN,ACCO171
+10001576,1,1,FR,ACCO119
+10001577,0,3,JP,ACCO147
+10001578,4,0,IT,ACCO506
+10001579,1,1,FR,ACCO579
+10001580,3,3,FR,ACCO730
+10001581,1,2,GE,ACCO988
+10001582,2,3,GE,ACCO927
+10001583,2,4,GB,ACCO750
+10001584,1,2,FR,ACCO697
+10001585,3,2,RU,ACCO845
+10001586,3,4,FR,ACCO955
+10001587,4,1,RU,ACCO609
+10001588,2,0,CN,ACCO921
+10001589,2,3,US,ACCO976
+10001590,4,2,CN,ACCO716
+10001591,0,3,GB,ACCO352
+10001592,0,1,US,ACCO883
+10001593,4,4,JP,ACCO606
+10001594,2,4,US,ACCO327
+10001595,2,4,CN,ACCO269
+10001596,4,2,IT,ACCO709
+10001597,0,1,GE,ACCO210
+10001598,4,1,GE,ACCO486
+10001599,2,0,GE,ACCO632
+10001600,1,1,CN,ACCO205
+10001601,4,0,JP,ACCO641
+10001602,0,1,JP,ACCO926
+10001603,1,0,JP,ACCO904
+10001604,4,3,IT,ACCO195
+10001605,4,0,RU,ACCO22
+10001606,4,1,GB,ACCO324
+10001607,1,3,JP,ACCO728
+10001608,3,2,GB,ACCO465
+10001609,2,1,GE,ACCO786
+10001610,0,3,RU,ACCO548
+10001611,3,1,JP,ACCO956
+10001612,1,4,IT,ACCO250
+10001613,4,3,US,ACCO608
+10001614,0,1,CN,ACCO998
+10001615,3,0,JP,ACCO986
+10001616,4,3,IT,ACCO508
+10001617,3,0,IT,ACCO119
+10001618,2,1,US,ACCO765
+10001619,3,2,FR,ACCO390
+10001620,1,1,GE,ACCO475
+10001621,3,0,FR,ACCO784
+10001622,3,4,IT,ACCO949
+10001623,0,1,GE,ACCO486
+10001624,2,0,JP,ACCO171
+10001625,0,0,JP,ACCO303
+10001626,1,0,IT,ACCO545
+10001627,3,3,US,ACCO372
+10001628,3,3,JP,ACCO50
+10001629,0,3,JP,ACCO967
+10001630,4,2,FR,ACCO390
+10001631,0,4,IT,ACCO98
+10001632,1,0,JP,ACCO136
+10001633,3,1,RU,ACCO566
+10001634,1,3,RU,ACCO919
+10001635,4,0,RU,ACCO639
+10001636,3,1,CN,ACCO45
+10001637,1,1,RU,ACCO880
+10001638,1,0,IT,ACCO109
+10001639,0,3,FR,ACCO256
+10001640,3,1,US,ACCO181
+10001641,0,3,FR,ACCO831
+10001642,2,4,GE,ACCO27
+10001643,0,0,RU,ACCO650
+10001644,1,2,GE,ACCO146
+10001645,4,1,RU,ACCO919
+10001646,3,3,GE,ACCO924
+10001647,1,1,CN,ACCO259
+10001648,1,0,JP,ACCO630
+10001649,0,3,GE,ACCO976
+10001650,2,1,RU,ACCO457
+10001651,4,0,JP,ACCO808
+10001652,3,0,FR,ACCO602
+10001653,4,0,CN,ACCO277
+10001654,1,4,JP,ACCO51
+10001655,3,2,RU,ACCO233
+10001656,3,0,IT,ACCO144
+10001657,2,3,RU,ACCO985
+10001658,1,3,CN,ACCO793
+10001659,0,2,GE,ACCO305
+10001660,1,2,IT,ACCO938
+10001661,3,1,RU,ACCO785
+10001662,3,1,JP,ACCO375
+10001663,2,4,FR,ACCO690
+10001664,3,3,IT,ACCO550
+10001665,3,1,GB,ACCO20
+10001666,4,0,CN,ACCO595
+10001667,0,2,GB,ACCO493
+10001668,1,3,CN,ACCO751
+10001669,4,2,FR,ACCO935
+10001670,3,2,GE,ACCO917
+10001671,3,1,US,ACCO855
+10001672,4,2,JP,ACCO152
+10001673,2,2,CN,ACCO174
+10001674,4,4,GB,ACCO954
+10001675,3,0,FR,ACCO79
+10001676,2,3,RU,ACCO367
+10001677,3,4,IT,ACCO989
+10001678,4,4,FR,ACCO269
+10001679,0,2,IT,ACCO67
+10001680,2,2,GB,ACCO243
+10001681,2,4,RU,ACCO444
+10001682,2,4,GB,ACCO883
+10001683,1,2,IT,ACCO986
+10001684,2,0,IT,ACCO68
+10001685,4,1,CN,ACCO449
+10001686,0,3,FR,ACCO825
+10001687,3,0,GE,ACCO853
+10001688,2,2,CN,ACCO750
+10001689,3,1,IT,ACCO391
+10001690,0,2,CN,ACCO908
+10001691,2,3,US,ACCO151
+10001692,1,3,US,ACCO33
+10001693,3,1,IT,ACCO44
+10001694,2,4,RU,ACCO61
+10001695,1,3,IT,ACCO900
+10001696,1,0,GB,ACCO976
+10001697,2,2,GB,ACCO904
+10001698,2,1,RU,ACCO743
+10001699,4,0,IT,ACCO741
+10001700,2,4,FR,ACCO796
+10001701,0,0,US,ACCO513
+10001702,4,0,FR,ACCO702
+10001703,2,2,RU,ACCO721
+10001704,3,2,RU,ACCO365
+10001705,2,0,CN,ACCO171
+10001706,0,4,IT,ACCO782
+10001707,0,4,GE,ACCO463
+10001708,3,2,JP,ACCO549
+10001709,4,1,IT,ACCO645
+10001710,1,1,RU,ACCO349
+10001711,1,1,US,ACCO456
+10001712,1,4,FR,ACCO288
+10001713,4,0,RU,ACCO48
+10001714,4,4,JP,ACCO894
+10001715,2,3,IT,ACCO745
+10001716,3,3,GB,ACCO163
+10001717,4,4,GE,ACCO792
+10001718,1,3,CN,ACCO579
+10001719,0,3,RU,ACCO878
+10001720,3,2,FR,ACCO216
+10001721,0,1,RU,ACCO813
+10001722,4,1,JP,ACCO806
+10001723,0,4,US,ACCO91
+10001724,1,4,FR,ACCO555
+10001725,2,2,CN,ACCO771
+10001726,1,2,CN,ACCO68
+10001727,1,1,US,ACCO363
+10001728,3,3,CN,ACCO85
+10001729,4,1,CN,ACCO917
+10001730,0,4,IT,ACCO791
+10001731,3,1,JP,ACCO388
+10001732,4,0,GB,ACCO778
+10001733,4,4,GE,ACCO776
+10001734,0,0,GB,ACCO590
+10001735,1,2,IT,ACCO874
+10001736,3,3,GB,ACCO561
+10001737,3,2,FR,ACCO539
+10001738,4,2,GB,ACCO979
+10001739,2,3,CN,ACCO143
+10001740,1,4,GE,ACCO991
+10001741,2,2,US,ACCO829
+10001742,3,3,CN,ACCO768
+10001743,3,3,US,ACCO596
+10001744,2,4,GE,ACCO832
+10001745,1,1,US,ACCO463
+10001746,0,4,IT,ACCO743
+10001747,2,1,US,ACCO281
+10001748,0,0,US,ACCO308
+10001749,1,0,JP,ACCO656
+10001750,1,2,GB,ACCO29
+10001751,3,0,JP,ACCO88
+10001752,0,1,CN,ACCO874
+10001753,4,3,IT,ACCO87
+10001754,2,0,US,ACCO242
+10001755,1,4,US,ACCO728
+10001756,4,2,US,ACCO828
+10001757,0,4,FR,ACCO411
+10001758,4,2,FR,ACCO744
+10001759,0,4,IT,ACCO245
+10001760,1,2,GE,ACCO918
+10001761,0,2,FR,ACCO687
+10001762,1,0,GE,ACCO206
+10001763,0,0,FR,ACCO93
+10001764,2,2,RU,ACCO44
+10001765,1,2,JP,ACCO641
+10001766,4,4,FR,ACCO616
+10001767,0,2,GE,ACCO670
+10001768,4,3,GB,ACCO863
+10001769,1,2,RU,ACCO545
+10001770,1,0,IT,ACCO604
+10001771,3,0,GB,ACCO298
+10001772,3,3,GB,ACCO179
+10001773,2,0,CN,ACCO935
+10001774,1,3,GE,ACCO987
+10001775,1,0,JP,ACCO852
+10001776,3,1,US,ACCO816
+10001777,3,1,IT,ACCO997
+10001778,2,0,GB,ACCO409
+10001779,2,3,FR,ACCO93
+10001780,2,3,JP,ACCO491
+10001781,3,4,GB,ACCO163
+10001782,1,2,US,ACCO220
+10001783,1,1,GB,ACCO311
+10001784,1,2,IT,ACCO105
+10001785,4,0,JP,ACCO402
+10001786,2,1,RU,ACCO821
+10001787,0,1,RU,ACCO659
+10001788,2,1,JP,ACCO663
+10001789,4,0,JP,ACCO128
+10001790,3,3,FR,ACCO446
+10001791,1,2,CN,ACCO605
+10001792,2,0,RU,ACCO425
+10001793,2,4,CN,ACCO946
+10001794,4,0,IT,ACCO553
+10001795,0,4,GE,ACCO333
+10001796,4,1,GB,ACCO973
+10001797,2,0,CN,ACCO680
+10001798,3,2,CN,ACCO232
+10001799,0,3,CN,ACCO457
+10001800,1,0,US,ACCO203
+10001801,0,2,FR,ACCO409
+10001802,0,3,GE,ACCO918
+10001803,3,4,RU,ACCO189
+10001804,4,2,JP,ACCO348
+10001805,4,0,CN,ACCO888
+10001806,3,2,CN,ACCO872
+10001807,4,0,JP,ACCO21
+10001808,2,2,IT,ACCO995
+10001809,2,1,GB,ACCO958
+10001810,1,2,GE,ACCO834
+10001811,1,3,IT,ACCO185
+10001812,4,3,RU,ACCO836
+10001813,2,2,FR,ACCO39
+10001814,4,3,JP,ACCO354
+10001815,3,3,FR,ACCO151
+10001816,0,2,FR,ACCO944
+10001817,2,3,GE,ACCO969
+10001818,4,4,IT,ACCO555
+10001819,4,1,JP,ACCO175
+10001820,3,4,CN,ACCO490
+10001821,0,2,FR,ACCO230
+10001822,4,3,RU,ACCO233
+10001823,3,1,RU,ACCO799
+10001824,3,3,RU,ACCO745
+10001825,4,0,CN,ACCO603
+10001826,4,4,GB,ACCO363
+10001827,1,4,GE,ACCO855
+10001828,0,2,CN,ACCO651
+10001829,0,2,RU,ACCO24
+10001830,0,2,FR,ACCO98
+10001831,3,0,GB,ACCO887
+10001832,1,1,US,ACCO434
+10001833,3,3,CN,ACCO240
+10001834,4,2,IT,ACCO580
+10001835,1,3,IT,ACCO596
+10001836,4,1,CN,ACCO709
+10001837,2,3,GB,ACCO203
+10001838,2,3,JP,ACCO117
+10001839,0,3,RU,ACCO49
+10001840,0,3,RU,ACCO910
+10001841,0,2,FR,ACCO551
+10001842,3,0,US,ACCO892
+10001843,2,0,RU,ACCO938
+10001844,3,1,US,ACCO603
+10001845,1,2,RU,ACCO566
+10001846,2,2,GB,ACCO365
+10001847,3,1,IT,ACCO820
+10001848,3,2,IT,ACCO387
+10001849,3,3,FR,ACCO328
+10001850,4,4,GE,ACCO912
+10001851,4,1,RU,ACCO449
+10001852,2,1,US,ACCO264
+10001853,0,2,GB,ACCO792
+10001854,2,0,GB,ACCO693
+10001855,0,1,FR,ACCO31
+10001856,3,4,FR,ACCO11
+10001857,3,1,GE,ACCO676
+10001858,4,0,GB,ACCO553
+10001859,0,0,US,ACCO480
+10001860,1,2,GB,ACCO992
+10001861,1,4,FR,ACCO263
+10001862,0,4,JP,ACCO578
+10001863,4,1,FR,ACCO260
+10001864,4,3,FR,ACCO303
+10001865,0,3,CN,ACCO161
+10001866,2,4,US,ACCO828
+10001867,3,1,IT,ACCO554
+10001868,4,3,FR,ACCO76
+10001869,3,0,US,ACCO910
+10001870,3,3,RU,ACCO693
+10001871,0,3,GE,ACCO230
+10001872,4,0,US,ACCO980
+10001873,1,4,IT,ACCO475
+10001874,4,4,RU,ACCO699
+10001875,4,4,US,ACCO180
+10001876,3,0,GE,ACCO724
+10001877,2,0,GB,ACCO932
+10001878,4,1,IT,ACCO320
+10001879,3,1,IT,ACCO379
+10001880,1,3,CN,ACCO839
+10001881,2,4,JP,ACCO643
+10001882,0,3,CN,ACCO119
+10001883,0,1,JP,ACCO612
+10001884,1,0,JP,ACCO68
+10001885,4,1,GE,ACCO276
+10001886,4,2,IT,ACCO70
+10001887,0,1,GB,ACCO289
+10001888,3,1,FR,ACCO386
+10001889,4,2,RU,ACCO444
+10001890,1,3,US,ACCO655
+10001891,0,4,RU,ACCO435
+10001892,4,2,US,ACCO209
+10001893,3,0,JP,ACCO911
+10001894,4,4,GB,ACCO173
+10001895,4,4,GB,ACCO876
+10001896,4,4,GE,ACCO695
+10001897,0,2,IT,ACCO288
+10001898,4,1,GB,ACCO647
+10001899,3,1,JP,ACCO180
+10001900,2,2,RU,ACCO731
+10001901,0,1,CN,ACCO683
+10001902,2,3,JP,ACCO524
+10001903,1,0,GE,ACCO518
+10001904,3,1,GE,ACCO641
+10001905,3,1,CN,ACCO775
+10001906,2,4,US,ACCO180
+10001907,4,4,RU,ACCO466
+10001908,0,0,US,ACCO419
+10001909,1,3,FR,ACCO359
+10001910,2,2,CN,ACCO919
+10001911,1,1,CN,ACCO726
+10001912,2,0,US,ACCO256
+10001913,0,4,GB,ACCO687
+10001914,3,4,FR,ACCO124
+10001915,2,4,IT,ACCO613
+10001916,1,0,RU,ACCO963
+10001917,1,3,US,ACCO340
+10001918,0,2,GE,ACCO56
+10001919,4,3,JP,ACCO618
+10001920,2,3,JP,ACCO619
+10001921,3,2,US,ACCO132
+10001922,2,4,US,ACCO945
+10001923,1,1,GB,ACCO797
+10001924,3,1,CN,ACCO210
+10001925,0,4,RU,ACCO597
+10001926,1,0,GE,ACCO709
+10001927,1,1,IT,ACCO419
+10001928,2,1,GB,ACCO789
+10001929,3,1,RU,ACCO417
+10001930,2,2,GB,ACCO580
+10001931,1,0,CN,ACCO13
+10001932,0,2,CN,ACCO463
+10001933,1,3,GB,ACCO79
+10001934,0,1,CN,ACCO903
+10001935,4,2,GB,ACCO383
+10001936,1,4,FR,ACCO130
+10001937,0,3,IT,ACCO965
+10001938,3,0,GE,ACCO611
+10001939,2,4,RU,ACCO505
+10001940,1,0,IT,ACCO291
+10001941,2,0,IT,ACCO425
+10001942,0,2,CN,ACCO902
+10001943,0,1,IT,ACCO466
+10001944,0,4,IT,ACCO248
+10001945,3,2,RU,ACCO519
+10001946,3,2,US,ACCO349
+10001947,4,3,GB,ACCO263
+10001948,3,1,IT,ACCO649
+10001949,1,4,GB,ACCO597
+10001950,2,0,IT,ACCO351
+10001951,4,3,US,ACCO532
+10001952,1,4,IT,ACCO1
+10001953,2,0,IT,ACCO954
+10001954,3,4,US,ACCO386
+10001955,1,4,CN,ACCO761
+10001956,3,2,RU,ACCO23
+10001957,3,1,US,ACCO284
+10001958,4,3,CN,ACCO416
+10001959,4,3,RU,ACCO350
+10001960,4,2,FR,ACCO853
+10001961,2,0,CN,ACCO969
+10001962,0,2,JP,ACCO925
+10001963,2,1,CN,ACCO985
+10001964,3,0,GB,ACCO676
+10001965,0,3,JP,ACCO334
+10001966,2,0,US,ACCO416
+10001967,4,3,CN,ACCO428
+10001968,4,0,RU,ACCO658
+10001969,3,0,GE,ACCO411
+10001970,0,3,IT,ACCO372
+10001971,0,2,FR,ACCO308
+10001972,0,0,GE,ACCO914
+10001973,3,4,RU,ACCO71
+10001974,0,4,US,ACCO825
+10001975,1,1,FR,ACCO3
+10001976,3,1,GB,ACCO366
+10001977,1,2,JP,ACCO448
+10001978,3,4,CN,ACCO332
+10001979,3,0,GE,ACCO471
+10001980,1,1,GE,ACCO658
+10001981,1,1,IT,ACCO562
+10001982,4,1,FR,ACCO296
+10001983,0,0,CN,ACCO772
+10001984,0,0,US,ACCO616
+10001985,1,4,CN,ACCO745
+10001986,1,1,US,ACCO415
+10001987,4,3,JP,ACCO556
+10001988,0,4,US,ACCO524
+10001989,1,2,RU,ACCO618
+10001990,4,4,US,ACCO161
+10001991,1,2,JP,ACCO791
+10001992,3,3,GB,ACCO180
+10001993,2,4,JP,ACCO363
+10001994,0,4,US,ACCO647
+10001995,3,3,JP,ACCO966
+10001996,0,4,GB,ACCO590
+10001997,2,0,JP,ACCO555
+10001998,0,1,FR,ACCO157
+10001999,1,4,CN,ACCO544
diff --git a/examples/test_case_data/localmeta/data/DEFAULT.TEST_KYLIN_FACT.csv b/examples/test_case_data/localmeta/data/DEFAULT.TEST_KYLIN_FACT.csv
index 736f9e8..f10e737 100644
--- a/examples/test_case_data/localmeta/data/DEFAULT.TEST_KYLIN_FACT.csv
+++ b/examples/test_case_data/localmeta/data/DEFAULT.TEST_KYLIN_FACT.csv
@@ -1,402 +1,10000 @@
-10000000157,2013-03-31,Auction,48027,0,12,184.21,1,10000001,eef
-10000000158,2013-11-12,Others,164261,0,5,172.03,1,10000002,gji
-10000000161,2013-04-06,Auction,82494,15,14,66.6,1,10000003,jjc
-10000000137,2013-05-17,Auction,66767,15,12,92.98,1,10000004,add
-10000000147,2013-05-20,FP-GTC,152801,0,5,132.33,1,10000005,ife
-10000000155,2013-06-16,FP-GTC,43398,0,13,7.12,1,10000006,hce
-10000000170,2013-06-14,Auction,95173,0,14,204.28,1,10000007,bei
-10000000173,2013-03-22,Auction,158666,15,13,35.72,1,10000008,bjb
-10000000178,2013-03-10,Auction,12688,0,12,4.13,1,10000009,daf
-10000000163,2013-11-01,FP-GTC,103324,15,5,27.48,1,10000010,cji
-10000000166,2013-06-16,FP-GTC,108782,15,14,9.26,1,10000011,hch
-10000000167,2013-09-12,Auction,80287,0,12,3.18,1,10000012,edc
-10000000086,2013-09-28,Others,140746,100,13,3.18,1,10000013,jhi
-10000000110,2013-06-15,ABIN,87118,0,14,377.94,1,10000014,age
-10000000113,2013-03-14,Auction,25147,0,12,146.33,1,10000015,afc
-10000000069,2013-09-01,FP-GTC,170302,15,5,51.23,1,10000016,jib
-10000000079,2013-05-29,FP-non GTC,53064,0,13,72.65,1,10000017,bai
-10000000080,2013-05-31,Auction,132939,0,13,66.6,1,10000018,gii
-10000000130,2013-03-18,Auction,113593,15,12,9.26,1,10000019,fcj
-10000000268,2013-07-19,Auction,34273,100,14,583.44,1,10000020,ifc
-10000000132,2013-06-23,FP-GTC,106340,15,14,638.72,1,10000021,jfe
-10000000115,2013-05-20,FP-GTC,150265,15,14,4.54,1,10000022,ehd
-10000000117,2013-05-17,FP-GTC,24760,0,12,319.79,1,10000023,hbc
-10000000118,2013-03-11,Auction,37831,0,12,20.35,1,10000024,dbh
-10000000223,2013-01-30,FP-non GTC,1120,3,5,223.63,1,10000025,igh
-10000000224,2013-01-26,FP-GTC,43972,100,13,204.28,1,10000026,jbe
-10000000243,2013-03-22,Auction,166013,15,14,5.48,1,10000027,deb
-10000000217,2013-07-23,Auction,15568,15,14,27.48,1,10000028,hai
-10000000218,2013-07-27,FP-GTC,103178,15,5,21.72,1,10000029,cfj
-10000000221,2013-10-29,ABIN,2023,0,12,3.18,1,10000030,abc
-10000000256,2013-10-08,FP-GTC,94847,0,11,491.32,1,10000031,eha
-10000000257,2013-04-26,Auction,15868,0,14,448.8,1,10000032,fig
-10000000263,2013-01-01,Auction,32876,0,13,415.73,1,10000033,ghj
-10000000245,2013-01-15,Auction,62179,0,13,377.94,1,10000034,edj
-10000000248,2013-05-27,FP-GTC,33038,15,14,146.33,1,10000035,jii
-10000000254,2013-11-11,FP-GTC,156614,0,5,7.12,1,10000036,jbi
-10000000192,2013-03-08,Auction,106246,0,13,42.99,1,10000037,hce
-10000000196,2013-03-25,Auction,20865,0,13,12.85,1,10000038,jdc
-10000000203,2013-08-20,FP-GTC,15115,0,13,55.89,1,10000039,ggc
-10000000179,2013-05-17,FP-GTC,3838,0,14,73.26,1,10000040,bca
-10000000183,2013-06-05,Auction,759,0,11,112.56,1,10000041,hbh
-10000000185,2013-10-08,FP-non GTC,61323,0,11,3.49,1,10000042,hif
-10000000211,2013-08-14,Auction,121153,0,13,184.21,1,10000043,hhd
-10000000213,2013-08-14,Auction,88750,0,13,157.14,1,10000044,eif
-10000000214,2013-05-17,FP-GTC,161567,15,14,72.65,1,10000045,jjg
-10000000204,2013-08-09,FP-GTC,113802,15,14,51.23,1,10000046,igd
-10000000208,2013-06-30,FP-non GTC,15808,15,14,15.85,1,10000047,fii
-10000000209,2013-06-03,FP-GTC,174053,3,13,7.12,1,10000048,bdj
-10000000042,2013-12-31,Auction,2635,0,14,12.04,1,10000049,hfi
-10000000044,2013-12-25,Auction,1161,3,13,73.26,1,10000050,gaf
-10000000022,2013-03-28,FP-non GTC,64076,0,5,184.21,1,10000051,agf
-10000000023,2013-01-30,FP-GTC,33977,15,13,172.03,1,10000052,hic
-10000000047,2013-12-05,FP-GTC,31673,0,14,122.78,1,10000053,fae
-10000000056,2013-10-08,Auction,174106,3,14,92.98,1,10000054,ica
-10000000062,2013-12-27,Auction,26249,0,13,12.19,1,10000055,jfa
-10000000053,2013-12-16,FP-GTC,159184,0,5,15.65,1,10000056,hca
-10000000055,2013-10-17,FP-GTC,10058,3,11,101.79,1,10000057,ijc
-10000000020,2013-11-17,ABIN,48904,0,12,7.12,1,10000058,jfd
-10000000007,2013-09-18,FP-non GTC,145970,0,14,12.85,1,10000059,iab
-10000000008,2013-06-30,FP-GTC,963,0,13,12.19,1,10000060,abb
-10000000002,2013-10-12,FP-GTC,118687,3,13,92.98,1,10000061,gja
-10000000003,2013-08-20,FP-GTC,20886,0,14,42.99,1,10000062,iba
-10000000010,2013-08-29,Auction,148324,15,13,1.88,1,10000063,deh
-10000000016,2013-07-17,Auction,139255,15,14,21.14,1,10000064,afb
-10000000017,2013-07-23,FP-GTC,20213,0,5,21.14,1,10000065,ijb
-10000000012,2013-01-06,Auction,32996,15,13,132.33,1,10000066,ddi
-10000000013,2013-08-14,FP-GTC,99985,0,14,120.87,1,10000067,aej
-10000000067,2013-08-10,Auction,67703,3,14,120.87,1,10000068,jif
-10000000085,2013-09-28,FP-non GTC,65,0,11,9.26,1,10000069,fcb
-10000000141,2013-08-21,FP-non GTC,130,0,14,16.26,1,10000070,dib
-10000000078,2013-03-11,FP-GTC,164,0,14,157.14,1,10000071,ejc
-10000000109,2013-05-06,FP-GTC,216,0,11,1.88,1,10000072,jhb
-10000000096,2013-05-17,FP-non GTC,223,0,5,12.04,1,10000073,jgg
-10000000095,2013-01-10,FP-non GTC,223,0,14,189.23,1,10000074,bgb
-10000000098,2013-05-05,FP-non GTC,223,0,5,73.26,1,10000075,efh
-10000000097,2013-02-03,FP-non GTC,223,0,5,4.13,1,10000076,jja
-10000000099,2013-11-26,FP-non GTC,223,0,5,290.72,1,10000077,cbg
-10000000100,2013-08-30,FP-non GTC,223,0,5,265.56,1,10000078,gef
-10000000126,2013-04-26,FP-GTC,279,15,5,5.91,1,10000079,eji
-10000000252,2013-06-30,Auction,314,0,5,319.79,1,10000080,jhf
-10000000052,2013-06-30,Auction,314,211,5,246,1,10000081,hgg
-10000000253,2013-12-16,Auction,314,211,5,20.35,1,10000082,jjg
-10000000051,2013-12-15,Auction,314,0,5,36.7,1,10000083,ejf
-10000000190,2013-08-17,Auction,533,0,13,101.79,1,10000084,cbc
-10000000251,2013-12-15,ABIN,1349,0,5,47.71,1,10000085,aeh
-10000000050,2013-02-04,ABIN,1349,0,5,3.49,1,10000086,jdb
-10000000049,2013-01-11,ABIN,1349,0,13,46.44,1,10000087,eaj
-10000000250,2013-02-04,ABIN,1349,0,13,4.54,1,10000088,jjh
-10000000131,2013-05-17,ABIN,1357,0,14,3.18,1,10000089,cga
-10000000172,2013-11-12,FP-GTC,1504,0,14,86.58,1,10000090,jjj
-10000000142,2013-08-21,FP-GTC,4943,0,13,12.85,1,10000091,egj
-10000000195,2013-05-09,ABIN,6762,0,13,16.26,1,10000092,ehg
-10000000070,2013-09-19,Auction,9426,3,13,21.14,1,10000093,fff
-10000000165,2013-02-06,FP-non GTC,10866,0,14,20.6,1,10000094,bha
-10000000187,2013-02-02,Auction,11554,0,13,246,1,10000095,gfa
-10000000189,2013-08-23,FP-GTC,11848,0,14,109,1,10000096,jeb
-10000000139,2013-08-03,Auction,13836,0,13,39.41,1,10000097,baf
-10000000140,2013-05-17,Auction,13836,0,14,16.26,1,10000098,adh
-10000000102,2013-06-06,FP-GTC,13987,0,13,112.56,1,10000099,eii
-10000000076,2013-07-02,Auction,15687,0,14,184.21,1,10000100,ijj
-10000000082,2013-10-25,Auction,15687,0,11,27.48,1,10000001,jji
-10000000129,2013-04-20,FP-non GTC,16145,3,12,26.45,1,10000002,jfd
-10000000128,2013-03-12,FP-non GTC,16145,0,13,415.73,1,10000003,ibh
-10000000222,2013-03-28,ABIN,16509,0,5,56.36,1,10000004,gaa
-10000000021,2013-10-29,ABIN,16509,0,5,2.44,1,10000005,ece
-10000000134,2013-05-22,FP-GTC,20485,0,14,269.76,1,10000006,bjj
-10000000135,2013-01-25,FP-GTC,20485,101,12,109,1,10000007,acd
-10000000136,2013-06-12,FP-GTC,20485,101,12,101.79,1,10000008,ade
-10000000241,2013-12-26,Auction,23446,23,14,246,1,10000009,iai
-10000000041,2013-12-26,Auction,23446,23,14,189.23,1,10000010,jga
-10000000242,2013-12-31,Auction,23446,23,14,15.65,1,10000011,fed
-10000000040,2013-10-04,Auction,23446,23,14,28.23,1,10000012,gfh
-10000000194,2013-03-16,FP-GTC,24541,0,5,16.26,1,10000013,bjb
-10000000101,2013-05-21,FP-GTC,26262,0,5,122.78,1,10000014,jba
-10000000077,2013-01-28,FP-GTC,30059,3,14,172.03,1,10000015,fjb
-10000000057,2013-04-26,Auction,31387,3,14,42.99,1,10000016,bdg
-10000000258,2013-10-06,Auction,31387,3,14,207.5,1,10000017,jja
-10000000261,2013-11-06,FP-GTC,31519,0,14,5.91,1,10000018,ggd
-10000000058,2013-10-06,FP-GTC,31519,3,14,39.41,1,10000019,bdc
-10000000059,2013-12-28,FP-GTC,31519,0,14,16.26,1,10000020,cid
-10000000060,2013-11-06,FP-GTC,31519,0,14,16.26,1,10000021,jfg
-10000000260,2013-11-06,FP-GTC,31519,0,14,78.48,1,10000022,gha
-10000000259,2013-12-28,FP-GTC,31519,3,14,190.22,1,10000023,fdh
-10000000156,2013-06-11,FP-GTC,35570,100,12,2.44,1,10000024,fad
-10000000119,2013-01-10,Auction,36250,0,5,7.12,1,10000025,hjf
-10000000186,2013-09-17,FP-non GTC,38238,0,14,36.7,1,10000026,jdh
-10000000038,2013-08-14,FP-GTC,40059,3,14,35.72,1,10000027,bhh
-10000000239,2013-08-09,FP-GTC,40059,3,14,3.49,1,10000028,gjj
-10000000034,2013-12-02,FP-GTC,41940,0,13,223.63,1,10000029,cjf
-10000000235,2013-02-01,FP-GTC,41940,0,13,265.56,1,10000030,caj
-10000000127,2013-07-28,FP-non GTC,43479,0,13,62.02,1,10000031,fcd
-10000000103,2013-06-16,FP-GTC,44079,0,12,46.44,1,10000032,bhg
-10000000201,2013-08-23,Auction,45238,101,14,132.33,1,10000033,ddi
-10000000122,2013-06-15,Auction,45333,0,13,448.8,1,10000034,jce
-10000000123,2013-06-15,FP-non GTC,45333,0,14,207.5,1,10000035,daf
-10000000124,2013-06-01,FP-non GTC,45333,0,14,190.22,1,10000036,gfg
-10000000072,2013-08-10,FP-GTC,46575,0,14,16.71,1,10000037,cjj
-10000000043,2013-03-22,FP-non GTC,50508,0,13,4.13,1,10000038,agg
-10000000244,2013-12-25,FP-non GTC,50508,0,13,1.88,1,10000039,bad
-10000000121,2013-07-22,FP-GTC,50677,0,13,491.32,1,10000040,fhb
-10000000120,2013-04-13,FP-GTC,50677,0,5,2.44,1,10000041,cfc
-10000000168,2013-04-16,Auction,51582,0,14,56.36,1,10000042,eie
-10000000073,2013-08-21,FP-GTC,57013,0,13,15.85,1,10000043,cjc
-10000000075,2013-04-22,FP-non GTC,57013,0,14,2.44,1,10000044,hgc
-10000000074,2013-08-29,FP-GTC,57013,0,14,7.12,1,10000045,fdd
-10000000093,2013-05-16,Auction,57784,0,14,35.72,1,10000046,heg
-10000000265,2013-08-23,Auction,57990,3,11,9.26,1,10000047,cdf
-10000000266,2013-07-10,Auction,57990,3,14,3.18,1,10000048,adi
-10000000267,2013-08-10,Auction,57990,3,14,638.72,1,10000049,egh
-10000000065,2013-08-23,Auction,57990,3,14,141.7,1,10000050,hge
-10000000143,2013-04-18,ABIN,57990,0,13,12.19,1,10000051,egj
-10000000066,2013-07-10,Auction,57990,3,14,132.33,1,10000052,fea
-10000000144,2013-06-16,ABIN,57990,3,5,5.48,1,10000053,abf
-10000000064,2013-07-15,Auction,57990,3,11,1.88,1,10000054,ecc
-10000000061,2013-11-06,FP-GTC,60340,0,14,12.85,1,10000055,hda
-10000000262,2013-12-27,FP-GTC,60340,0,14,62.02,1,10000056,cgh
-10000000019,2013-07-29,FP-GTC,60606,3,12,15.85,1,10000057,gbf
-10000000220,2013-11-17,FP-GTC,60606,3,12,9.26,1,10000058,bae
-10000000018,2013-07-27,FP-GTC,60606,3,12,16.71,1,10000059,hag
-10000000219,2013-07-29,FP-GTC,60606,3,12,20.6,1,10000060,ici
-10000000145,2013-01-09,Auction,63861,3,5,1.88,1,10000061,bfa
-10000000200,2013-06-11,ABIN,63861,0,5,141.7,1,10000062,dea
-10000000199,2013-01-10,ABIN,63861,0,5,1.88,1,10000063,bce
-10000000237,2013-09-16,Others,63861,0,11,112.56,1,10000064,cfi
-10000000036,2013-01-14,Others,63861,0,11,94.45,1,10000065,ijh
-10000000125,2013-05-17,Auction,63861,0,14,78.48,1,10000066,gag
-10000000198,2013-06-05,ABIN,63861,0,13,5.48,1,10000067,bja
-10000000094,2013-05-24,Auction,63864,3,14,28.23,1,10000068,gca
-10000000104,2013-05-15,Others,63889,0,13,3.49,1,10000069,fcf
-10000000107,2013-03-25,FP-GTC,67698,2,11,15.65,1,10000070,fae
-10000000108,2013-03-09,FP-GTC,67698,0,11,5.48,1,10000071,cci
-10000000106,2013-12-05,FP-GTC,67698,0,11,246,1,10000072,efc
-10000000182,2013-04-18,FP-non GTC,73506,0,13,122.78,1,10000073,cig
-10000000169,2013-11-01,FP-GTC,75665,0,14,223.63,1,10000074,big
-10000000146,2013-05-03,ABIN,75708,3,5,141.7,1,10000075,bgi
-10000000151,2013-04-21,FP-non GTC,80053,0,11,21.14,1,10000076,bdg
-10000000149,2013-03-12,FP-non GTC,80053,0,11,55.89,1,10000077,ffh
-10000000150,2013-05-19,FP-non GTC,80053,0,11,51.23,1,10000078,chb
-10000000083,2013-11-23,Auction,80135,0,14,21.72,1,10000079,dhd
-10000000089,2013-10-19,Auction,95672,3,14,204.28,1,10000080,gid
-10000000152,2013-05-18,Others,95672,0,11,21.14,1,10000081,jij
-10000000035,2013-02-01,Others,100847,0,5,204.28,1,10000082,ddj
-10000000236,2013-01-14,Others,100847,0,5,122.78,1,10000083,hab
-10000000090,2013-08-05,ABIN,139973,3,14,94.45,1,10000084,fai
-10000000091,2013-05-19,ABIN,139973,0,11,86.58,1,10000085,bei
-10000000033,2013-12-01,Auction,150047,3,14,56.36,1,10000086,jhh
-10000000234,2013-12-02,Auction,150047,3,14,290.72,1,10000087,bdg
-10000000249,2013-01-11,FP-GTC,155226,0,13,60.37,1,10000088,heh
-10000000048,2013-05-27,FP-GTC,155226,0,13,112.56,1,10000089,hja
-10000000181,2013-09-01,FP-GTC,156356,0,13,265.56,1,10000090,egc
-10000000092,2013-04-11,FP-GTC,158798,0,11,35.72,1,10000091,dgb
-10000000191,2013-05-05,FP-non GTC,165888,0,13,92.98,1,10000092,idc
-10000000229,2013-11-21,Auction,170083,3,11,28.23,1,10000093,bgi
-10000000028,2013-10-07,Auction,170083,3,11,27.48,1,10000094,ihd
-10000000031,2013-07-12,Auction,175750,3,14,9.26,1,10000095,gci
-10000000032,2013-06-07,Auction,175750,3,14,3.18,1,10000096,fba
-10000000177,2013-05-22,FP-GTC,175750,0,14,12.04,1,10000097,adb
-10000000030,2013-11-28,Auction,175750,3,13,20.6,1,10000098,hbg
-10000000231,2013-07-12,Auction,175750,3,13,12.04,1,10000099,ige
-10000000232,2013-06-07,Auction,175750,3,14,4.13,1,10000100,jjj
-10000000233,2013-12-01,Auction,175750,3,14,73.26,1,10000201,ijb
-10000000002,2012-10-12,Auction,48027,0,12,184.21,1,10000001,ehb
-10000000003,2012-08-20,Others,164261,0,5,172.03,1,10000002,cai
-10000000007,2012-09-18,Auction,82494,15,14,66.6,1,10000003,bie
-10000000008,2012-06-30,Auction,66767,15,12,92.98,1,10000004,iba
-10000000010,2012-08-29,FP-GTC,152801,0,5,132.33,1,10000005,hjf
-10000000012,2012-01-06,FP-GTC,43398,0,13,7.12,1,10000006,dbg
-10000000013,2012-08-14,Auction,95173,0,14,204.28,1,10000007,fdb
-10000000016,2012-07-17,Auction,158666,15,13,35.72,1,10000008,icf
-10000000017,2012-07-23,Auction,12688,0,12,4.13,1,10000009,iag
-10000000018,2012-07-27,FP-GTC,103324,15,5,27.48,1,10000010,egj
-10000000019,2012-07-29,FP-GTC,108782,15,14,9.26,1,10000011,jda
-10000000020,2012-11-17,Auction,80287,0,12,3.18,1,10000012,cdc
-10000000021,2012-10-29,Others,140746,100,13,3.18,1,10000013,efa
-10000000022,2012-03-28,ABIN,87118,0,14,377.94,1,10000014,ibd
-10000000023,2012-01-30,Auction,25147,0,12,146.33,1,10000015,jbh
-10000000028,2012-10-07,FP-GTC,170302,15,5,51.23,1,10000016,bjj
-10000000030,2012-11-28,FP-non GTC,53064,0,13,72.65,1,10000017,djd
-10000000031,2012-07-12,Auction,132939,0,13,66.6,1,10000018,gae
-10000000032,2012-06-07,Auction,113593,15,12,9.26,1,10000019,adj
-10000000033,2012-12-01,Auction,34273,100,14,583.44,1,10000020,cdd
-10000000034,2012-12-02,FP-GTC,106340,15,14,638.72,1,10000021,cid
-10000000035,2012-02-01,FP-GTC,150265,15,14,4.54,1,10000022,jfj
-10000000036,2012-01-14,FP-GTC,24760,0,12,319.79,1,10000023,abi
-10000000038,2012-08-14,Auction,37831,0,12,20.35,1,10000024,fag
-10000000040,2012-10-04,FP-non GTC,1120,3,5,223.63,1,10000025,gci
-10000000041,2012-12-26,FP-GTC,43972,100,13,204.28,1,10000026,gch
-10000000042,2012-12-31,Auction,166013,15,14,5.48,1,10000027,ifh
-10000000043,2012-03-22,Auction,15568,15,14,27.48,1,10000028,hfh
-10000000044,2012-12-25,FP-GTC,103178,15,5,21.72,1,10000029,ggc
-10000000047,2012-12-05,ABIN,2023,0,12,3.18,1,10000030,gde
-10000000048,2012-05-27,FP-GTC,94847,0,11,491.32,1,10000031,hha
-10000000049,2012-01-11,Auction,15868,0,14,448.8,1,10000032,hgf
-10000000050,2012-02-04,Auction,32876,0,13,415.73,1,10000033,eia
-10000000051,2012-12-15,Auction,62179,0,13,377.94,1,10000034,cfh
-10000000052,2012-06-30,FP-GTC,33038,15,14,146.33,1,10000035,ide
-10000000053,2012-12-16,FP-GTC,156614,0,5,7.12,1,10000036,gac
-10000000055,2012-10-17,Auction,106246,0,13,42.99,1,10000037,afa
-10000000056,2012-10-08,Auction,20865,0,13,12.85,1,10000038,hed
-10000000057,2012-04-26,FP-GTC,15115,0,13,55.89,1,10000039,hif
-10000000058,2012-10-06,FP-GTC,3838,0,14,73.26,1,10000040,ggb
-10000000059,2012-12-28,Auction,759,0,11,112.56,1,10000041,ffi
-10000000060,2012-11-06,FP-non GTC,61323,0,11,3.49,1,10000042,bdh
-10000000061,2012-11-06,Auction,121153,0,13,184.21,1,10000043,bej
-10000000062,2012-12-27,Auction,88750,0,13,157.14,1,10000044,ihh
-10000000064,2012-07-15,FP-GTC,161567,15,14,72.65,1,10000045,eag
-10000000065,2012-08-23,FP-GTC,113802,15,14,51.23,1,10000046,fcc
-10000000066,2012-07-10,FP-non GTC,15808,15,14,15.85,1,10000047,gbb
-10000000067,2012-08-10,FP-GTC,174053,3,13,7.12,1,10000048,ihb
-10000000069,2012-09-01,Auction,2635,0,14,12.04,1,10000049,bie
-10000000070,2012-09-19,Auction,1161,3,13,73.26,1,10000050,eah
-10000000072,2012-08-10,FP-non GTC,64076,0,5,184.21,1,10000051,iag
-10000000073,2012-08-21,FP-GTC,33977,15,13,172.03,1,10000052,aga
-10000000074,2012-08-29,FP-GTC,31673,0,14,122.78,1,10000053,ede
-10000000075,2012-04-22,Auction,174106,3,14,92.98,1,10000054,gii
-10000000076,2012-07-02,Auction,26249,0,13,12.19,1,10000055,heb
-10000000077,2012-01-28,FP-GTC,159184,0,5,15.65,1,10000056,fab
-10000000078,2012-03-11,FP-GTC,10058,3,11,101.79,1,10000057,dbf
-10000000079,2012-05-29,ABIN,48904,0,12,7.12,1,10000058,fda
-10000000080,2012-05-31,FP-non GTC,145970,0,14,12.85,1,10000059,gaf
-10000000082,2012-10-25,FP-GTC,963,0,13,12.19,1,10000060,bfc
-10000000083,2012-11-23,FP-GTC,118687,3,13,92.98,1,10000061,eed
-10000000085,2012-09-28,FP-GTC,20886,0,14,42.99,1,10000062,deh
-10000000086,2012-09-28,Auction,148324,15,13,1.88,1,10000063,dii
-10000000089,2012-10-19,Auction,139255,15,14,21.14,1,10000064,ceh
-10000000090,2012-08-05,FP-GTC,20213,0,5,21.14,1,10000065,ejd
-10000000091,2012-05-19,Auction,32996,15,13,132.33,1,10000066,fab
-10000000092,2012-04-11,FP-GTC,99985,0,14,120.87,1,10000067,dab
-10000000093,2012-05-16,Auction,67703,3,14,120.87,1,10000068,big
-10000000094,2012-05-24,FP-non GTC,65,0,11,9.26,1,10000069,afj
-10000000095,2012-01-10,FP-non GTC,130,0,14,16.26,1,10000070,igh
-10000000096,2012-05-17,FP-GTC,164,0,14,157.14,1,10000071,aff
-10000000097,2012-02-03,FP-GTC,216,0,11,1.88,1,10000072,aif
-10000000098,2012-05-05,FP-non GTC,223,0,5,12.04,1,10000073,gcd
-10000000099,2012-11-26,FP-non GTC,223,0,14,189.23,1,10000074,hec
-10000000100,2012-08-30,FP-non GTC,223,0,5,73.26,1,10000075,cdh
-10000000101,2012-05-21,FP-non GTC,223,0,5,4.13,1,10000076,dei
-10000000102,2012-06-06,FP-non GTC,223,0,5,290.72,1,10000077,gib
-10000000103,2012-06-16,FP-non GTC,223,0,5,265.56,1,10000078,hbb
-10000000104,2012-05-15,FP-GTC,279,15,5,5.91,1,10000079,jdh
-10000000106,2012-12-05,Auction,314,0,5,319.79,1,10000080,fag
-10000000107,2012-03-25,Auction,314,211,5,246,1,10000081,egj
-10000000108,2012-03-09,Auction,314,211,5,20.35,1,10000082,ihi
-10000000109,2012-05-06,Auction,314,0,5,36.7,1,10000083,efi
-10000000110,2012-06-15,Auction,533,0,13,101.79,1,10000084,hed
-10000000113,2012-03-14,ABIN,1349,0,5,47.71,1,10000085,ajb
-10000000115,2012-05-20,ABIN,1349,0,5,3.49,1,10000086,gdf
-10000000117,2012-05-17,ABIN,1349,0,13,46.44,1,10000087,bch
-10000000118,2012-03-11,ABIN,1349,0,13,4.54,1,10000088,hdb
-10000000119,2012-01-10,ABIN,1357,0,14,3.18,1,10000089,dda
-10000000120,2012-04-13,FP-GTC,1504,0,14,86.58,1,10000090,gdd
-10000000121,2012-07-22,FP-GTC,4943,0,13,12.85,1,10000091,ahe
-10000000122,2012-06-15,ABIN,6762,0,13,16.26,1,10000092,cdj
-10000000123,2012-06-15,Auction,9426,3,13,21.14,1,10000093,jff
-10000000124,2012-06-01,FP-non GTC,10866,0,14,20.6,1,10000094,jfg
-10000000125,2012-05-17,Auction,11554,0,13,246,1,10000095,cjc
-10000000126,2012-04-26,FP-GTC,11848,0,14,109,1,10000096,baf
-10000000127,2012-07-28,Auction,13836,0,13,39.41,1,10000097,aha
-10000000128,2012-03-12,Auction,13836,0,14,16.26,1,10000098,gjc
-10000000129,2012-04-20,FP-GTC,13987,0,13,112.56,1,10000099,ige
-10000000130,2012-03-18,Auction,15687,0,14,184.21,1,10000100,dcg
-10000000131,2012-05-17,Auction,15687,0,11,27.48,1,10000001,ifb
-10000000132,2012-06-23,FP-non GTC,16145,3,12,26.45,1,10000002,dei
-10000000134,2012-05-22,FP-non GTC,16145,0,13,415.73,1,10000003,gih
-10000000135,2012-01-25,ABIN,16509,0,5,56.36,1,10000004,iha
-10000000136,2012-06-12,ABIN,16509,0,5,2.44,1,10000005,ige
-10000000137,2012-05-17,FP-GTC,20485,0,14,269.76,1,10000006,iab
-10000000139,2012-08-03,FP-GTC,20485,101,12,109,1,10000007,hhb
-10000000140,2012-05-17,FP-GTC,20485,101,12,101.79,1,10000008,ehc
-10000000141,2012-08-21,Auction,23446,23,14,246,1,10000009,dcc
-10000000142,2012-08-21,Auction,23446,23,14,189.23,1,10000010,hia
-10000000143,2012-04-18,Auction,23446,23,14,15.65,1,10000011,dja
-10000000144,2012-06-16,Auction,23446,23,14,28.23,1,10000012,baa
-10000000145,2012-01-09,FP-GTC,24541,0,5,16.26,1,10000013,aib
-10000000146,2012-05-03,FP-GTC,26262,0,5,122.78,1,10000014,dia
-10000000147,2012-05-20,FP-GTC,30059,3,14,172.03,1,10000015,ebd
-10000000149,2012-03-12,Auction,31387,3,14,42.99,1,10000016,gbe
-10000000150,2012-05-19,Auction,31387,3,14,207.5,1,10000017,fhg
-10000000151,2012-04-21,FP-GTC,31519,0,14,5.91,1,10000018,bhg
-10000000152,2012-05-18,FP-GTC,31519,3,14,39.41,1,10000019,gaf
-10000000155,2012-06-16,FP-GTC,31519,0,14,16.26,1,10000020,bad
-10000000156,2012-06-11,FP-GTC,31519,0,14,16.26,1,10000021,fic
-10000000157,2012-03-31,FP-GTC,31519,0,14,78.48,1,10000022,haj
-10000000158,2012-11-12,FP-GTC,31519,3,14,190.22,1,10000023,jcf
-10000000161,2012-04-06,FP-GTC,35570,100,12,2.44,1,10000024,bjc
-10000000163,2012-11-01,Auction,36250,0,5,7.12,1,10000025,def
-10000000165,2012-02-06,FP-non GTC,38238,0,14,36.7,1,10000026,gfj
-10000000166,2012-06-16,FP-GTC,40059,3,14,35.72,1,10000027,gbf
-10000000167,2012-09-12,FP-GTC,40059,3,14,3.49,1,10000028,dfi
-10000000168,2012-04-16,FP-GTC,41940,0,13,223.63,1,10000029,fhf
-10000000169,2012-11-01,FP-GTC,41940,0,13,265.56,1,10000030,ffc
-10000000170,2012-06-14,FP-non GTC,43479,0,13,62.02,1,10000031,iid
-10000000172,2012-11-12,FP-GTC,44079,0,12,46.44,1,10000032,dhg
-10000000173,2012-03-22,Auction,45238,101,14,132.33,1,10000033,dab
-10000000177,2012-05-22,Auction,45333,0,13,448.8,1,10000034,hci
-10000000178,2012-03-10,FP-non GTC,45333,0,14,207.5,1,10000035,hgh
-10000000179,2012-05-17,FP-non GTC,45333,0,14,190.22,1,10000036,ehc
-10000000181,2012-09-01,FP-GTC,46575,0,14,16.71,1,10000037,djg
-10000000182,2012-04-18,FP-non GTC,50508,0,13,4.13,1,10000038,gcg
-10000000183,2012-06-05,FP-non GTC,50508,0,13,1.88,1,10000039,bfa
-10000000185,2012-10-08,FP-GTC,50677,0,13,491.32,1,10000040,dah
-10000000186,2012-09-17,FP-GTC,50677,0,5,2.44,1,10000041,eeh
-10000000187,2012-02-02,Auction,51582,0,14,56.36,1,10000042,jaf
-10000000189,2012-08-23,FP-GTC,57013,0,13,15.85,1,10000043,hfc
-10000000190,2012-08-17,FP-non GTC,57013,0,14,2.44,1,10000044,ebg
-10000000191,2012-05-05,FP-GTC,57013,0,14,7.12,1,10000045,aff
-10000000192,2012-03-08,Auction,57784,0,14,35.72,1,10000046,hdc
-10000000194,2012-03-16,Auction,57990,3,11,9.26,1,10000047,hai
-10000000195,2012-05-09,Auction,57990,3,14,3.18,1,10000048,fdi
-10000000196,2012-03-25,Auction,57990,3,14,638.72,1,10000049,gii
-10000000198,2012-06-05,Auction,57990,3,14,141.7,1,10000050,cgg
-10000000199,2012-01-10,ABIN,57990,0,13,12.19,1,10000051,hed
-10000000200,2012-06-11,Auction,57990,3,14,132.33,1,10000052,jhf
-10000000201,2012-08-23,ABIN,57990,3,5,5.48,1,10000053,cbb
-10000000203,2012-08-20,Auction,57990,3,11,1.88,1,10000054,bed
-10000000204,2012-08-09,FP-GTC,60340,0,14,12.85,1,10000055,dei
-10000000208,2012-06-30,FP-GTC,60340,0,14,62.02,1,10000056,dbb
-10000000209,2012-06-03,FP-GTC,60606,3,12,15.85,1,10000057,fbf
-10000000211,2012-08-14,FP-GTC,60606,3,12,9.26,1,10000058,ijd
-10000000213,2012-08-14,FP-GTC,60606,3,12,16.71,1,10000059,hci
-10000000214,2012-05-17,FP-GTC,60606,3,12,20.6,1,10000060,hjh
-10000000217,2012-07-23,Auction,63861,3,5,1.88,1,10000061,cic
-10000000218,2012-07-27,ABIN,63861,0,5,141.7,1,10000062,cig
-10000000219,2012-07-29,ABIN,63861,0,5,1.88,1,10000063,gae
-10000000220,2012-11-17,Others,63861,0,11,112.56,1,10000064,bjd
-10000000221,2012-10-29,Others,63861,0,11,94.45,1,10000065,cih
-10000000222,2012-03-28,Auction,63861,0,14,78.48,1,10000066,hbe
-10000000223,2012-01-30,ABIN,63861,0,13,5.48,1,10000067,eec
-10000000224,2012-01-26,Auction,63864,3,14,28.23,1,10000068,deb
-10000000229,2012-11-21,Others,63889,0,13,3.49,1,10000069,bgd
-10000000231,2012-07-12,FP-GTC,67698,2,11,15.65,1,10000070,cgg
-10000000232,2012-06-07,FP-GTC,67698,0,11,5.48,1,10000071,heb
-10000000233,2012-12-01,FP-GTC,67698,0,11,246,1,10000072,jcf
-10000000234,2012-12-02,FP-non GTC,73506,0,13,122.78,1,10000073,djh
-10000000235,2012-02-01,FP-GTC,75665,0,14,223.63,1,10000074,ejc
-10000000236,2012-01-14,ABIN,75708,3,5,141.7,1,10000075,gjh
-10000000237,2012-09-16,FP-non GTC,80053,0,11,21.14,1,10000076,cid
-10000000239,2012-08-09,FP-non GTC,80053,0,11,55.89,1,10000077,ccd
-10000000241,2012-12-26,FP-non GTC,80053,0,11,51.23,1,10000078,bfh
-10000000242,2012-12-31,Auction,80135,0,14,21.72,1,10000079,gcg
-10000000243,2012-03-22,Auction,95672,3,14,204.28,1,10000080,bji
-10000000244,2012-12-25,Others,95672,0,11,21.14,1,10000081,dig
-10000000245,2012-01-15,Others,100847,0,5,204.28,1,10000082,eei
-10000000248,2012-05-27,Others,100847,0,5,122.78,1,10000083,icj
-10000000249,2012-01-11,ABIN,139973,3,14,94.45,1,10000084,jfe
-10000000250,2012-02-04,ABIN,139973,0,11,86.58,1,10000085,efj
-10000000251,2012-12-15,Auction,150047,3,14,56.36,1,10000086,icd
-10000000252,2012-06-30,Auction,150047,3,14,290.72,1,10000087,dci
-10000000253,2012-12-16,FP-GTC,155226,0,13,60.37,1,10000088,ghg
-10000000254,2012-11-11,FP-GTC,155226,0,13,112.56,1,10000089,ebc
-10000000256,2012-10-08,FP-GTC,156356,0,13,265.56,1,10000090,gdh
-10000000257,2012-04-26,FP-GTC,158798,0,11,35.72,1,10000091,cbc
-10000000258,2012-10-06,FP-non GTC,165888,0,13,92.98,1,10000092,gij
-10000000259,2012-12-28,Auction,170083,3,11,28.23,1,10000093,ife
-10000000260,2012-11-06,Auction,170083,3,11,27.48,1,10000094,hgb
-10000000261,2012-11-06,Auction,175750,3,14,9.26,1,10000095,dfa
-10000000262,2012-12-27,Auction,175750,3,14,3.18,1,10000096,jja
-10000000263,2012-01-01,FP-GTC,175750,0,14,12.04,1,10000097,gjf
-10000000265,2012-08-23,Auction,175750,3,13,20.6,1,10000098,bif
-10000000266,2012-07-10,Auction,175750,3,13,12.04,1,10000099,iad
-10000000267,2012-08-10,Auction,175750,3,14,4.13,1,10000100,bfg
-10000000268,2012-07-19,Auction,175750,3,14,73.26,1,10000201,dfg
+0,3721,2012-01-01,FP-non GTC,164261,0,16,10000722,502.6,601,TEST927,true,279.8,350,LEFT801,LEFT567,LEFT588,LEFT516
+1,2916,2012-01-01,ABIN,152801,0,12,10000809,-47.98,345,TEST727,true,907.86,661,LEFT109,LEFT513,LEFT722,LEFT883
+2,445,2012-01-01,FP-non GTC,10866,0,11,10000014,906.92,572,TEST356,True,41.67,836,LEFT928,LEFT194,LEFT660,LEFT487
+3,3400,2012-01-01,FP-non GTC,67698,2,11,10000832,217.35,25,TEST244,TRUE,258.71,921,LEFT971,LEFT82,LEFT245,LEFT995
+4,183,2012-01-01,Auction,95672,3,15,10000259,980.44,346,TEST501,True,829.21,143,LEFT451,LEFT175,LEFT869,LEFT297
+5,1937,2012-01-01,Others,62179,0,15,10000397,814.85,649,TEST75,TRUE,222.3,830,LEFT856,LEFT105,LEFT810,LEFT256
+6,2103,2012-01-01,Auction,26262,0,12,10000215,-86.87,292,TEST502,True,722.62,906,LEFT367,LEFT693,LEFT697,LEFT394
+7,699,2012-01-01,FP-GTC,32996,15,5,10000546,-27.11,330,TEST279,FALSE,808.25,415,LEFT135,LEFT533,LEFT169,LEFT983
+8,4383,2012-01-01,FP-GTC,13987,0,12,10000929,-94.28,526,TEST839,false,643.49,549,LEFT52,LEFT417,LEFT607,LEFT127
+9,2230,2012-01-01,ABIN,9426,3,16,10000606,855.27,791,TEST9,TRUE,267.4,847,LEFT376,LEFT653,LEFT213,LEFT627
+10,3044,2012-01-02,ABIN,152801,0,13,10000333,791.45,926,TEST401,false,331.72,260,LEFT904,LEFT542,LEFT128,LEFT345
+11,485,2012-01-02,FP-non GTC,11554,0,14,10000630,108.09,114,TEST743,false,473.0,839,LEFT3,LEFT812,LEFT416,LEFT122
+12,1021,2012-01-02,ABIN,11554,0,15,10000194,453.6,335,TEST493,True,152.67,264,LEFT113,LEFT902,LEFT186,LEFT939
+13,557,2012-01-02,Auction,156614,0,11,10000011,290.07,983,TEST477,true,107.95,672,LEFT220,LEFT371,LEFT291,LEFT665
+14,4009,2012-01-02,FP-non GTC,24541,0,11,10000674,939.2,583,TEST650,FALSE,129.98,703,LEFT199,LEFT690,LEFT544,LEFT431
+15,3596,2012-01-02,Others,152801,0,14,10000015,726.49,707,TEST139,True,932.85,801,LEFT680,LEFT914,LEFT584,LEFT230
+16,1439,2012-01-02,Others,20865,0,16,10000142,-21.14,534,TEST616,TRUE,137.95,518,LEFT400,LEFT694,LEFT543,LEFT817
+17,2175,2012-01-02,FP-non GTC,13987,0,11,10000312,299.75,677,TEST261,FALSE,157.18,855,LEFT974,LEFT616,LEFT618,LEFT199
+18,166,2012-01-02,FP-GTC,161567,15,14,10000053,301.62,240,TEST57,True,161.37,516,LEFT888,LEFT110,LEFT676,LEFT936
+19,1188,2012-01-02,FP-non GTC,43479,0,-99,10000563,661.24,873,TEST826,False,489.76,767,LEFT368,LEFT270,LEFT518,LEFT619
+20,313,2012-01-02,FP-non GTC,44079,0,13,10000047,168.51,96,TEST940,False,855.05,688,LEFT6,LEFT641,LEFT844,LEFT695
+21,88,2012-01-03,FP-GTC,148324,15,11,10000537,356.18,702,TEST873,true,447.37,8,LEFT155,LEFT20,LEFT526,LEFT244
+22,1102,2012-01-03,ABIN,95173,0,12,10000177,-57.91,361,TEST611,False,701.5,562,LEFT618,LEFT854,LEFT257,LEFT118
+23,1674,2012-01-03,FP-non GTC,166013,15,12,10000364,228.63,483,TEST972,FALSE,267.64,10,LEFT727,LEFT223,LEFT886,LEFT287
+24,464,2012-01-03,FP-GTC,15115,0,16,10000097,25.6,739,TEST939,TRUE,351.97,623,LEFT341,LEFT816,LEFT978,LEFT667
+25,1067,2012-01-03,Others,61323,0,15,10000293,886.65,816,TEST563,TRUE,253.95,892,LEFT265,LEFT438,LEFT676,LEFT362
+26,2071,2012-01-03,FP-non GTC,1504,0,14,10000148,896.62,987,TEST226,False,439.48,381,LEFT505,LEFT187,LEFT262,LEFT709
+27,2539,2012-01-03,Auction,66767,15,15,10000957,11.41,201,TEST763,true,981.46,662,LEFT132,LEFT142,LEFT632,LEFT57
+28,1860,2012-01-03,FP-non GTC,99985,0,14,10000984,806.3,430,TEST995,false,635.45,32,LEFT814,LEFT231,LEFT691,LEFT893
+29,779,2012-01-03,Others,1161,3,12,10000942,579.78,210,TEST844,true,620.86,9,LEFT247,LEFT587,LEFT781,LEFT443
+30,3746,2012-01-03,FP-non GTC,139973,0,5,10000329,194.13,601,TEST775,False,43.26,925,LEFT166,LEFT607,LEFT495,LEFT812
+31,566,2012-01-03,ABIN,106246,0,-99,10000834,416.82,204,TEST195,false,815.57,214,LEFT877,LEFT8,LEFT311,LEFT934
+32,3222,2012-01-03,Auction,95173,0,-99,10000160,937.99,155,TEST39,FALSE,143.17,143,LEFT311,LEFT873,LEFT485,LEFT82
+33,1860,2012-01-04,FP-GTC,16145,0,5,10000252,586.78,470,TEST7,True,419.62,654,LEFT797,LEFT506,LEFT624,LEFT703
+34,2788,2012-01-04,ABIN,140746,100,5,10000930,580.78,772,TEST330,TRUE,431.98,113,LEFT62,LEFT672,LEFT718,LEFT536
+35,2890,2012-01-04,Others,45333,0,14,10000488,252.73,661,TEST931,True,646.08,22,LEFT696,LEFT370,LEFT644,LEFT173
+36,4273,2012-01-04,ABIN,3838,0,11,10000390,455.28,89,TEST476,False,662.67,783,LEFT393,LEFT696,LEFT406,LEFT111
+37,3708,2012-01-04,ABIN,43479,0,15,10000577,25.08,19,TEST159,False,166.54,481,LEFT725,LEFT11,LEFT712,LEFT427
+38,4619,2012-01-04,FP-non GTC,60340,0,15,10000717,233.1,354,TEST353,true,909.5,946,LEFT900,LEFT416,LEFT878,LEFT839
+39,885,2012-01-04,FP-GTC,150265,15,11,10000571,230.75,125,TEST912,True,526.45,507,LEFT118,LEFT431,LEFT15,LEFT125
+40,573,2012-01-04,ABIN,43398,0,14,10000649,855.24,218,TEST249,true,187.67,655,LEFT520,LEFT327,LEFT644,LEFT710
+41,881,2012-01-04,Others,75708,3,11,10000639,530.68,168,TEST177,false,168.78,863,LEFT145,LEFT878,LEFT213,LEFT238
+42,1597,2012-01-05,FP-GTC,87118,0,11,10000409,718.75,811,TEST924,false,920.48,548,LEFT315,LEFT813,LEFT645,LEFT654
+43,2675,2012-01-05,FP-GTC,1161,3,13,10000022,808.71,828,TEST909,False,980.45,105,LEFT441,LEFT397,LEFT717,LEFT374
+44,3334,2012-01-05,Others,24760,0,16,10000099,893.61,893,TEST442,True,324.53,56,LEFT983,LEFT334,LEFT682,LEFT376
+45,991,2012-01-05,Auction,158798,0,16,10000998,925.38,210,TEST557,FALSE,219.14,16,LEFT532,LEFT985,LEFT86,LEFT790
+46,4513,2012-01-05,ABIN,314,211,14,10000774,735.03,247,TEST41,false,325.41,871,LEFT597,LEFT937,LEFT182,LEFT151
+47,4871,2012-01-05,ABIN,158798,0,12,10000533,917.72,750,TEST456,false,829.2,721,LEFT679,LEFT822,LEFT197,LEFT292
+48,1379,2012-01-05,FP-non GTC,223,0,16,10000490,432.48,145,TEST630,FALSE,370.7,852,LEFT680,LEFT802,LEFT584,LEFT519
+49,3206,2012-01-05,FP-non GTC,106246,0,11,10000714,387.78,494,TEST239,False,166.56,524,LEFT949,LEFT785,LEFT676,LEFT880
+50,3281,2012-01-05,FP-GTC,103324,15,-99,10000063,726.78,119,TEST666,true,432.51,444,LEFT617,LEFT344,LEFT696,LEFT819
+51,3081,2012-01-05,ABIN,43972,100,12,10000911,375.24,111,TEST555,True,940.04,420,LEFT551,LEFT498,LEFT596,LEFT512
+52,4331,2012-01-05,Others,16509,0,15,10000413,23.6,696,TEST539,TRUE,980.04,401,LEFT238,LEFT438,LEFT920,LEFT599
+53,1326,2012-01-05,FP-non GTC,63889,0,16,10000784,273.94,506,TEST532,TRUE,907.18,678,LEFT429,LEFT200,LEFT361,LEFT339
+54,4039,2012-01-05,Others,45238,101,13,10000221,244.14,494,TEST908,false,7.31,683,LEFT148,LEFT721,LEFT247,LEFT432
+55,1860,2012-01-05,ABIN,152801,0,14,10000144,519.04,143,TEST934,false,196.97,825,LEFT607,LEFT978,LEFT320,LEFT58
+56,2626,2012-01-05,ABIN,82494,15,13,10000429,663.18,323,TEST492,True,761.74,778,LEFT943,LEFT954,LEFT936,LEFT752
+57,4784,2012-01-05,FP-GTC,20485,101,12,10000433,479.17,21,TEST803,FALSE,426.92,83,LEFT778,LEFT935,LEFT663,LEFT781
+58,1940,2012-01-06,FP-GTC,41940,0,16,10000281,583.95,852,TEST627,True,164.23,377,LEFT158,LEFT836,LEFT365,LEFT543
+59,18,2012-01-06,ABIN,67698,0,5,10000650,438.36,113,TEST422,True,99.96,527,LEFT16,LEFT255,LEFT882,LEFT217
+60,704,2012-01-06,Others,0,0,5,10000659,823.45,135,TEST257,True,437.11,942,LEFT888,LEFT726,LEFT601,LEFT938
+61,4923,2012-01-06,Others,63864,3,5,10000568,863.37,143,TEST289,FALSE,559.49,999,LEFT668,LEFT75,LEFT86,LEFT520
+62,663,2012-01-06,ABIN,15868,0,12,10000461,265.84,576,TEST425,True,411.48,494,LEFT448,LEFT974,LEFT668,LEFT653
+63,1055,2012-01-06,FP-non GTC,15687,0,12,10000915,55.62,981,TEST60,False,455.47,944,LEFT250,LEFT17,LEFT596,LEFT138
+64,4131,2012-01-06,Auction,66767,15,12,10000832,997.56,972,TEST284,FALSE,91.29,826,LEFT871,LEFT179,LEFT883,LEFT862
+65,3872,2012-01-06,FP-GTC,20485,0,-99,10000069,990.5,659,TEST665,false,60.39,661,LEFT380,LEFT996,LEFT261,LEFT317
+66,4323,2012-01-06,FP-non GTC,1161,3,14,10000183,951.0,118,TEST270,true,667.3,373,LEFT119,LEFT332,LEFT954,LEFT155
+67,983,2012-01-06,FP-GTC,174106,3,13,10000193,704.71,661,TEST292,True,576.38,122,LEFT993,LEFT396,LEFT250,LEFT743
+68,2315,2012-01-06,FP-GTC,1161,3,15,10000332,256.19,342,TEST572,true,674.68,673,LEFT879,LEFT326,LEFT715,LEFT317
+69,2922,2012-01-06,ABIN,45333,0,11,10000828,947.3,762,TEST662,True,684.1,96,LEFT573,LEFT219,LEFT58,LEFT440
+70,394,2012-01-06,FP-GTC,45333,0,16,10000867,151.09,404,TEST266,TRUE,856.17,108,LEFT200,LEFT105,LEFT586,LEFT236
+71,2973,2012-01-06,Auction,63861,0,-99,10000650,-34.58,285,TEST232,True,889.42,74,LEFT385,LEFT660,LEFT566,LEFT726
+72,1491,2012-01-06,ABIN,60340,0,12,10000750,176.07,770,TEST346,FALSE,723.73,844,LEFT796,LEFT890,LEFT650,LEFT768
+73,1829,2012-01-06,ABIN,51582,0,14,10000288,208.83,505,TEST102,false,868.8,490,LEFT850,LEFT713,LEFT764,LEFT451
+74,1797,2012-01-06,Others,88750,0,13,10000420,648.11,85,TEST973,true,455.73,611,LEFT152,LEFT573,LEFT611,LEFT794
+75,977,2012-01-07,ABIN,75708,3,12,10000905,-42.85,612,TEST393,False,229.97,839,LEFT85,LEFT993,LEFT667,LEFT291
+76,2215,2012-01-07,ABIN,113802,15,11,10000173,666.83,271,TEST17,true,846.52,509,LEFT148,LEFT585,LEFT99,LEFT834
+77,2162,2012-01-07,FP-non GTC,10058,3,12,10000032,925.53,402,TEST686,False,775.95,920,LEFT479,LEFT972,LEFT877,LEFT901
+78,4517,2012-01-07,Auction,0,15,-99,10000423,-98.2,777,TEST767,true,555.99,666,LEFT406,LEFT301,LEFT287,LEFT30
+79,4036,2012-01-07,FP-non GTC,106340,15,12,10000922,411.48,495,TEST658,False,418.8,537,LEFT914,LEFT453,LEFT795,LEFT976
+80,4033,2012-01-07,Auction,159184,0,14,10000849,182.58,838,TEST35,false,597.18,189,LEFT965,LEFT446,LEFT80,LEFT758
+81,2516,2012-01-07,Others,103178,15,-99,10000403,771.45,488,TEST620,TRUE,878.77,993,LEFT164,LEFT508,LEFT582,LEFT27
+82,3420,2012-01-07,Auction,145970,0,15,10000277,697.03,105,TEST875,true,524.69,979,LEFT320,LEFT489,LEFT930,LEFT730
+83,2691,2012-01-07,FP-GTC,32996,15,11,10000135,720.62,180,TEST993,True,844.47,100,LEFT355,LEFT763,LEFT36,LEFT136
+84,3454,2012-01-07,FP-non GTC,80053,0,11,10000193,970.16,543,TEST390,true,697.91,294,LEFT944,LEFT778,LEFT257,LEFT704
+85,530,2012-01-07,FP-non GTC,139973,0,13,10000416,310.57,187,TEST5,true,441.64,82,LEFT556,LEFT156,LEFT714,LEFT790
+86,2549,2012-01-07,Auction,43398,0,-99,10000171,873.3,890,TEST902,FALSE,39.52,479,LEFT127,LEFT103,LEFT597,LEFT133
+87,3654,2012-01-07,ABIN,106246,0,16,10000531,1.53,675,TEST554,FALSE,521.02,341,LEFT438,LEFT754,LEFT949,LEFT859
+88,29,2012-01-07,Others,2023,0,12,10000698,643.83,889,TEST877,false,249.53,74,LEFT642,LEFT842,LEFT107,LEFT691
+89,121,2012-01-08,Auction,57784,0,16,10000423,312.92,292,TEST995,TRUE,654.45,87,LEFT492,LEFT389,LEFT732,LEFT805
+90,762,2012-01-08,FP-non GTC,23446,23,12,10000191,876.98,742,TEST278,false,791.9,956,LEFT800,LEFT817,LEFT438,LEFT954
+91,2508,2012-01-08,FP-GTC,43479,0,13,10000915,916.5,537,TEST113,FALSE,900.22,399,LEFT539,LEFT22,LEFT918,LEFT739
+92,2528,2012-01-08,FP-non GTC,15808,15,13,10000696,695.12,278,TEST178,TRUE,122.27,114,LEFT571,LEFT489,LEFT129,LEFT639
+93,3662,2012-01-08,FP-non GTC,25147,0,16,10000299,571.29,411,TEST105,TRUE,683.24,927,LEFT206,LEFT396,LEFT837,LEFT641
+94,4852,2012-01-08,Others,140746,100,13,10000360,164.28,617,TEST885,TRUE,899.16,884,LEFT871,LEFT580,LEFT542,LEFT45
+95,1933,2012-01-08,Auction,88750,0,12,10000541,260.1,518,TEST60,False,609.2,290,LEFT261,LEFT32,LEFT709,LEFT14
+96,195,2012-01-08,FP-non GTC,16509,0,-99,10000724,39.76,793,TEST970,False,448.32,243,LEFT861,LEFT31,LEFT666,LEFT244
+97,4029,2012-01-08,FP-GTC,43398,0,15,10000488,33.25,28,TEST15,True,874.41,93,LEFT981,LEFT739,LEFT405,LEFT934
+98,3932,2012-01-08,ABIN,64076,0,-99,10000754,510.79,342,TEST141,False,321.85,297,LEFT754,LEFT336,LEFT847,LEFT396
+99,2283,2012-01-08,FP-non GTC,30059,3,11,10000984,85.42,399,TEST483,TRUE,53.11,882,LEFT729,LEFT435,LEFT453,LEFT956
+100,2377,2012-01-08,Others,159184,0,14,10000634,476.64,997,TEST825,true,923.06,818,LEFT411,LEFT118,LEFT30,LEFT983
+101,1584,2012-01-08,FP-GTC,0,0,16,10000777,547.09,656,TEST29,False,978.07,46,LEFT355,LEFT612,LEFT971,LEFT298
+102,3240,2012-01-08,Others,73506,0,13,10000213,279.89,335,TEST773,FALSE,24.07,204,LEFT351,LEFT215,LEFT919,LEFT405
+103,3550,2012-01-08,FP-non GTC,95173,0,14,10000795,405.77,734,TEST117,true,47.4,879,LEFT987,LEFT367,LEFT489,LEFT648
+104,661,2012-01-08,Auction,33977,15,16,10000758,373.9,227,TEST644,TRUE,118.15,528,LEFT387,LEFT364,LEFT46,LEFT576
+105,4384,2012-01-08,FP-non GTC,20485,101,-99,10000363,647.35,247,TEST86,False,29.46,660,LEFT87,LEFT2,LEFT896,LEFT190
+106,2370,2012-01-09,FP-non GTC,23446,23,11,10000658,291.38,667,TEST202,FALSE,443.1,933,LEFT619,LEFT780,LEFT493,LEFT929
+107,1931,2012-01-09,Auction,50677,0,-99,10000786,762.01,589,TEST48,FALSE,630.35,126,LEFT520,LEFT956,LEFT927,LEFT260
+108,3662,2012-01-09,FP-GTC,25147,0,5,10000947,500.02,711,TEST126,TRUE,89.41,689,LEFT170,LEFT226,LEFT183,LEFT278
+109,2841,2012-01-09,Auction,38238,0,16,10000150,263.2,242,TEST355,false,915.5,782,LEFT242,LEFT810,LEFT773,LEFT329
+110,3178,2012-01-09,FP-GTC,10058,3,14,10000002,484.07,607,TEST929,FALSE,784.09,84,LEFT401,LEFT298,LEFT279,LEFT669
+111,4592,2012-01-09,Auction,57990,3,13,10000258,289.76,513,TEST92,TRUE,880.98,35,LEFT735,LEFT252,LEFT479,LEFT572
+112,3316,2012-01-09,Others,99985,0,16,10000151,142.1,752,TEST282,False,823.9,398,LEFT962,LEFT344,LEFT523,LEFT992
+113,3733,2012-01-09,ABIN,150265,15,14,10000241,3.77,279,TEST528,true,241.89,281,LEFT912,LEFT199,LEFT932,LEFT460
+114,4988,2012-01-09,Others,216,0,15,10000090,-8.01,20,TEST472,TRUE,528.01,486,LEFT363,LEFT510,LEFT893,LEFT185
+115,1855,2012-01-09,Others,13987,0,11,10000678,329.39,739,TEST173,True,836.24,105,LEFT912,LEFT747,LEFT546,LEFT677
+116,2000,2012-01-09,FP-GTC,148324,15,12,10000078,361.88,650,TEST935,True,50.2,643,LEFT282,LEFT706,LEFT876,LEFT161
+117,2919,2012-01-09,Auction,158798,0,5,10000588,411.49,303,TEST191,True,990.53,736,LEFT611,LEFT908,LEFT620,LEFT640
+118,3340,2012-01-09,Auction,13836,0,16,10000134,791.23,800,TEST132,true,937.42,515,LEFT823,LEFT890,LEFT830,LEFT640
+119,3244,2012-01-09,FP-non GTC,64076,0,15,10000338,-10.22,106,TEST940,false,862.83,784,LEFT582,LEFT186,LEFT168,LEFT951
+120,2336,2012-01-09,FP-non GTC,67698,2,11,10000914,837.22,98,TEST754,true,611.98,947,LEFT658,LEFT443,LEFT782,LEFT422
+121,866,2012-01-10,FP-non GTC,533,0,-99,10000817,912.36,153,TEST167,True,435.43,219,LEFT59,LEFT625,LEFT143,LEFT348
+122,1766,2012-01-10,ABIN,161567,15,12,10000801,727.85,468,TEST229,false,375.7,276,LEFT993,LEFT566,LEFT502,LEFT50
+123,452,2012-01-10,Auction,13836,0,5,10000292,159.77,220,TEST689,TRUE,805.22,610,LEFT969,LEFT54,LEFT505,LEFT668
+124,1807,2012-01-10,ABIN,314,0,16,10000316,606.53,333,TEST140,FALSE,726.1,783,LEFT378,LEFT189,LEFT832,LEFT831
+125,1518,2012-01-10,FP-GTC,9426,3,11,10000732,213.54,81,TEST200,FALSE,206.79,415,LEFT491,LEFT904,LEFT566,LEFT802
+126,2034,2012-01-10,Auction,533,0,15,10000318,338.75,665,TEST790,false,504.44,747,LEFT465,LEFT317,LEFT128,LEFT345
+127,3300,2012-01-10,Auction,13836,0,15,10000339,3.1,572,TEST86,False,890.03,146,LEFT371,LEFT384,LEFT997,LEFT541
+128,770,2012-01-10,FP-non GTC,139973,0,11,10000722,577.83,565,TEST348,True,107.26,5,LEFT902,LEFT234,LEFT142,LEFT543
+129,3855,2012-01-10,Others,20886,0,15,10000090,-29.83,547,TEST734,False,930.51,882,LEFT77,LEFT378,LEFT484,LEFT729
+130,3980,2012-01-10,ABIN,36250,0,16,10000111,694.64,152,TEST257,FALSE,926.59,227,LEFT649,LEFT841,LEFT670,LEFT406
+131,4651,2012-01-10,Auction,223,0,16,10000688,340.34,781,TEST378,False,415.56,97,LEFT165,LEFT605,LEFT248,LEFT154
+132,1687,2012-01-10,FP-non GTC,13987,0,15,10000092,643.2,577,TEST256,False,479.61,109,LEFT472,LEFT667,LEFT638,LEFT186
+133,3442,2012-01-10,Auction,82494,15,-99,10000485,332.72,705,TEST568,True,613.94,57,LEFT133,LEFT867,LEFT743,LEFT541
+134,1874,2012-01-10,Auction,45333,0,14,10000119,910.99,461,TEST711,TRUE,703.52,733,LEFT502,LEFT316,LEFT794,LEFT975
+135,2253,2012-01-10,FP-non GTC,87118,0,12,10000065,734.08,908,TEST361,TRUE,801.2,782,LEFT362,LEFT694,LEFT477,LEFT350
+136,593,2012-01-10,Auction,3838,0,-99,10000300,755.68,320,TEST157,true,833.3,855,LEFT834,LEFT690,LEFT364,LEFT83
+137,988,2012-01-10,ABIN,43479,0,12,10000573,903.11,773,TEST548,True,663.94,696,LEFT770,LEFT148,LEFT219,LEFT802
+138,1454,2012-01-10,FP-non GTC,9426,3,13,10000254,433.8,151,TEST741,TRUE,600.69,812,LEFT184,LEFT853,LEFT631,LEFT72
+139,4581,2012-01-10,ABIN,95672,0,5,10000412,107.66,11,TEST933,TRUE,861.25,378,LEFT753,LEFT234,LEFT675,LEFT822
+140,606,2012-01-10,FP-GTC,31673,0,11,10000482,776.52,906,TEST6,true,994.56,640,LEFT605,LEFT877,LEFT141,LEFT559
+141,704,2012-01-10,FP-non GTC,20485,101,5,10000355,866.59,32,TEST889,False,251.9,941,LEFT617,LEFT519,LEFT280,LEFT32
+142,963,2012-01-11,ABIN,50677,0,5,10000913,580.54,71,TEST818,true,585.48,297,LEFT959,LEFT907,LEFT113,LEFT298
+143,2791,2012-01-11,FP-GTC,314,0,16,10000161,76.39,642,TEST132,TRUE,603.54,709,LEFT936,LEFT134,LEFT933,LEFT78
+144,4465,2012-01-11,Auction,57990,0,14,10000433,77.65,883,TEST288,False,572.81,412,LEFT788,LEFT178,LEFT20,LEFT761
+145,925,2012-01-11,Auction,43398,0,-99,10000175,577.45,872,TEST152,FALSE,588.18,921,LEFT132,LEFT740,LEFT964,LEFT800
+146,2893,2012-01-11,ABIN,88750,0,12,10000227,996.65,82,TEST341,True,217.92,896,LEFT260,LEFT969,LEFT862,LEFT212
+147,3295,2012-01-11,Others,314,0,12,10000336,-78.19,648,TEST717,false,353.92,712,LEFT259,LEFT463,LEFT35,LEFT44
+148,2363,2012-01-11,FP-GTC,61323,0,5,10000842,46.78,589,TEST860,True,284.11,621,LEFT670,LEFT25,LEFT445,LEFT691
+149,4122,2012-01-11,FP-non GTC,4943,0,16,10000369,581.18,800,TEST919,False,974.64,876,LEFT904,LEFT802,LEFT644,LEFT125
+150,2521,2012-01-11,FP-GTC,38238,0,16,10000460,745.65,124,TEST59,false,993.46,363,LEFT57,LEFT638,LEFT511,LEFT141
+151,4617,2012-01-11,Auction,164261,0,14,10000617,909.12,16,TEST367,TRUE,726.86,576,LEFT276,LEFT487,LEFT125,LEFT72
+152,4437,2012-01-11,FP-GTC,10866,0,5,10000346,45.1,777,TEST710,true,890.24,777,LEFT740,LEFT67,LEFT588,LEFT205
+153,2495,2012-01-11,FP-non GTC,1504,0,16,10000068,100.84,705,TEST419,False,768.29,868,LEFT324,LEFT234,LEFT643,LEFT110
+154,363,2012-01-11,FP-non GTC,46575,0,14,10000123,607.01,443,TEST334,false,981.82,477,LEFT646,LEFT576,LEFT503,LEFT212
+155,4702,2012-01-11,Auction,118687,3,15,10000186,-5.35,319,TEST209,TRUE,681.01,691,LEFT469,LEFT75,LEFT184,LEFT712
+156,288,2012-01-11,FP-non GTC,12688,0,5,10000211,34.91,113,TEST907,false,414.88,946,LEFT176,LEFT29,LEFT849,LEFT629
+157,3401,2012-01-12,FP-non GTC,31519,0,15,10000446,-36.82,510,TEST386,False,170.21,625,LEFT245,LEFT877,LEFT421,LEFT0
+158,3943,2012-01-12,ABIN,15868,0,12,10000563,39.76,789,TEST137,false,431.94,926,LEFT505,LEFT236,LEFT640,LEFT500
+159,4079,2012-01-12,ABIN,95672,3,15,10000363,432.3,721,TEST632,True,725.49,627,LEFT121,LEFT301,LEFT49,LEFT67
+160,1477,2012-01-12,FP-non GTC,88750,0,11,10000172,992.59,13,TEST511,False,397.55,687,LEFT981,LEFT929,LEFT650,LEFT180
+161,1530,2012-01-12,FP-non GTC,108782,15,15,10000637,-37.84,214,TEST747,TRUE,968.88,913,LEFT470,LEFT46,LEFT757,LEFT464
+162,2511,2012-01-12,Auction,279,15,15,10000848,395.57,375,TEST631,FALSE,374.68,309,LEFT89,LEFT444,LEFT340,LEFT95
+163,4794,2012-01-12,FP-non GTC,156356,0,14,10000061,812.72,203,TEST464,True,188.92,804,LEFT664,LEFT549,LEFT511,LEFT515
+164,433,2012-01-12,ABIN,103324,15,12,10000814,-59.14,944,TEST612,false,898.92,879,LEFT929,LEFT753,LEFT196,LEFT881
+165,3259,2012-01-12,FP-GTC,66767,15,14,10000516,408.91,691,TEST250,True,393.59,259,LEFT989,LEFT962,LEFT419,LEFT357
+166,122,2012-01-12,Others,113593,15,12,10000221,375.34,428,TEST356,False,915.59,589,LEFT799,LEFT429,LEFT910,LEFT933
+167,2846,2012-01-12,FP-GTC,165888,0,13,10000353,667.36,883,TEST817,TRUE,798.61,628,LEFT721,LEFT178,LEFT541,LEFT141
+168,3056,2012-01-12,FP-non GTC,75665,0,13,10000972,160.16,246,TEST335,False,904.34,269,LEFT996,LEFT616,LEFT880,LEFT68
+169,1342,2012-01-12,ABIN,57013,0,13,10000242,-10.63,839,TEST4,true,557.51,330,LEFT369,LEFT820,LEFT281,LEFT452
+170,446,2012-01-12,Others,150047,3,11,10000844,103.11,126,TEST411,True,691.79,542,LEFT946,LEFT260,LEFT29,LEFT145
+171,3540,2012-01-13,FP-non GTC,99985,0,11,10000846,441.02,811,TEST277,true,660.39,142,LEFT922,LEFT607,LEFT685,LEFT573
+172,4259,2012-01-13,FP-GTC,48904,0,15,10000533,373.4,412,TEST60,True,347.14,800,LEFT299,LEFT415,LEFT630,LEFT49
+173,2220,2012-01-13,ABIN,41940,0,5,10000540,-45.61,862,TEST379,False,243.85,936,LEFT679,LEFT661,LEFT284,LEFT93
+174,2236,2012-01-13,ABIN,64076,0,11,10000569,553.9,483,TEST231,true,568.77,844,LEFT885,LEFT677,LEFT770,LEFT544
+175,4292,2012-01-13,FP-GTC,139973,3,11,10000418,594.03,637,TEST404,FALSE,342.33,786,LEFT170,LEFT0,LEFT408,LEFT634
+176,4187,2012-01-13,Others,30059,3,12,10000002,71.31,820,TEST529,True,232.17,874,LEFT262,LEFT281,LEFT345,LEFT126
+177,4600,2012-01-13,ABIN,53064,0,12,10000568,331.26,830,TEST166,True,947.21,868,LEFT476,LEFT217,LEFT520,LEFT795
+178,538,2012-01-13,ABIN,20213,0,16,10000051,104.12,111,TEST182,false,186.12,949,LEFT831,LEFT112,LEFT127,LEFT967
+179,449,2012-01-13,FP-GTC,3838,0,14,10000561,189.45,720,TEST693,TRUE,749.1,701,LEFT680,LEFT691,LEFT777,LEFT840
+180,2589,2012-01-13,ABIN,155226,0,-99,10000014,70.18,772,TEST712,False,162.61,824,LEFT826,LEFT348,LEFT447,LEFT923
+181,2230,2012-01-13,FP-GTC,80053,0,11,10000938,-65.31,363,TEST665,false,838.47,33,LEFT597,LEFT284,LEFT564,LEFT881
+182,2191,2012-01-13,Others,20865,0,12,10000567,624.54,450,TEST78,TRUE,715.76,459,LEFT759,LEFT136,LEFT660,LEFT865
+183,2370,2012-01-14,Others,20213,0,16,10000100,240.76,721,TEST985,true,750.52,904,LEFT293,LEFT68,LEFT769,LEFT933
+184,1856,2012-01-14,FP-non GTC,15115,0,-99,10000743,466.68,506,TEST742,FALSE,132.53,344,LEFT739,LEFT437,LEFT258,LEFT918
+185,4372,2012-01-14,Auction,33038,15,12,10000756,643.12,223,TEST916,false,742.45,629,LEFT34,LEFT11,LEFT749,LEFT272
+186,2863,2012-01-14,ABIN,314,0,16,10000546,10.24,990,TEST899,False,176.46,729,LEFT74,LEFT481,LEFT159,LEFT226
+187,1446,2012-01-14,Auction,118687,3,5,10000664,806.68,61,TEST869,FALSE,251.11,15,LEFT612,LEFT705,LEFT421,LEFT691
+188,841,2012-01-14,Others,314,211,12,10000272,856.26,46,TEST297,True,317.0,78,LEFT642,LEFT246,LEFT32,LEFT335
+189,4691,2012-01-14,FP-GTC,1161,3,-99,10000902,928.73,686,TEST530,false,764.35,331,LEFT793,LEFT679,LEFT719,LEFT437
+190,2717,2012-01-14,FP-GTC,170083,3,15,10000555,755.76,520,TEST617,false,290.77,419,LEFT163,LEFT62,LEFT351,LEFT666
+191,1683,2012-01-14,Auction,40059,3,11,10000687,162.36,282,TEST44,True,727.64,961,LEFT897,LEFT652,LEFT869,LEFT532
+192,3080,2012-01-14,Others,32876,0,5,10000176,276.07,100,TEST455,false,557.04,914,LEFT735,LEFT558,LEFT148,LEFT127
+193,1777,2012-01-14,FP-GTC,3838,0,16,10000878,437.34,688,TEST113,TRUE,174.94,749,LEFT214,LEFT451,LEFT534,LEFT567
+194,3840,2012-01-15,FP-non GTC,53064,0,12,10000252,669.11,312,TEST876,False,820.7,102,LEFT213,LEFT988,LEFT830,LEFT273
+195,11,2012-01-15,ABIN,61323,0,12,10000420,658.82,782,TEST22,True,463.74,623,LEFT199,LEFT695,LEFT798,LEFT68
+196,3147,2012-01-15,ABIN,61323,0,13,10000219,983.53,484,TEST665,true,230.49,859,LEFT475,LEFT613,LEFT974,LEFT320
+197,4063,2012-01-15,ABIN,158798,0,16,10000777,82.5,504,TEST392,True,226.05,881,LEFT816,LEFT255,LEFT562,LEFT750
+198,3062,2012-01-15,Auction,161567,15,15,10000267,162.83,70,TEST15,False,598.19,518,LEFT560,LEFT998,LEFT360,LEFT771
+199,4092,2012-01-15,FP-non GTC,216,0,16,10000768,118.97,367,TEST466,false,232.38,787,LEFT980,LEFT409,LEFT30,LEFT360
+200,3992,2012-01-15,Others,57990,3,12,10000034,365.14,984,TEST246,True,887.22,911,LEFT661,LEFT698,LEFT982,LEFT560
+201,3890,2012-01-15,ABIN,4943,0,16,10000455,521.97,777,TEST338,True,299.87,166,LEFT87,LEFT302,LEFT696,LEFT871
+202,2630,2012-01-15,Auction,118687,3,13,10000689,221.27,339,TEST57,TRUE,848.11,302,LEFT325,LEFT573,LEFT340,LEFT993
+203,1835,2012-01-15,Others,50677,0,16,10000849,152.3,521,TEST819,TRUE,617.44,503,LEFT655,LEFT358,LEFT543,LEFT76
+204,640,2012-01-16,FP-GTC,15808,15,12,10000417,604.73,482,TEST4,TRUE,850.66,106,LEFT55,LEFT276,LEFT952,LEFT744
+205,4552,2012-01-16,Auction,15115,0,11,10000628,-16.03,585,TEST670,TRUE,638.34,900,LEFT178,LEFT602,LEFT405,LEFT388
+206,4762,2012-01-16,Auction,20213,0,15,10000517,164.32,9,TEST43,FALSE,74.88,762,LEFT592,LEFT332,LEFT886,LEFT564
+207,4116,2012-01-16,FP-non GTC,36250,0,16,10000946,732.84,614,TEST689,FALSE,678.65,478,LEFT514,LEFT166,LEFT492,LEFT410
+208,3191,2012-01-16,ABIN,15868,0,16,10000590,28.87,639,TEST841,False,766.41,619,LEFT396,LEFT633,LEFT500,LEFT811
+209,3169,2012-01-16,Auction,159184,0,15,10000114,37.8,133,TEST552,True,769.82,86,LEFT373,LEFT336,LEFT85,LEFT944
+210,361,2012-01-16,Others,139255,15,13,10000022,323.77,312,TEST942,FALSE,664.86,369,LEFT617,LEFT30,LEFT502,LEFT686
+211,1240,2012-01-16,Others,53064,0,14,10000118,779.72,815,TEST103,false,213.04,203,LEFT546,LEFT676,LEFT545,LEFT455
+212,264,2012-01-16,FP-non GTC,73506,0,13,10000025,440.7,299,TEST640,False,512.39,359,LEFT872,LEFT222,LEFT462,LEFT542
+213,3208,2012-01-16,ABIN,57990,3,13,10000692,-67.22,27,TEST952,False,424.5,173,LEFT519,LEFT725,LEFT498,LEFT344
+214,2650,2012-01-16,Auction,175750,0,-99,10000852,583.84,855,TEST810,false,571.51,38,LEFT311,LEFT420,LEFT817,LEFT559
+215,2107,2012-01-17,FP-non GTC,223,0,5,10000318,885.14,9,TEST869,TRUE,369.92,908,LEFT347,LEFT894,LEFT712,LEFT359
+216,78,2012-01-17,FP-non GTC,24760,0,5,10000356,22.54,770,TEST231,true,699.6,813,LEFT884,LEFT548,LEFT565,LEFT275
+217,508,2012-01-17,FP-non GTC,64076,0,16,10000230,271.58,935,TEST829,false,795.94,26,LEFT881,LEFT727,LEFT657,LEFT941
+218,2236,2012-01-17,FP-non GTC,16145,0,15,10000586,622.04,931,TEST994,True,474.19,86,LEFT426,LEFT127,LEFT489,LEFT152
+219,2144,2012-01-17,Auction,75665,0,5,10000602,889.79,323,TEST578,False,321.27,866,LEFT769,LEFT236,LEFT198,LEFT73
+220,3213,2012-01-17,Auction,87118,0,12,10000040,851.92,192,TEST148,TRUE,79.8,264,LEFT356,LEFT851,LEFT465,LEFT89
+221,1703,2012-01-17,FP-GTC,170302,15,13,10000808,980.54,909,TEST949,FALSE,136.27,207,LEFT739,LEFT672,LEFT47,LEFT622
+222,4747,2012-01-17,ABIN,15568,15,11,10000578,835.24,582,TEST963,FALSE,463.32,108,LEFT635,LEFT542,LEFT860,LEFT832
+223,196,2012-01-17,FP-non GTC,33038,15,5,10000188,887.47,396,TEST767,false,613.0,488,LEFT297,LEFT761,LEFT564,LEFT701
+224,4878,2012-01-17,Auction,63889,0,13,10000585,190.31,287,TEST224,false,661.69,155,LEFT887,LEFT478,LEFT814,LEFT379
+225,370,2012-01-17,FP-non GTC,175750,0,-99,10000913,403.54,581,TEST52,True,154.78,706,LEFT552,LEFT317,LEFT65,LEFT355
+226,4364,2012-01-17,FP-GTC,36250,0,13,10000332,603.67,7,TEST378,TRUE,413.9,959,LEFT450,LEFT93,LEFT502,LEFT993
+227,2636,2012-01-17,FP-non GTC,103178,15,-99,10000128,521.01,9,TEST130,False,492.22,742,LEFT614,LEFT183,LEFT624,LEFT777
+228,4217,2012-01-17,FP-GTC,75708,3,5,10000223,577.33,379,TEST84,TRUE,161.59,206,LEFT731,LEFT962,LEFT160,LEFT739
+229,1235,2012-01-17,FP-GTC,130,0,15,10000048,963.36,925,TEST54,True,684.64,503,LEFT954,LEFT934,LEFT312,LEFT276
+230,3050,2012-01-18,FP-GTC,4943,0,16,10000069,623.06,489,TEST397,False,150.63,341,LEFT756,LEFT338,LEFT780,LEFT470
+231,3316,2012-01-18,ABIN,145970,0,13,10000815,725.0,44,TEST510,false,28.13,505,LEFT159,LEFT719,LEFT444,LEFT139
+232,1085,2012-01-18,FP-GTC,155226,0,16,10000803,455.77,211,TEST160,true,697.53,511,LEFT818,LEFT108,LEFT826,LEFT443
+233,3796,2012-01-18,FP-non GTC,41940,0,14,10000518,-28.01,24,TEST362,false,758.48,770,LEFT921,LEFT246,LEFT122,LEFT719
+234,593,2012-01-18,FP-non GTC,57990,0,11,10000352,922.53,699,TEST258,false,586.12,897,LEFT375,LEFT693,LEFT230,LEFT155
+235,4677,2012-01-18,Others,33977,15,5,10000003,855.28,144,TEST28,false,799.08,568,LEFT901,LEFT965,LEFT462,LEFT721
+236,1435,2012-01-18,Auction,130,0,15,10000154,873.35,485,TEST858,TRUE,915.03,268,LEFT493,LEFT214,LEFT238,LEFT512
+237,4289,2012-01-18,ABIN,164261,0,14,10000344,117.24,12,TEST862,false,858.04,390,LEFT124,LEFT953,LEFT525,LEFT625
+238,4560,2012-01-18,Auction,53064,0,14,10000243,748.08,421,TEST371,false,868.04,975,LEFT27,LEFT147,LEFT744,LEFT625
+239,338,2012-01-18,Auction,533,0,15,10000077,942.29,537,TEST40,True,198.06,733,LEFT35,LEFT666,LEFT231,LEFT812
+240,4545,2012-01-18,Others,159184,0,5,10000481,433.18,22,TEST124,true,596.64,981,LEFT827,LEFT246,LEFT539,LEFT876
+241,2774,2012-01-18,ABIN,150047,3,-99,10000520,425.23,114,TEST161,TRUE,978.47,444,LEFT362,LEFT413,LEFT831,LEFT244
+242,2124,2012-01-18,FP-non GTC,121153,0,12,10000937,308.66,833,TEST195,True,935.19,577,LEFT774,LEFT535,LEFT822,LEFT333
+243,3984,2012-01-18,ABIN,57990,3,13,10000266,618.16,344,TEST386,False,270.9,231,LEFT982,LEFT164,LEFT904,LEFT139
+244,1866,2012-01-18,ABIN,156356,0,-99,10000413,373.52,622,TEST542,FALSE,562.5,726,LEFT678,LEFT404,LEFT790,LEFT718
+245,1882,2012-01-19,Auction,175750,0,11,10000666,374.02,446,TEST665,TRUE,744.39,475,LEFT978,LEFT17,LEFT882,LEFT814
+246,4879,2012-01-19,Auction,15687,0,16,10000079,-45.85,45,TEST875,true,869.71,922,LEFT236,LEFT878,LEFT633,LEFT187
+247,3367,2012-01-19,ABIN,20886,0,13,10000676,265.78,124,TEST342,FALSE,748.33,72,LEFT540,LEFT160,LEFT861,LEFT828
+248,3530,2012-01-19,FP-non GTC,533,0,11,10000925,428.25,612,TEST346,False,540.65,866,LEFT626,LEFT765,LEFT879,LEFT512
+249,1501,2012-01-19,FP-non GTC,88750,0,5,10000108,825.71,126,TEST202,True,539.84,600,LEFT510,LEFT563,LEFT627,LEFT754
+250,3583,2012-01-19,Auction,45238,101,12,10000365,160.1,924,TEST613,FALSE,895.09,503,LEFT626,LEFT525,LEFT410,LEFT460
+251,3689,2012-01-19,FP-GTC,314,211,16,10000981,79.85,604,TEST75,FALSE,950.24,288,LEFT800,LEFT928,LEFT141,LEFT549
+252,1104,2012-01-19,FP-non GTC,80135,0,16,10000711,136.46,579,TEST959,FALSE,40.79,939,LEFT290,LEFT209,LEFT314,LEFT381
+253,4609,2012-01-19,FP-non GTC,75708,3,13,10000631,236.53,503,TEST119,TRUE,722.99,666,LEFT926,LEFT422,LEFT561,LEFT528
+254,2274,2012-01-19,Others,175750,3,5,10000860,722.76,427,TEST10,false,496.23,509,LEFT77,LEFT169,LEFT569,LEFT641
+255,2549,2012-01-19,FP-non GTC,63861,0,-99,10000038,729.86,297,TEST365,false,416.63,685,LEFT579,LEFT119,LEFT18,LEFT393
+256,1604,2012-01-19,FP-GTC,216,0,13,10000723,608.98,624,TEST237,False,915.75,830,LEFT546,LEFT509,LEFT45,LEFT589
+257,2775,2012-01-19,FP-non GTC,20865,0,16,10000771,375.49,738,TEST800,False,968.72,501,LEFT585,LEFT312,LEFT370,LEFT271
+258,3111,2012-01-19,Auction,37831,0,14,10000846,503.72,543,TEST871,False,244.28,46,LEFT692,LEFT987,LEFT434,LEFT899
+259,4272,2012-01-20,Others,20485,0,11,10000469,517.67,209,TEST120,false,871.72,916,LEFT808,LEFT248,LEFT811,LEFT366
+260,4759,2012-01-20,FP-GTC,174106,3,12,10000544,634.88,815,TEST968,false,630.36,340,LEFT91,LEFT909,LEFT372,LEFT830
+261,3906,2012-01-20,FP-GTC,166013,15,14,10000646,525.11,886,TEST784,TRUE,155.72,481,LEFT286,LEFT145,LEFT273,LEFT75
+262,865,2012-01-20,Auction,44079,0,11,10000022,515.88,672,TEST969,false,438.38,998,LEFT199,LEFT270,LEFT845,LEFT241
+263,4626,2012-01-20,Auction,67698,0,13,10000709,78.96,486,TEST834,false,893.79,433,LEFT910,LEFT119,LEFT690,LEFT434
+264,4482,2012-01-20,ABIN,23446,23,12,10000857,704.45,681,TEST119,FALSE,356.42,594,LEFT486,LEFT722,LEFT911,LEFT784
+265,4512,2012-01-20,FP-non GTC,148324,15,15,10000500,710.45,591,TEST897,FALSE,697.4,903,LEFT721,LEFT831,LEFT212,LEFT66
+266,3437,2012-01-20,ABIN,150265,15,5,10000245,216.04,114,TEST945,FALSE,966.86,801,LEFT2,LEFT950,LEFT777,LEFT461
+267,1536,2012-01-20,FP-non GTC,80135,0,13,10000063,74.44,45,TEST866,True,834.82,254,LEFT40,LEFT567,LEFT903,LEFT470
+268,1791,2012-01-20,Others,13987,0,16,10000956,743.75,92,TEST651,FALSE,952.84,778,LEFT448,LEFT92,LEFT237,LEFT334
+269,890,2012-01-20,FP-GTC,82494,15,15,10000963,-91.26,541,TEST270,true,569.8,16,LEFT762,LEFT503,LEFT610,LEFT192
+270,794,2012-01-20,Auction,67698,0,14,10000238,621.83,745,TEST291,False,368.67,551,LEFT970,LEFT887,LEFT61,LEFT988
+271,139,2012-01-20,FP-GTC,34273,100,5,10000423,800.65,25,TEST83,TRUE,36.06,92,LEFT928,LEFT835,LEFT210,LEFT899
+272,1044,2012-01-21,Auction,33038,15,14,10000455,224.8,799,TEST917,True,900.26,866,LEFT254,LEFT220,LEFT600,LEFT756
+273,1625,2012-01-21,ABIN,57784,0,5,10000022,853.22,311,TEST197,true,899.34,689,LEFT599,LEFT870,LEFT434,LEFT506
+274,2536,2012-01-21,FP-non GTC,12688,0,15,10000775,332.41,558,TEST872,FALSE,594.59,335,LEFT106,LEFT879,LEFT826,LEFT287
+275,3597,2012-01-21,Others,43398,0,-99,10000129,83.17,896,TEST935,TRUE,555.06,60,LEFT79,LEFT816,LEFT56,LEFT497
+276,1670,2012-01-21,Auction,165888,0,16,10000207,496.72,425,TEST928,False,909.88,427,LEFT422,LEFT377,LEFT892,LEFT553
+277,219,2012-01-21,FP-GTC,16509,0,5,10000993,-11.45,86,TEST280,false,340.88,550,LEFT353,LEFT173,LEFT182,LEFT135
+278,2688,2012-01-21,FP-GTC,20485,101,16,10000956,197.97,450,TEST52,TRUE,965.8,969,LEFT970,LEFT449,LEFT832,LEFT538
+279,2443,2012-01-21,FP-GTC,66767,15,13,10000554,-82.87,430,TEST538,FALSE,859.02,168,LEFT890,LEFT55,LEFT277,LEFT583
+280,3497,2012-01-21,FP-non GTC,3838,0,14,10000574,680.45,157,TEST902,True,242.28,204,LEFT665,LEFT237,LEFT549,LEFT122
+281,2729,2012-01-21,ABIN,139255,15,15,10000548,960.37,118,TEST655,True,297.87,818,LEFT796,LEFT451,LEFT479,LEFT763
+282,300,2012-01-21,Others,145970,0,15,10000266,980.1,213,TEST18,FALSE,492.13,72,LEFT101,LEFT735,LEFT908,LEFT537
+283,4387,2012-01-21,FP-non GTC,61323,0,13,10000651,259.85,749,TEST701,False,630.9,716,LEFT31,LEFT1,LEFT208,LEFT124
+284,3317,2012-01-21,FP-non GTC,2023,0,14,10000440,814.39,867,TEST239,True,645.79,636,LEFT289,LEFT434,LEFT116,LEFT264
+285,1806,2012-01-22,Others,31673,0,-99,10000936,254.95,863,TEST347,True,486.11,680,LEFT223,LEFT228,LEFT705,LEFT749
+286,3096,2012-01-22,ABIN,67698,2,5,10000156,673.39,812,TEST899,true,611.21,940,LEFT726,LEFT923,LEFT755,LEFT426
+287,1091,2012-01-22,ABIN,1161,3,13,10000264,538.62,654,TEST586,True,966.8,482,LEFT309,LEFT931,LEFT484,LEFT652
+288,901,2012-01-22,Others,10866,0,5,10000818,811.15,294,TEST739,true,353.6,575,LEFT770,LEFT903,LEFT301,LEFT72
+289,254,2012-01-22,Others,165888,0,13,10000254,150.09,770,TEST825,FALSE,659.43,130,LEFT828,LEFT919,LEFT95,LEFT576
+290,3861,2012-01-22,Others,87118,0,5,10000198,175.35,909,TEST141,TRUE,757.73,910,LEFT111,LEFT522,LEFT765,LEFT827
+291,308,2012-01-22,FP-non GTC,99985,0,5,10000783,783.02,137,TEST155,false,397.27,814,LEFT73,LEFT280,LEFT418,LEFT926
+292,1601,2012-01-22,ABIN,103324,15,15,10000296,501.4,165,TEST777,True,569.78,16,LEFT776,LEFT433,LEFT369,LEFT414
+293,1976,2012-01-22,ABIN,148324,15,-99,10000239,154.26,471,TEST137,false,971.92,235,LEFT138,LEFT934,LEFT930,LEFT823
+294,679,2012-01-22,ABIN,170302,15,11,10000500,901.22,496,TEST488,FALSE,681.46,628,LEFT821,LEFT574,LEFT608,LEFT225
+295,4953,2012-01-22,Others,174053,3,-99,10000076,51.23,9,TEST722,False,488.1,262,LEFT981,LEFT582,LEFT772,LEFT410
+296,4244,2012-01-22,FP-GTC,99985,0,-99,10000314,850.9,873,TEST688,TRUE,90.29,708,LEFT30,LEFT776,LEFT355,LEFT77
+297,962,2012-01-22,FP-non GTC,156356,0,-99,10000678,603.45,331,TEST618,TRUE,17.05,523,LEFT853,LEFT158,LEFT578,LEFT9
+298,2356,2012-01-22,FP-GTC,35570,100,13,10000437,761.8,476,TEST804,True,559.84,52,LEFT115,LEFT270,LEFT704,LEFT442
+299,4536,2012-01-23,Auction,12688,0,5,10000578,833.65,195,TEST196,True,23.9,877,LEFT715,LEFT176,LEFT949,LEFT744
+300,1632,2012-01-23,FP-GTC,53064,0,13,10000698,906.45,458,TEST970,FALSE,103.23,559,LEFT334,LEFT111,LEFT400,LEFT332
+301,1960,2012-01-23,FP-GTC,67698,2,14,10000762,549.38,22,TEST203,false,673.89,223,LEFT975,LEFT518,LEFT23,LEFT509
+302,3716,2012-01-23,Others,140746,100,14,10000802,695.03,458,TEST550,False,852.86,406,LEFT593,LEFT804,LEFT257,LEFT56
+303,4059,2012-01-23,FP-GTC,66767,15,11,10000883,950.66,84,TEST551,False,482.16,934,LEFT599,LEFT563,LEFT244,LEFT883
+304,3540,2012-01-23,Auction,13836,0,-99,10000820,-85.18,870,TEST953,False,259.06,312,LEFT66,LEFT423,LEFT72,LEFT296
+305,8,2012-01-23,Others,20485,0,13,10000135,665.93,130,TEST689,true,279.91,922,LEFT464,LEFT173,LEFT129,LEFT39
+306,1272,2012-01-23,FP-GTC,75665,0,13,10000813,751.17,730,TEST537,FALSE,717.59,530,LEFT352,LEFT50,LEFT985,LEFT842
+307,4523,2012-01-23,Others,130,0,5,10000944,316.45,914,TEST828,false,56.98,887,LEFT474,LEFT789,LEFT327,LEFT21
+308,4631,2012-01-23,Others,26262,0,11,10000322,478.98,543,TEST482,TRUE,644.51,487,LEFT645,LEFT905,LEFT764,LEFT146
+309,3468,2012-01-23,Others,64076,0,14,10000732,-49.15,304,TEST360,False,87.58,28,LEFT401,LEFT980,LEFT124,LEFT391
+310,1907,2012-01-23,Others,80287,0,15,10000383,17.96,241,TEST649,True,735.62,88,LEFT933,LEFT914,LEFT924,LEFT232
+311,1907,2012-01-24,ABIN,223,0,-99,10000492,555.05,195,TEST443,True,169.7,929,LEFT555,LEFT551,LEFT275,LEFT316
+312,2039,2012-01-24,Others,37831,0,14,10000315,982.75,632,TEST38,TRUE,443.74,487,LEFT198,LEFT606,LEFT195,LEFT805
+313,4141,2012-01-24,Auction,95672,0,-99,10000496,914.26,645,TEST880,FALSE,297.68,764,LEFT447,LEFT786,LEFT488,LEFT883
+314,3182,2012-01-24,Auction,150047,3,15,10000706,581.58,708,TEST651,True,789.49,838,LEFT976,LEFT937,LEFT924,LEFT587
+315,172,2012-01-24,FP-GTC,31519,3,14,10000962,229.43,714,TEST763,FALSE,582.46,754,LEFT871,LEFT203,LEFT802,LEFT946
+316,690,2012-01-24,FP-non GTC,6762,0,16,10000856,659.09,332,TEST534,false,913.47,159,LEFT754,LEFT517,LEFT61,LEFT119
+317,257,2012-01-24,FP-GTC,44079,0,14,10000382,372.52,666,TEST694,False,24.98,901,LEFT770,LEFT822,LEFT716,LEFT211
+318,1672,2012-01-24,ABIN,15808,15,13,10000232,246.94,291,TEST329,true,706.98,860,LEFT232,LEFT439,LEFT197,LEFT478
+319,4442,2012-01-24,Others,20213,0,16,10000440,348.55,792,TEST378,False,466.78,429,LEFT18,LEFT736,LEFT342,LEFT690
+320,2958,2012-01-24,FP-GTC,31673,0,5,10000395,492.85,331,TEST615,FALSE,547.09,946,LEFT942,LEFT239,LEFT155,LEFT329
+321,3617,2012-01-24,Others,57784,0,11,10000239,519.37,161,TEST355,TRUE,207.22,971,LEFT733,LEFT503,LEFT754,LEFT938
+322,4714,2012-01-24,Others,10058,3,15,10000558,136.53,68,TEST490,TRUE,862.9,731,LEFT254,LEFT790,LEFT867,LEFT477
+323,3946,2012-01-24,FP-non GTC,113593,15,15,10000283,602.71,14,TEST727,True,768.17,79,LEFT958,LEFT330,LEFT97,LEFT430
+324,3700,2012-01-24,Auction,13836,0,12,10000308,806.93,761,TEST51,FALSE,663.78,398,LEFT326,LEFT923,LEFT832,LEFT669
+325,2738,2012-01-24,Others,82494,15,11,10000094,505.02,699,TEST965,FALSE,664.06,169,LEFT736,LEFT720,LEFT118,LEFT684
+326,3504,2012-01-24,FP-non GTC,148324,15,15,10000513,333.61,163,TEST125,FALSE,53.88,964,LEFT874,LEFT37,LEFT585,LEFT609
+327,2998,2012-01-24,ABIN,161567,15,13,10000073,745.83,393,TEST329,false,769.52,959,LEFT344,LEFT911,LEFT511,LEFT502
+328,2006,2012-01-24,Auction,165888,0,13,10000673,543.81,316,TEST223,FALSE,527.69,962,LEFT29,LEFT633,LEFT80,LEFT67
+329,1318,2012-01-25,ABIN,165888,0,12,10000758,833.39,142,TEST72,FALSE,369.47,553,LEFT545,LEFT511,LEFT904,LEFT243
+330,2243,2012-01-25,Others,61323,0,15,10000211,382.25,948,TEST629,TRUE,378.51,262,LEFT733,LEFT320,LEFT887,LEFT285
+331,1767,2012-01-25,FP-non GTC,13987,0,15,10000102,229.82,791,TEST443,TRUE,656.0,377,LEFT226,LEFT300,LEFT203,LEFT475
+332,2841,2012-01-25,FP-non GTC,139255,15,12,10000625,472.4,931,TEST820,true,99.93,296,LEFT801,LEFT157,LEFT860,LEFT40
+333,2701,2012-01-25,FP-non GTC,10866,0,16,10000376,998.37,636,TEST841,True,124.33,735,LEFT297,LEFT68,LEFT729,LEFT764
+334,1827,2012-01-25,ABIN,30059,3,15,10000930,547.02,157,TEST784,False,58.77,111,LEFT516,LEFT141,LEFT559,LEFT713
+335,4086,2012-01-25,FP-GTC,118687,3,-99,10000822,20.79,277,TEST64,FALSE,252.83,238,LEFT66,LEFT262,LEFT646,LEFT201
+336,4222,2012-01-25,Auction,118687,3,11,10000429,496.05,366,TEST860,TRUE,324.52,626,LEFT378,LEFT547,LEFT399,LEFT259
+337,1149,2012-01-25,FP-non GTC,156614,0,11,10000657,943.26,511,TEST223,True,770.25,202,LEFT562,LEFT703,LEFT498,LEFT142
+338,4954,2012-01-25,Others,20213,0,13,10000158,909.27,458,TEST186,true,693.74,635,LEFT613,LEFT877,LEFT916,LEFT328
+339,4375,2012-01-25,ABIN,158798,0,12,10000306,893.93,75,TEST389,True,993.15,100,LEFT50,LEFT909,LEFT783,LEFT330
+340,1539,2012-01-25,FP-GTC,16509,0,13,10000123,982.19,822,TEST686,false,156.48,889,LEFT639,LEFT129,LEFT649,LEFT437
+341,1308,2012-01-26,Others,106340,15,5,10000088,13.1,592,TEST438,False,781.37,87,LEFT38,LEFT186,LEFT695,LEFT146
+342,3420,2012-01-26,FP-non GTC,64076,0,12,10000996,173.71,582,TEST536,FALSE,712.26,266,LEFT434,LEFT37,LEFT871,LEFT696
+343,1786,2012-01-26,Auction,533,0,11,10000573,924.2,943,TEST671,TRUE,708.36,102,LEFT953,LEFT571,LEFT220,LEFT200
+344,2135,2012-01-26,Auction,1504,0,16,10000465,354.98,369,TEST293,True,41.36,512,LEFT508,LEFT397,LEFT877,LEFT941
+345,2781,2012-01-26,FP-GTC,2023,0,16,10000582,956.2,575,TEST697,TRUE,496.49,891,LEFT987,LEFT590,LEFT931,LEFT38
+346,3754,2012-01-26,FP-non GTC,6762,0,12,10000579,156.15,50,TEST46,false,789.04,892,LEFT735,LEFT240,LEFT519,LEFT789
+347,815,2012-01-26,Others,174106,3,14,10000022,-5.95,134,TEST553,True,936.94,16,LEFT735,LEFT314,LEFT606,LEFT523
+348,3170,2012-01-26,Others,108782,15,15,10000458,459.64,289,TEST458,TRUE,248.75,887,LEFT868,LEFT203,LEFT536,LEFT173
+349,1343,2012-01-26,FP-non GTC,20865,0,15,10000213,424.53,340,TEST851,True,412.67,197,LEFT275,LEFT121,LEFT141,LEFT628
+350,494,2012-01-26,Auction,165888,0,16,10000970,27.76,350,TEST673,False,603.99,472,LEFT369,LEFT611,LEFT812,LEFT714
+351,3813,2012-01-26,ABIN,95672,0,11,10000024,-51.7,33,TEST609,true,706.31,33,LEFT125,LEFT35,LEFT947,LEFT120
+352,1002,2012-01-26,FP-non GTC,10058,3,-99,10000840,745.85,203,TEST210,true,783.58,699,LEFT344,LEFT219,LEFT249,LEFT180
+353,3622,2012-01-26,FP-GTC,94847,0,13,10000763,707.45,684,TEST379,False,433.86,887,LEFT696,LEFT724,LEFT144,LEFT936
+354,577,2012-01-26,Auction,174053,3,5,10000989,609.9,714,TEST808,true,553.24,954,LEFT133,LEFT756,LEFT897,LEFT925
+355,2680,2012-01-26,FP-non GTC,15115,0,5,10000780,483.37,68,TEST632,False,470.62,628,LEFT747,LEFT946,LEFT980,LEFT858
+356,1074,2012-01-26,Others,166013,15,5,10000375,542.22,335,TEST43,False,219.22,251,LEFT761,LEFT998,LEFT303,LEFT329
+357,2987,2012-01-27,FP-non GTC,46575,0,15,10000480,2.55,863,TEST114,FALSE,605.28,47,LEFT829,LEFT827,LEFT153,LEFT422
+358,3928,2012-01-27,Auction,48027,0,16,10000194,692.07,263,TEST285,false,381.74,106,LEFT59,LEFT328,LEFT867,LEFT870
+359,733,2012-01-27,FP-GTC,88750,0,12,10000552,572.93,122,TEST325,false,260.18,677,LEFT499,LEFT551,LEFT527,LEFT186
+360,2893,2012-01-27,FP-non GTC,963,0,14,10000546,605.6,193,TEST608,TRUE,65.95,54,LEFT463,LEFT587,LEFT948,LEFT913
+361,2559,2012-01-27,ABIN,45238,101,11,10000890,809.66,806,TEST225,true,749.55,950,LEFT199,LEFT206,LEFT489,LEFT345
+362,29,2012-01-27,Others,95672,0,16,10000188,907.07,102,TEST882,TRUE,626.75,9,LEFT21,LEFT312,LEFT466,LEFT132
+363,3026,2012-01-27,FP-non GTC,6762,0,5,10000321,682.03,468,TEST782,FALSE,315.07,829,LEFT250,LEFT360,LEFT31,LEFT714
+364,624,2012-01-27,FP-non GTC,26249,0,15,10000796,314.08,122,TEST731,false,217.98,872,LEFT422,LEFT514,LEFT116,LEFT213
+365,3272,2012-01-27,ABIN,67698,2,13,10000098,65.92,547,TEST692,true,759.92,276,LEFT130,LEFT997,LEFT642,LEFT745
+366,1554,2012-01-27,ABIN,166013,15,13,10000595,412.21,884,TEST375,FALSE,768.55,671,LEFT479,LEFT111,LEFT372,LEFT172
+367,1711,2012-01-27,ABIN,95672,3,15,10000684,545.78,936,TEST938,true,591.77,202,LEFT559,LEFT625,LEFT775,LEFT248
+368,726,2012-01-27,FP-GTC,106246,0,12,10000204,684.24,571,TEST562,false,277.57,891,LEFT906,LEFT547,LEFT65,LEFT667
+369,1397,2012-01-27,FP-non GTC,43398,0,13,10000423,433.06,176,TEST917,false,985.77,357,LEFT896,LEFT600,LEFT415,LEFT836
+370,1840,2012-01-27,FP-non GTC,65,0,11,10000902,-85.16,698,TEST767,False,950.56,560,LEFT141,LEFT690,LEFT240,LEFT943
+371,4699,2012-01-27,FP-GTC,63864,3,11,10000835,9.47,438,TEST485,True,146.57,878,LEFT76,LEFT398,LEFT606,LEFT646
+372,557,2012-01-27,FP-GTC,95672,0,15,10000358,290.52,176,TEST866,true,807.65,554,LEFT80,LEFT564,LEFT407,LEFT863
+373,2388,2012-01-27,Auction,139973,3,11,10000761,631.59,697,TEST230,false,633.82,12,LEFT76,LEFT404,LEFT76,LEFT125
+374,2294,2012-01-27,Others,63889,0,14,10000383,117.53,589,TEST914,FALSE,258.25,213,LEFT411,LEFT981,LEFT813,LEFT6
+375,3269,2012-01-27,Auction,51582,0,14,10000243,84.09,926,TEST120,FALSE,509.71,586,LEFT2,LEFT895,LEFT27,LEFT69
+376,2893,2012-01-27,FP-non GTC,155226,0,5,10000850,204.38,197,TEST168,True,457.22,257,LEFT376,LEFT878,LEFT831,LEFT461
+377,1365,2012-01-27,FP-GTC,87118,0,14,10000584,193.58,542,TEST423,true,945.26,955,LEFT189,LEFT497,LEFT28,LEFT49
+378,1476,2012-01-27,Auction,145970,0,11,10000633,530.77,454,TEST14,false,192.67,630,LEFT605,LEFT510,LEFT800,LEFT548
+379,4480,2012-01-27,Others,0,3,13,10000889,853.37,701,TEST964,TRUE,394.74,48,LEFT593,LEFT874,LEFT338,LEFT514
+380,2137,2012-01-28,Auction,132939,0,5,10000172,439.87,80,TEST103,true,423.64,736,LEFT306,LEFT483,LEFT234,LEFT710
+381,1867,2012-01-28,FP-GTC,46575,0,-99,10000395,980.44,584,TEST344,false,789.36,708,LEFT958,LEFT8,LEFT257,LEFT870
+382,4479,2012-01-28,ABIN,314,0,13,10000200,603.25,912,TEST494,true,248.45,853,LEFT708,LEFT792,LEFT148,LEFT521
+383,361,2012-01-28,Auction,314,211,15,10000189,-29.49,935,TEST723,true,64.19,114,LEFT348,LEFT935,LEFT887,LEFT73
+384,2726,2012-01-28,FP-GTC,165888,0,14,10000231,607.2,466,TEST107,True,879.4,919,LEFT604,LEFT974,LEFT236,LEFT933
+385,1727,2012-01-28,FP-GTC,13987,0,16,10000148,546.33,453,TEST603,False,156.52,959,LEFT194,LEFT794,LEFT957,LEFT358
+386,3639,2012-01-28,Others,158666,15,15,10000900,108.21,280,TEST109,FALSE,946.71,718,LEFT946,LEFT7,LEFT329,LEFT207
+387,2928,2012-01-28,ABIN,12688,0,-99,10000094,5.82,734,TEST516,False,514.51,889,LEFT43,LEFT516,LEFT983,LEFT582
+388,232,2012-01-28,Auction,32876,0,16,10000046,433.86,115,TEST324,FALSE,769.1,763,LEFT429,LEFT910,LEFT714,LEFT21
+389,872,2012-01-28,Others,26249,0,13,10000552,341.96,479,TEST770,True,776.14,353,LEFT997,LEFT556,LEFT664,LEFT570
+390,3444,2012-01-28,Others,106340,15,11,10000196,545.72,838,TEST667,TRUE,500.41,482,LEFT682,LEFT290,LEFT859,LEFT955
+391,3065,2012-01-28,FP-non GTC,139255,15,-99,10000165,604.72,208,TEST153,FALSE,628.4,397,LEFT370,LEFT97,LEFT479,LEFT75
+392,1644,2012-01-29,Auction,106340,15,-99,10000737,282.82,153,TEST742,true,618.91,149,LEFT625,LEFT472,LEFT729,LEFT937
+393,1107,2012-01-29,ABIN,50677,0,15,10000108,19.3,390,TEST872,true,762.73,381,LEFT221,LEFT903,LEFT347,LEFT554
+394,3512,2012-01-29,Auction,48027,0,15,10000715,131.72,712,TEST974,True,44.92,659,LEFT231,LEFT442,LEFT278,LEFT609
+395,3294,2012-01-29,FP-GTC,16145,3,12,10000174,810.58,183,TEST222,True,722.82,238,LEFT399,LEFT366,LEFT20,LEFT826
+396,4256,2012-01-29,FP-non GTC,73506,0,5,10000120,174.42,85,TEST717,FALSE,659.48,788,LEFT970,LEFT976,LEFT909,LEFT415
+397,4242,2012-01-29,ABIN,175750,3,-99,10000027,721.97,558,TEST95,True,718.42,721,LEFT279,LEFT987,LEFT808,LEFT704
+398,1149,2012-01-29,FP-non GTC,67703,3,12,10000154,234.95,237,TEST508,True,377.24,938,LEFT327,LEFT725,LEFT715,LEFT636
+399,2115,2012-01-29,Auction,66767,15,11,10000241,691.66,929,TEST152,false,151.16,437,LEFT137,LEFT600,LEFT32,LEFT396
+400,4383,2012-01-29,FP-GTC,15687,0,5,10000303,992.82,242,TEST998,FALSE,32.55,953,LEFT143,LEFT349,LEFT578,LEFT665
+401,4916,2012-01-30,ABIN,103178,15,15,10000669,987.68,787,TEST165,true,711.76,280,LEFT254,LEFT236,LEFT325,LEFT180
+402,295,2012-01-30,ABIN,158798,0,14,10000178,-66.95,117,TEST989,FALSE,123.93,940,LEFT211,LEFT983,LEFT730,LEFT425
+403,2589,2012-01-30,FP-GTC,87118,0,11,10000839,56.92,464,TEST840,False,120.36,947,LEFT987,LEFT106,LEFT374,LEFT539
+404,2801,2012-01-30,ABIN,31519,0,11,10000366,-17.63,242,TEST873,false,755.34,425,LEFT595,LEFT718,LEFT443,LEFT890
+405,634,2012-01-30,FP-non GTC,113593,15,12,10000810,322.73,33,TEST459,false,193.12,287,LEFT199,LEFT228,LEFT477,LEFT434
+406,4412,2012-01-30,Auction,216,0,13,10000483,909.76,514,TEST709,true,410.64,611,LEFT126,LEFT47,LEFT804,LEFT527
+407,2831,2012-01-30,FP-non GTC,15687,0,15,10000504,147.06,276,TEST659,False,795.04,11,LEFT312,LEFT32,LEFT725,LEFT258
+408,3278,2012-01-30,Auction,161567,15,5,10000212,-47.94,47,TEST475,false,527.9,983,LEFT421,LEFT173,LEFT724,LEFT538
+409,2305,2012-01-30,Others,103324,15,14,10000188,-68.31,536,TEST853,False,384.29,662,LEFT408,LEFT200,LEFT294,LEFT568
+410,2064,2012-01-30,ABIN,15808,15,-99,10000502,776.4,210,TEST711,TRUE,123.98,288,LEFT991,LEFT705,LEFT731,LEFT5
+411,395,2012-01-30,FP-non GTC,61323,0,13,10000225,-29.55,764,TEST991,TRUE,471.53,566,LEFT417,LEFT663,LEFT969,LEFT796
+412,1931,2012-01-30,Auction,34273,100,-99,10000952,458.28,435,TEST391,False,25.96,783,LEFT360,LEFT606,LEFT774,LEFT310
+413,4625,2012-01-30,ABIN,132939,0,5,10000121,671.28,156,TEST967,FALSE,281.68,206,LEFT246,LEFT175,LEFT442,LEFT75
+414,4414,2012-01-30,FP-GTC,24760,0,15,10000812,251.89,260,TEST557,False,511.95,95,LEFT725,LEFT909,LEFT400,LEFT519
+415,1722,2012-01-30,ABIN,166013,15,16,10000058,518.34,820,TEST692,False,569.41,820,LEFT658,LEFT689,LEFT919,LEFT849
+416,1221,2012-01-30,Others,50508,0,11,10000275,255.99,325,TEST372,TRUE,784.07,888,LEFT702,LEFT147,LEFT143,LEFT703
+417,1545,2012-01-30,ABIN,164261,0,5,10000703,-35.4,226,TEST777,false,956.29,569,LEFT646,LEFT917,LEFT797,LEFT465
+418,3520,2012-01-30,Others,80135,0,11,10000449,303.2,829,TEST899,False,766.67,491,LEFT135,LEFT523,LEFT9,LEFT95
+419,360,2012-01-30,FP-non GTC,15115,0,11,10000430,244.39,665,TEST172,True,64.09,753,LEFT874,LEFT172,LEFT998,LEFT773
+420,355,2012-01-31,Others,223,0,15,10000237,678.97,177,TEST362,TRUE,78.52,969,LEFT406,LEFT824,LEFT596,LEFT981
+421,4044,2012-01-31,Auction,16145,0,5,10000579,942.62,199,TEST57,false,395.84,754,LEFT691,LEFT766,LEFT949,LEFT458
+422,303,2012-01-31,ABIN,15868,0,14,10000313,384.66,558,TEST20,TRUE,432.35,152,LEFT693,LEFT936,LEFT869,LEFT660
+423,3175,2012-01-31,Others,113802,15,11,10000340,773.95,999,TEST816,False,598.1,780,LEFT913,LEFT690,LEFT515,LEFT659
+424,880,2012-01-31,ABIN,12688,0,12,10000962,612.6,458,TEST566,TRUE,32.51,4,LEFT230,LEFT38,LEFT980,LEFT343
+425,2644,2012-01-31,FP-GTC,41940,0,11,10000330,-24.78,651,TEST66,true,267.66,178,LEFT854,LEFT501,LEFT912,LEFT304
+426,438,2012-01-31,FP-non GTC,16145,3,16,10000061,215.17,628,TEST213,TRUE,963.95,959,LEFT326,LEFT442,LEFT261,LEFT954
+427,4582,2012-01-31,FP-GTC,25147,0,16,10000778,684.56,859,TEST865,TRUE,635.54,375,LEFT460,LEFT307,LEFT677,LEFT344
+428,3773,2012-01-31,ABIN,67703,3,12,10000369,868.52,966,TEST701,true,199.16,559,LEFT247,LEFT238,LEFT393,LEFT434
+429,2793,2012-01-31,FP-non GTC,31519,0,16,10000216,570.83,370,TEST950,TRUE,813.35,172,LEFT268,LEFT156,LEFT135,LEFT909
+430,345,2012-01-31,FP-GTC,43972,100,15,10000921,278.53,715,TEST589,TRUE,552.13,756,LEFT142,LEFT397,LEFT801,LEFT141
+431,4133,2012-01-31,Auction,43398,0,12,10000113,968.15,532,TEST568,True,936.23,547,LEFT555,LEFT478,LEFT784,LEFT321
+432,2949,2012-01-31,ABIN,2023,0,-99,10000009,938.53,94,TEST654,FALSE,290.66,391,LEFT180,LEFT931,LEFT686,LEFT284
+433,1742,2012-01-31,Auction,1357,0,-99,10000039,275.37,891,TEST165,true,817.29,606,LEFT825,LEFT598,LEFT327,LEFT291
+434,2027,2012-02-01,ABIN,40059,3,-99,10000405,855.43,792,TEST734,False,8.33,747,LEFT772,LEFT623,LEFT588,LEFT267
+435,3880,2012-02-01,FP-GTC,67698,2,-99,10000747,987.03,748,TEST906,True,365.83,60,LEFT140,LEFT191,LEFT973,LEFT158
+436,530,2012-02-01,FP-non GTC,20213,0,5,10000384,867.86,473,TEST7,false,643.46,319,LEFT222,LEFT428,LEFT640,LEFT668
+437,1305,2012-02-01,FP-GTC,38238,0,15,10000415,116.09,730,TEST722,FALSE,767.08,708,LEFT538,LEFT208,LEFT664,LEFT694
+438,4605,2012-02-01,FP-non GTC,67703,3,16,10000830,378.11,458,TEST861,TRUE,220.42,225,LEFT334,LEFT974,LEFT182,LEFT766
+439,1598,2012-02-01,FP-GTC,165888,0,-99,10000961,693.87,757,TEST700,TRUE,288.69,741,LEFT73,LEFT994,LEFT598,LEFT96
+440,2254,2012-02-01,ABIN,94847,0,14,10000818,22.35,532,TEST65,True,382.66,847,LEFT320,LEFT685,LEFT834,LEFT432
+441,1021,2012-02-01,FP-non GTC,0,3,-99,10000020,795.18,736,TEST334,TRUE,898.37,859,LEFT664,LEFT551,LEFT423,LEFT574
+442,98,2012-02-01,Others,175750,3,15,10000937,-94.32,203,TEST396,false,586.69,415,LEFT273,LEFT516,LEFT52,LEFT634
+443,932,2012-02-01,FP-GTC,35570,100,5,10000921,-61.95,607,TEST303,False,459.17,943,LEFT436,LEFT645,LEFT926,LEFT85
+444,804,2012-02-01,Others,99985,0,11,10000842,685.2,576,TEST824,true,546.41,784,LEFT337,LEFT466,LEFT121,LEFT905
+445,486,2012-02-01,FP-non GTC,24760,0,-99,10000517,558.66,402,TEST140,false,946.42,678,LEFT472,LEFT827,LEFT750,LEFT969
+446,1799,2012-02-01,ABIN,158666,15,14,10000171,609.12,809,TEST498,true,179.47,217,LEFT65,LEFT756,LEFT181,LEFT521
+447,1875,2012-02-01,ABIN,46575,0,13,10000261,-15.13,670,TEST31,False,752.56,3,LEFT82,LEFT124,LEFT535,LEFT861
+448,1308,2012-02-02,Others,64076,0,-99,10000864,543.84,623,TEST466,False,870.94,643,LEFT371,LEFT31,LEFT664,LEFT63
+449,1600,2012-02-02,FP-GTC,75665,0,12,10000089,708.91,575,TEST840,False,62.88,537,LEFT352,LEFT496,LEFT868,LEFT101
+450,816,2012-02-02,Others,53064,0,15,10000400,463.26,595,TEST80,False,888.41,797,LEFT680,LEFT156,LEFT235,LEFT648
+451,4195,2012-02-02,Auction,61323,0,-99,10000431,645.82,224,TEST734,True,740.99,770,LEFT477,LEFT78,LEFT149,LEFT717
+452,1781,2012-02-02,FP-GTC,87118,0,16,10000671,886.2,804,TEST426,True,581.95,753,LEFT807,LEFT375,LEFT249,LEFT621
+453,4436,2012-02-02,FP-GTC,31519,3,16,10000524,901.36,42,TEST509,FALSE,315.29,904,LEFT508,LEFT21,LEFT583,LEFT955
+454,2854,2012-02-02,Auction,95173,0,16,10000326,577.62,250,TEST436,True,20.06,279,LEFT39,LEFT862,LEFT380,LEFT654
+455,4530,2012-02-02,FP-GTC,6762,0,11,10000728,671.87,867,TEST584,False,333.78,492,LEFT908,LEFT813,LEFT104,LEFT496
+456,2100,2012-02-02,FP-GTC,139973,3,16,10000978,530.83,103,TEST948,True,205.46,821,LEFT315,LEFT519,LEFT337,LEFT481
+457,3775,2012-02-02,FP-non GTC,15687,0,5,10000767,972.43,880,TEST281,TRUE,701.37,682,LEFT310,LEFT797,LEFT660,LEFT503
+458,2388,2012-02-02,FP-non GTC,36250,0,5,10000413,-36.7,967,TEST186,false,252.04,121,LEFT759,LEFT309,LEFT821,LEFT665
+459,1878,2012-02-02,Auction,63889,0,11,10000112,801.4,293,TEST10,FALSE,825.42,549,LEFT902,LEFT811,LEFT872,LEFT589
+460,3883,2012-02-02,FP-GTC,34273,100,15,10000594,735.22,658,TEST328,FALSE,377.91,630,LEFT98,LEFT69,LEFT319,LEFT778
+461,665,2012-02-02,ABIN,159184,0,15,10000669,597.78,963,TEST143,true,200.06,104,LEFT868,LEFT971,LEFT657,LEFT452
+462,577,2012-02-02,FP-non GTC,103324,15,16,10000877,955.79,555,TEST94,false,371.17,688,LEFT290,LEFT928,LEFT570,LEFT436
+463,2426,2012-02-02,ABIN,20213,0,12,10000735,54.52,974,TEST892,TRUE,613.68,345,LEFT995,LEFT719,LEFT625,LEFT428
+464,990,2012-02-03,Auction,164,0,15,10000502,-91.31,820,TEST420,false,95.53,753,LEFT430,LEFT442,LEFT945,LEFT14
+465,4007,2012-02-03,FP-GTC,20886,0,14,10000953,442.13,77,TEST864,true,906.95,404,LEFT204,LEFT907,LEFT291,LEFT244
+466,3688,2012-02-03,ABIN,32876,0,16,10000572,240.81,134,TEST823,false,346.58,298,LEFT299,LEFT118,LEFT332,LEFT777
+467,3544,2012-02-03,Others,80135,0,16,10000594,285.73,567,TEST753,FALSE,591.75,240,LEFT619,LEFT951,LEFT61,LEFT970
+468,1390,2012-02-03,ABIN,63889,0,5,10000400,741.06,631,TEST713,True,676.74,67,LEFT500,LEFT218,LEFT522,LEFT607
+469,4342,2012-02-03,Others,24760,0,12,10000965,743.02,209,TEST271,False,976.68,503,LEFT378,LEFT28,LEFT201,LEFT597
+470,2810,2012-02-03,FP-GTC,23446,23,15,10000858,283.49,487,TEST765,TRUE,949.84,843,LEFT351,LEFT103,LEFT431,LEFT847
+471,940,2012-02-03,Auction,152801,0,13,10000057,993.27,718,TEST551,false,913.88,562,LEFT967,LEFT816,LEFT680,LEFT845
+472,4744,2012-02-03,Others,148324,15,-99,10000680,107.6,975,TEST168,True,788.6,563,LEFT307,LEFT476,LEFT740,LEFT562
+473,1997,2012-02-03,Auction,95672,0,14,10000566,808.34,547,TEST272,true,627.25,11,LEFT458,LEFT41,LEFT145,LEFT160
+474,1797,2012-02-04,FP-non GTC,88750,0,15,10000075,759.99,229,TEST715,False,968.38,846,LEFT190,LEFT219,LEFT783,LEFT112
+475,1272,2012-02-04,FP-GTC,15115,0,-99,10000318,868.74,953,TEST287,true,202.06,775,LEFT749,LEFT553,LEFT951,LEFT905
+476,4600,2012-02-04,Auction,65,0,15,10000863,160.78,281,TEST973,TRUE,582.6,638,LEFT771,LEFT162,LEFT686,LEFT276
+477,29,2012-02-04,Others,156614,0,15,10000227,47.6,303,TEST388,False,70.21,570,LEFT912,LEFT311,LEFT840,LEFT874
+478,4094,2012-02-04,ABIN,150047,3,13,10000113,-88.39,384,TEST503,FALSE,951.02,800,LEFT338,LEFT905,LEFT455,LEFT146
+479,881,2012-02-04,Others,31519,0,11,10000416,996.96,72,TEST394,false,722.73,427,LEFT410,LEFT797,LEFT634,LEFT640
+480,2263,2012-02-04,Others,113802,15,11,10000154,789.65,389,TEST689,True,293.54,620,LEFT934,LEFT471,LEFT578,LEFT248
+481,1888,2012-02-04,FP-GTC,1120,3,5,10000956,-1.43,598,TEST972,FALSE,373.78,353,LEFT916,LEFT304,LEFT597,LEFT365
+482,4099,2012-02-04,ABIN,16509,0,12,10000027,952.47,815,TEST95,TRUE,45.94,681,LEFT251,LEFT70,LEFT125,LEFT312
+483,3669,2012-02-04,ABIN,156614,0,14,10000389,316.2,719,TEST189,True,226.96,213,LEFT712,LEFT998,LEFT641,LEFT680
+484,4035,2012-02-04,ABIN,223,0,12,10000857,792.28,458,TEST398,false,826.27,616,LEFT190,LEFT111,LEFT638,LEFT1
+485,2043,2012-02-04,Others,34273,100,16,10000152,435.9,774,TEST16,False,757.5,45,LEFT188,LEFT933,LEFT183,LEFT305
+486,1163,2012-02-04,ABIN,15568,15,13,10000655,81.88,647,TEST38,TRUE,396.56,188,LEFT12,LEFT80,LEFT181,LEFT156
+487,1000,2012-02-04,FP-GTC,12688,0,14,10000934,661.88,937,TEST507,TRUE,230.53,355,LEFT871,LEFT919,LEFT706,LEFT630
+488,1245,2012-02-04,Others,63861,0,16,10000291,863.29,853,TEST276,False,949.69,126,LEFT387,LEFT688,LEFT60,LEFT593
+489,3001,2012-02-05,ABIN,44079,0,13,10000438,75.67,577,TEST131,FALSE,315.36,264,LEFT842,LEFT891,LEFT509,LEFT692
+490,1494,2012-02-05,Auction,106246,0,14,10000255,915.59,900,TEST747,true,971.3,222,LEFT982,LEFT141,LEFT513,LEFT915
+491,570,2012-02-05,FP-non GTC,2635,0,11,10000204,-64.13,712,TEST422,False,505.26,420,LEFT928,LEFT866,LEFT96,LEFT320
+492,3814,2012-02-05,Others,80053,0,15,10000952,48.3,278,TEST489,TRUE,11.08,508,LEFT799,LEFT723,LEFT744,LEFT876
+493,413,2012-02-05,FP-GTC,95672,0,13,10000741,976.56,989,TEST948,False,587.31,496,LEFT813,LEFT645,LEFT548,LEFT465
+494,4081,2012-02-05,Auction,57784,0,11,10000706,917.96,215,TEST826,true,53.8,419,LEFT238,LEFT909,LEFT122,LEFT981
+495,3950,2012-02-05,ABIN,25147,0,5,10000432,-48.25,545,TEST898,false,131.56,809,LEFT956,LEFT705,LEFT79,LEFT248
+496,3515,2012-02-05,Auction,48904,0,11,10000251,624.27,847,TEST844,true,362.41,75,LEFT400,LEFT639,LEFT294,LEFT868
+497,1875,2012-02-05,Others,50677,0,16,10000511,759.37,460,TEST147,true,255.96,189,LEFT747,LEFT607,LEFT723,LEFT324
+498,3249,2012-02-05,FP-non GTC,31519,0,15,10000170,-80.71,948,TEST252,true,701.47,92,LEFT653,LEFT89,LEFT853,LEFT839
+499,2265,2012-02-05,ABIN,100847,0,15,10000224,866.21,661,TEST734,false,409.09,553,LEFT363,LEFT568,LEFT348,LEFT445
+500,4728,2012-02-05,Auction,75665,0,15,10000345,615.83,921,TEST618,TRUE,32.46,71,LEFT160,LEFT802,LEFT278,LEFT617
+501,52,2012-02-06,ABIN,140746,100,-99,10000464,495.34,337,TEST285,False,568.58,60,LEFT979,LEFT706,LEFT154,LEFT836
+502,2561,2012-02-06,ABIN,57990,0,15,10000005,153.94,751,TEST330,True,927.02,900,LEFT365,LEFT678,LEFT213,LEFT31
+503,3845,2012-02-06,FP-non GTC,33977,15,13,10000230,213.17,473,TEST904,False,281.21,215,LEFT776,LEFT94,LEFT194,LEFT756
+504,1713,2012-02-06,Auction,57784,0,16,10000450,781.67,244,TEST338,True,995.21,833,LEFT909,LEFT893,LEFT237,LEFT221
+505,2645,2012-02-06,ABIN,10866,0,16,10000828,384.61,107,TEST423,FALSE,653.82,348,LEFT904,LEFT427,LEFT569,LEFT57
+506,3031,2012-02-06,FP-non GTC,158798,0,12,10000570,520.54,539,TEST375,True,570.04,562,LEFT707,LEFT490,LEFT81,LEFT619
+507,1586,2012-02-06,ABIN,156356,0,14,10000274,693.18,983,TEST811,TRUE,248.35,522,LEFT169,LEFT157,LEFT743,LEFT171
+508,3635,2012-02-06,Auction,34273,100,16,10000387,346.29,171,TEST499,False,914.42,822,LEFT256,LEFT683,LEFT409,LEFT361
+509,347,2012-02-06,FP-GTC,60606,3,16,10000839,80.85,375,TEST547,FALSE,479.54,428,LEFT50,LEFT151,LEFT109,LEFT92
+510,2584,2012-02-06,FP-GTC,57990,3,12,10000530,-30.56,790,TEST123,false,233.58,89,LEFT382,LEFT866,LEFT633,LEFT655
+511,496,2012-02-06,Auction,65,0,-99,10000768,-97.02,949,TEST111,false,515.62,521,LEFT325,LEFT447,LEFT293,LEFT958
+512,4048,2012-02-07,Others,75665,0,14,10000198,971.05,346,TEST461,TRUE,56.43,632,LEFT484,LEFT877,LEFT984,LEFT695
+513,117,2012-02-07,ABIN,95672,0,13,10000518,904.67,517,TEST418,True,150.63,488,LEFT447,LEFT177,LEFT229,LEFT726
+514,2884,2012-02-07,Auction,13836,0,13,10000441,541.41,756,TEST363,true,696.36,490,LEFT946,LEFT709,LEFT306,LEFT913
+515,2003,2012-02-07,ABIN,15568,15,5,10000652,747.66,603,TEST726,FALSE,839.04,49,LEFT582,LEFT360,LEFT964,LEFT563
+516,3730,2012-02-07,FP-GTC,108782,15,16,10000591,57.85,342,TEST36,True,513.02,202,LEFT157,LEFT157,LEFT78,LEFT918
+517,2093,2012-02-07,Auction,11848,0,14,10000842,38.12,173,TEST70,false,507.66,494,LEFT255,LEFT955,LEFT83,LEFT137
+518,1996,2012-02-07,Others,106340,15,15,10000343,539.98,975,TEST918,true,148.09,883,LEFT456,LEFT257,LEFT228,LEFT154
+519,4051,2012-02-07,Auction,15568,15,5,10000418,537.52,339,TEST918,true,293.47,420,LEFT206,LEFT403,LEFT68,LEFT455
+520,511,2012-02-08,FP-GTC,45238,101,12,10000931,129.58,95,TEST521,true,270.95,657,LEFT251,LEFT517,LEFT889,LEFT179
+521,3396,2012-02-08,ABIN,36250,0,11,10000277,907.19,34,TEST170,FALSE,906.23,689,LEFT229,LEFT891,LEFT301,LEFT506
+522,1952,2012-02-08,ABIN,1120,3,5,10000680,435.42,232,TEST435,true,971.05,785,LEFT462,LEFT272,LEFT701,LEFT28
+523,2558,2012-02-08,Others,1357,0,14,10000562,478.02,113,TEST624,False,661.68,576,LEFT446,LEFT581,LEFT9,LEFT539
+524,1146,2012-02-08,FP-non GTC,156356,0,12,10000207,566.79,396,TEST100,false,91.9,286,LEFT273,LEFT948,LEFT762,LEFT59
+525,4497,2012-02-08,Auction,75708,3,14,10000173,905.92,348,TEST25,TRUE,210.14,337,LEFT545,LEFT316,LEFT411,LEFT112
+526,4501,2012-02-08,FP-non GTC,11848,0,14,10000444,52.07,348,TEST622,False,825.84,553,LEFT6,LEFT622,LEFT292,LEFT226
+527,2572,2012-02-08,FP-GTC,35570,100,13,10000864,100.25,626,TEST500,TRUE,813.93,81,LEFT34,LEFT237,LEFT431,LEFT978
+528,395,2012-02-08,ABIN,1161,3,13,10000682,988.65,755,TEST364,FALSE,552.34,825,LEFT198,LEFT292,LEFT211,LEFT81
+529,1830,2012-02-08,Others,161567,15,5,10000221,60.01,372,TEST928,TRUE,555.09,781,LEFT554,LEFT166,LEFT780,LEFT327
+530,2443,2012-02-08,Auction,60606,3,12,10000459,138.81,70,TEST681,false,580.83,829,LEFT790,LEFT786,LEFT83,LEFT953
+531,3320,2012-02-08,Auction,65,0,15,10000842,591.39,953,TEST607,false,903.83,588,LEFT592,LEFT77,LEFT189,LEFT193
+532,2076,2012-02-08,Auction,99985,0,14,10000728,369.46,979,TEST462,False,549.13,903,LEFT640,LEFT139,LEFT207,LEFT85
+533,3152,2012-02-08,Auction,53064,0,14,10000731,842.58,936,TEST841,FALSE,899.22,847,LEFT769,LEFT384,LEFT289,LEFT645
+534,2093,2012-02-08,FP-GTC,11848,0,11,10000689,10.94,533,TEST119,true,103.52,2,LEFT820,LEFT839,LEFT874,LEFT553
+535,2526,2012-02-08,ABIN,9426,3,14,10000426,104.75,411,TEST746,TRUE,853.47,601,LEFT535,LEFT674,LEFT214,LEFT505
+536,2004,2012-02-08,Others,140746,100,13,10000989,277.96,968,TEST964,False,112.94,923,LEFT543,LEFT323,LEFT530,LEFT972
+537,40,2012-02-08,FP-non GTC,32876,0,15,10000108,-27.13,718,TEST213,True,895.48,186,LEFT793,LEFT82,LEFT275,LEFT733
+538,1138,2012-02-09,Others,45333,0,14,10000058,194.86,82,TEST588,FALSE,995.89,989,LEFT516,LEFT365,LEFT788,LEFT999
+539,2341,2012-02-09,Auction,10866,0,16,10000475,28.19,388,TEST224,true,98.69,283,LEFT476,LEFT366,LEFT802,LEFT529
+540,4473,2012-02-09,ABIN,57784,0,11,10000362,583.21,946,TEST380,False,569.37,875,LEFT805,LEFT312,LEFT287,LEFT958
+541,3699,2012-02-09,FP-non GTC,50677,0,-99,10000331,67.15,21,TEST285,FALSE,18.69,490,LEFT146,LEFT7,LEFT128,LEFT514
+542,4960,2012-02-09,Auction,20485,101,13,10000490,-10.34,0,TEST208,false,380.75,757,LEFT399,LEFT617,LEFT784,LEFT195
+543,4531,2012-02-09,Others,223,0,16,10000809,342.0,171,TEST204,True,478.25,312,LEFT151,LEFT471,LEFT635,LEFT955
+544,3190,2012-02-09,ABIN,9426,3,14,10000342,51.17,611,TEST130,TRUE,196.69,401,LEFT272,LEFT366,LEFT432,LEFT488
+545,138,2012-02-09,Others,2635,0,11,10000833,344.45,855,TEST668,FALSE,412.15,367,LEFT372,LEFT135,LEFT280,LEFT267
+546,3648,2012-02-09,FP-non GTC,48027,0,14,10000643,167.36,136,TEST506,TRUE,190.5,988,LEFT833,LEFT670,LEFT71,LEFT136
+547,4415,2012-02-09,Others,158798,0,14,10000481,484.97,464,TEST60,True,821.45,248,LEFT852,LEFT121,LEFT755,LEFT993
+548,780,2012-02-09,ABIN,139973,3,-99,10000404,-15.1,747,TEST24,TRUE,311.47,706,LEFT170,LEFT165,LEFT933,LEFT542
+549,407,2012-02-09,FP-GTC,113802,15,12,10000983,580.71,284,TEST20,False,114.63,392,LEFT273,LEFT906,LEFT630,LEFT517
+550,2332,2012-02-09,Auction,36250,0,14,10000916,823.67,631,TEST945,False,775.37,152,LEFT424,LEFT966,LEFT604,LEFT333
+551,3455,2012-02-09,FP-non GTC,37831,0,5,10000215,989.19,750,TEST334,True,621.23,347,LEFT366,LEFT630,LEFT843,LEFT529
+552,1077,2012-02-09,FP-non GTC,50508,0,-99,10000501,103.99,346,TEST345,true,834.22,692,LEFT790,LEFT426,LEFT796,LEFT957
+553,2853,2012-02-10,Auction,95672,0,5,10000255,245.93,152,TEST772,FALSE,108.17,560,LEFT731,LEFT720,LEFT25,LEFT806
+554,853,2012-02-10,FP-non GTC,10866,0,11,10000835,318.66,935,TEST150,TRUE,264.12,854,LEFT676,LEFT97,LEFT469,LEFT304
+555,4382,2012-02-10,Others,31673,0,-99,10000919,276.71,788,TEST829,False,499.67,492,LEFT830,LEFT942,LEFT382,LEFT332
+556,4283,2012-02-10,FP-non GTC,130,0,15,10000122,158.73,345,TEST725,false,452.5,976,LEFT566,LEFT699,LEFT761,LEFT786
+557,4026,2012-02-10,ABIN,6762,0,14,10000040,247.92,771,TEST804,FALSE,528.31,48,LEFT397,LEFT246,LEFT731,LEFT341
+558,1906,2012-02-10,FP-non GTC,4943,0,14,10000167,405.5,551,TEST509,TRUE,869.79,918,LEFT751,LEFT952,LEFT885,LEFT834
+559,3402,2012-02-10,Auction,2635,0,5,10000947,797.85,461,TEST864,False,705.03,212,LEFT497,LEFT201,LEFT445,LEFT412
+560,367,2012-02-10,ABIN,15868,0,14,10000889,515.19,437,TEST102,false,678.0,22,LEFT613,LEFT686,LEFT218,LEFT827
+561,2252,2012-02-10,FP-GTC,152801,0,15,10000207,470.38,313,TEST61,True,754.99,417,LEFT206,LEFT916,LEFT865,LEFT520
+562,3978,2012-02-10,Others,759,0,12,10000628,303.8,80,TEST387,True,172.53,777,LEFT602,LEFT63,LEFT27,LEFT195
+563,4823,2012-02-10,FP-GTC,95672,3,16,10000091,59.2,567,TEST183,true,717.42,604,LEFT15,LEFT873,LEFT99,LEFT51
+564,4838,2012-02-10,ABIN,95173,0,15,10000121,64.8,89,TEST386,False,799.83,336,LEFT350,LEFT614,LEFT962,LEFT696
+565,3613,2012-02-11,FP-GTC,51582,0,12,10000570,33.32,152,TEST607,TRUE,677.99,811,LEFT247,LEFT105,LEFT121,LEFT421
+566,3714,2012-02-11,Others,175750,0,-99,10000083,508.87,709,TEST929,false,314.16,471,LEFT273,LEFT461,LEFT954,LEFT626
+567,3147,2012-02-11,Auction,130,0,12,10000834,257.23,9,TEST875,false,889.19,11,LEFT856,LEFT885,LEFT448,LEFT521
+568,1822,2012-02-11,Auction,1357,0,-99,10000483,903.2,678,TEST553,false,990.2,663,LEFT359,LEFT388,LEFT176,LEFT932
+569,4932,2012-02-11,FP-non GTC,41940,0,-99,10000177,563.97,615,TEST503,false,810.25,311,LEFT310,LEFT543,LEFT810,LEFT418
+570,3338,2012-02-11,Others,6762,0,5,10000933,857.29,77,TEST262,FALSE,400.07,893,LEFT500,LEFT633,LEFT934,LEFT120
+571,4015,2012-02-11,Others,113802,15,13,10000717,454.96,589,TEST305,false,67.87,127,LEFT489,LEFT712,LEFT171,LEFT949
+572,310,2012-02-11,FP-non GTC,1357,0,5,10000839,460.6,74,TEST558,False,247.2,506,LEFT830,LEFT502,LEFT819,LEFT46
+573,2145,2012-02-11,FP-GTC,57784,0,16,10000286,274.92,399,TEST517,TRUE,179.19,446,LEFT659,LEFT388,LEFT573,LEFT952
+574,4858,2012-02-11,Auction,67698,0,15,10000405,21.76,81,TEST43,TRUE,635.66,803,LEFT211,LEFT34,LEFT0,LEFT26
+575,3207,2012-02-11,FP-non GTC,113802,15,-99,10000863,455.82,581,TEST507,False,176.82,908,LEFT788,LEFT753,LEFT97,LEFT676
+576,2147,2012-02-11,FP-GTC,48904,0,-99,10000760,76.04,427,TEST571,true,557.89,669,LEFT719,LEFT190,LEFT908,LEFT431
+577,2485,2012-02-12,FP-GTC,95672,0,13,10000803,231.24,505,TEST720,True,596.17,548,LEFT608,LEFT45,LEFT625,LEFT449
+578,3291,2012-02-12,ABIN,1161,3,13,10000367,918.28,924,TEST663,false,795.1,564,LEFT670,LEFT283,LEFT790,LEFT490
+579,1351,2012-02-12,ABIN,20865,0,15,10000991,963.88,929,TEST883,false,66.87,462,LEFT357,LEFT787,LEFT194,LEFT496
+580,1671,2012-02-12,Others,20865,0,12,10000909,454.41,126,TEST469,TRUE,735.98,285,LEFT95,LEFT82,LEFT880,LEFT679
+581,3900,2012-02-12,Others,139973,3,5,10000074,196.52,798,TEST966,FALSE,246.06,677,LEFT909,LEFT359,LEFT268,LEFT122
+582,1520,2012-02-12,Others,80135,0,12,10000929,986.64,588,TEST451,False,739.94,838,LEFT990,LEFT226,LEFT866,LEFT481
+583,1025,2012-02-12,Auction,164261,0,14,10000299,579.16,567,TEST797,TRUE,539.98,181,LEFT305,LEFT140,LEFT402,LEFT759
+584,867,2012-02-12,Auction,63864,3,-99,10000589,808.1,481,TEST262,True,406.17,569,LEFT128,LEFT923,LEFT865,LEFT665
+585,1560,2012-02-12,FP-GTC,48027,0,-99,10000599,789.74,534,TEST996,True,368.1,810,LEFT585,LEFT168,LEFT637,LEFT644
+586,1386,2012-02-12,Auction,108782,15,14,10000068,-70.07,636,TEST24,true,815.67,562,LEFT307,LEFT788,LEFT909,LEFT491
+587,2967,2012-02-12,Others,15687,0,11,10000278,932.93,332,TEST896,false,717.78,676,LEFT346,LEFT970,LEFT749,LEFT757
+588,4037,2012-02-12,Others,33977,15,15,10000238,545.0,921,TEST969,true,187.09,413,LEFT153,LEFT876,LEFT744,LEFT711
+589,2499,2012-02-12,ABIN,61323,0,15,10000042,153.42,184,TEST855,true,803.99,687,LEFT85,LEFT911,LEFT846,LEFT837
+590,131,2012-02-12,Others,32996,15,5,10000103,847.25,819,TEST796,true,260.18,86,LEFT139,LEFT383,LEFT104,LEFT406
+591,3089,2012-02-12,FP-non GTC,314,211,12,10000316,638.33,718,TEST888,False,800.16,766,LEFT925,LEFT265,LEFT332,LEFT780
+592,2718,2012-02-12,FP-GTC,24760,0,15,10000555,-7.59,784,TEST176,false,973.61,896,LEFT160,LEFT377,LEFT456,LEFT275
+593,528,2012-02-12,Others,20485,0,13,10000833,29.61,472,TEST516,FALSE,73.28,940,LEFT482,LEFT164,LEFT832,LEFT347
+594,4410,2012-02-12,Auction,10058,3,16,10000504,971.44,357,TEST812,True,392.85,149,LEFT132,LEFT258,LEFT207,LEFT344
+595,1340,2012-02-12,ABIN,33038,15,12,10000263,95.29,892,TEST371,false,488.19,654,LEFT220,LEFT938,LEFT132,LEFT271
+596,4250,2012-02-12,ABIN,175750,0,16,10000623,236.28,910,TEST145,true,784.42,933,LEFT775,LEFT729,LEFT802,LEFT164
+597,3567,2012-02-12,Auction,170302,15,13,10000435,465.07,606,TEST458,True,130.85,326,LEFT371,LEFT722,LEFT590,LEFT713
+598,2565,2012-02-12,Others,63861,0,5,10000191,82.94,795,TEST635,False,290.86,96,LEFT94,LEFT685,LEFT411,LEFT533
+599,2200,2012-02-13,Others,57990,3,11,10000218,969.54,677,TEST605,false,536.44,729,LEFT270,LEFT702,LEFT141,LEFT214
+600,4338,2012-02-13,Others,67698,0,16,10000242,532.62,451,TEST407,False,683.33,591,LEFT113,LEFT898,LEFT121,LEFT849
+601,915,2012-02-13,ABIN,80287,0,13,10000326,406.98,251,TEST370,True,764.13,266,LEFT157,LEFT153,LEFT244,LEFT634
+602,2605,2012-02-13,FP-GTC,2023,0,14,10000610,563.89,825,TEST473,True,420.54,653,LEFT304,LEFT553,LEFT978,LEFT90
+603,4260,2012-02-13,Others,43479,0,12,10000706,150.03,229,TEST459,TRUE,838.94,18,LEFT964,LEFT312,LEFT672,LEFT620
+604,3270,2012-02-13,Others,95173,0,15,10000295,41.29,511,TEST253,FALSE,376.53,102,LEFT119,LEFT288,LEFT665,LEFT277
+605,2810,2012-02-13,Others,166013,15,11,10000762,876.91,487,TEST728,true,886.0,853,LEFT330,LEFT752,LEFT632,LEFT705
+606,1243,2012-02-13,FP-GTC,46575,0,16,10000679,176.52,885,TEST15,TRUE,524.56,150,LEFT389,LEFT171,LEFT636,LEFT585
+607,1431,2012-02-13,FP-non GTC,1504,0,11,10000029,914.49,614,TEST561,True,677.14,569,LEFT88,LEFT104,LEFT90,LEFT612
+608,3739,2012-02-13,Others,223,0,13,10000167,445.32,790,TEST485,False,799.83,94,LEFT524,LEFT49,LEFT857,LEFT919
+609,2096,2012-02-13,ABIN,63861,3,16,10000527,216.52,30,TEST985,FALSE,105.23,859,LEFT229,LEFT344,LEFT974,LEFT763
+610,4984,2012-02-13,Others,80135,0,15,10000129,158.2,711,TEST86,False,186.35,157,LEFT299,LEFT442,LEFT565,LEFT577
+611,4398,2012-02-13,FP-GTC,1349,0,12,10000658,87.5,827,TEST648,false,265.48,169,LEFT878,LEFT171,LEFT277,LEFT218
+612,1029,2012-02-14,Others,87118,0,-99,10000774,103.65,403,TEST310,false,861.08,102,LEFT833,LEFT912,LEFT178,LEFT868
+613,1168,2012-02-14,FP-non GTC,73506,0,11,10000648,847.37,697,TEST192,false,339.99,522,LEFT744,LEFT516,LEFT553,LEFT269
+614,4675,2012-02-14,FP-GTC,60340,0,15,10000729,175.53,177,TEST215,true,203.18,347,LEFT0,LEFT466,LEFT354,LEFT664
+615,4205,2012-02-14,Auction,170083,3,16,10000640,105.46,360,TEST520,False,907.36,476,LEFT300,LEFT144,LEFT862,LEFT598
+616,3094,2012-02-14,Others,80053,0,11,10000167,274.44,840,TEST445,FALSE,470.48,406,LEFT341,LEFT699,LEFT955,LEFT67
+617,1377,2012-02-14,FP-GTC,44079,0,-99,10000427,850.09,744,TEST975,True,695.58,402,LEFT778,LEFT93,LEFT797,LEFT231
+618,3187,2012-02-14,FP-non GTC,63864,3,15,10000576,912.03,844,TEST77,FALSE,212.15,224,LEFT241,LEFT229,LEFT386,LEFT376
+619,2564,2012-02-14,Others,103178,15,13,10000051,343.79,845,TEST93,True,897.47,438,LEFT622,LEFT165,LEFT265,LEFT226
+620,3725,2012-02-15,ABIN,50508,0,5,10000943,130.78,679,TEST602,False,10.87,849,LEFT789,LEFT516,LEFT139,LEFT277
+621,1096,2012-02-15,FP-GTC,80135,0,11,10000600,194.22,69,TEST86,False,685.0,435,LEFT644,LEFT49,LEFT674,LEFT66
+622,3532,2012-02-15,Others,31519,3,12,10000263,674.28,788,TEST134,False,642.35,340,LEFT400,LEFT766,LEFT770,LEFT460
+623,664,2012-02-15,Auction,53064,0,16,10000673,583.18,153,TEST369,False,769.11,179,LEFT242,LEFT624,LEFT976,LEFT325
+624,4369,2012-02-15,FP-non GTC,44079,0,15,10000507,457.09,657,TEST451,FALSE,204.4,898,LEFT60,LEFT689,LEFT722,LEFT432
+625,3808,2012-02-15,ABIN,80135,0,15,10000623,436.78,268,TEST955,TRUE,43.09,139,LEFT778,LEFT107,LEFT67,LEFT621
+626,4495,2012-02-15,FP-GTC,174106,3,-99,10000940,38.93,209,TEST9,TRUE,717.88,292,LEFT569,LEFT313,LEFT837,LEFT878
+627,322,2012-02-15,FP-GTC,2635,0,15,10000906,754.45,475,TEST518,FALSE,554.42,678,LEFT850,LEFT995,LEFT51,LEFT1
+628,3548,2012-02-15,Others,43479,0,5,10000239,796.41,136,TEST463,True,334.36,603,LEFT103,LEFT920,LEFT939,LEFT695
+629,4259,2012-02-15,FP-GTC,66767,15,16,10000943,965.21,870,TEST359,false,438.03,738,LEFT647,LEFT38,LEFT229,LEFT523
+630,3225,2012-02-15,Auction,159184,0,5,10000345,549.11,748,TEST826,true,45.63,200,LEFT705,LEFT938,LEFT311,LEFT814
+631,4592,2012-02-15,FP-non GTC,80135,0,13,10000038,181.64,228,TEST662,TRUE,895.38,911,LEFT735,LEFT974,LEFT673,LEFT166
+632,2757,2012-02-16,ABIN,11848,0,13,10000869,826.0,826,TEST776,TRUE,657.04,761,LEFT992,LEFT778,LEFT34,LEFT359
+633,4531,2012-02-16,Others,61323,0,16,10000353,281.75,573,TEST145,False,377.12,508,LEFT400,LEFT418,LEFT355,LEFT425
+634,1877,2012-02-16,Others,963,0,13,10000890,566.35,850,TEST113,false,140.83,2,LEFT916,LEFT120,LEFT596,LEFT913
+635,1494,2012-02-16,ABIN,24760,0,14,10000624,700.49,649,TEST25,true,449.2,295,LEFT842,LEFT624,LEFT684,LEFT913
+636,589,2012-02-16,Auction,33977,15,15,10000014,529.41,853,TEST395,false,753.8,508,LEFT316,LEFT242,LEFT406,LEFT967
+637,3993,2012-02-16,Others,159184,0,-99,10000251,657.23,562,TEST425,FALSE,15.28,75,LEFT779,LEFT202,LEFT382,LEFT251
+638,2446,2012-02-16,Auction,95173,0,15,10000347,111.77,176,TEST64,false,986.76,729,LEFT441,LEFT126,LEFT193,LEFT211
+639,2425,2012-02-16,Others,3838,0,14,10000368,516.68,636,TEST210,True,768.3,267,LEFT183,LEFT472,LEFT875,LEFT768
+640,1372,2012-02-16,FP-non GTC,43479,0,15,10000375,356.72,633,TEST652,True,590.62,250,LEFT43,LEFT219,LEFT988,LEFT365
+641,4913,2012-02-16,FP-GTC,103324,15,11,10000240,340.68,442,TEST923,False,991.31,319,LEFT737,LEFT188,LEFT729,LEFT70
+642,1189,2012-02-16,Others,11848,0,16,10000740,431.34,451,TEST587,FALSE,344.94,3,LEFT404,LEFT446,LEFT542,LEFT498
+643,2416,2012-02-16,Auction,80135,0,11,10000911,884.27,553,TEST231,True,966.33,587,LEFT595,LEFT245,LEFT817,LEFT620
+644,4028,2012-02-16,Auction,106340,15,11,10000722,514.69,367,TEST706,false,934.83,618,LEFT108,LEFT699,LEFT32,LEFT161
+645,792,2012-02-16,Others,75665,0,14,10000660,255.5,799,TEST661,false,116.03,99,LEFT998,LEFT543,LEFT818,LEFT240
+646,785,2012-02-16,Auction,57784,0,16,10000450,474.7,314,TEST737,true,667.43,665,LEFT305,LEFT778,LEFT607,LEFT241
+647,4583,2012-02-16,FP-GTC,26262,0,12,10000083,884.92,918,TEST259,false,352.04,606,LEFT356,LEFT78,LEFT658,LEFT617
+648,2538,2012-02-16,FP-GTC,156356,0,5,10000696,696.79,116,TEST289,FALSE,926.27,718,LEFT363,LEFT656,LEFT496,LEFT673
+649,820,2012-02-16,FP-non GTC,106340,15,5,10000054,777.83,786,TEST127,False,583.36,300,LEFT666,LEFT691,LEFT973,LEFT284
+650,60,2012-02-16,FP-GTC,31519,3,14,10000083,643.17,883,TEST537,True,874.72,60,LEFT184,LEFT665,LEFT990,LEFT493
+651,1609,2012-02-16,Auction,57990,0,14,10000074,199.33,964,TEST369,true,202.17,228,LEFT191,LEFT52,LEFT982,LEFT833
+652,4317,2012-02-17,ABIN,11848,0,15,10000113,655.96,649,TEST111,False,135.94,57,LEFT88,LEFT134,LEFT663,LEFT625
+653,318,2012-02-17,Auction,25147,0,-99,10000526,711.46,22,TEST446,false,635.31,448,LEFT503,LEFT618,LEFT179,LEFT9
+654,2009,2012-02-17,FP-non GTC,3838,0,13,10000557,103.52,158,TEST512,false,83.33,805,LEFT217,LEFT650,LEFT367,LEFT728
+655,1633,2012-02-17,Others,31519,0,-99,10000036,112.04,483,TEST839,False,614.33,559,LEFT387,LEFT19,LEFT982,LEFT620
+656,4231,2012-02-17,Others,0,0,12,10000904,957.91,971,TEST814,true,222.16,256,LEFT532,LEFT882,LEFT914,LEFT500
+657,3582,2012-02-17,ABIN,63889,0,15,10000134,64.54,577,TEST221,True,612.34,921,LEFT99,LEFT549,LEFT887,LEFT106
+658,4660,2012-02-17,FP-non GTC,41940,0,14,10000803,367.45,530,TEST255,false,623.26,890,LEFT964,LEFT967,LEFT696,LEFT591
+659,1685,2012-02-17,Auction,63861,0,14,10000801,333.5,322,TEST845,False,721.42,695,LEFT725,LEFT687,LEFT356,LEFT636
+660,3760,2012-02-17,ABIN,65,0,15,10000525,-18.87,658,TEST256,True,348.55,246,LEFT962,LEFT813,LEFT714,LEFT299
+661,2700,2012-02-17,ABIN,41940,0,14,10000364,385.52,364,TEST809,TRUE,829.27,285,LEFT600,LEFT537,LEFT665,LEFT48
+662,3826,2012-02-17,FP-non GTC,45333,0,12,10000549,315.59,706,TEST465,False,285.66,669,LEFT525,LEFT353,LEFT994,LEFT434
+663,2032,2012-02-17,FP-GTC,75665,0,15,10000305,75.8,595,TEST800,FALSE,570.06,705,LEFT990,LEFT460,LEFT919,LEFT269
+664,4730,2012-02-17,Auction,20213,0,5,10000632,386.11,56,TEST225,false,821.72,160,LEFT64,LEFT824,LEFT375,LEFT281
+665,2822,2012-02-17,FP-non GTC,9426,3,5,10000877,-68.8,217,TEST960,TRUE,3.53,299,LEFT238,LEFT576,LEFT180,LEFT796
+666,336,2012-02-18,ABIN,20485,101,16,10000475,123.31,92,TEST170,False,907.12,814,LEFT131,LEFT604,LEFT920,LEFT408
+667,1362,2012-02-18,FP-non GTC,82494,15,-99,10000306,673.89,524,TEST552,TRUE,439.71,995,LEFT431,LEFT573,LEFT67,LEFT50
+668,1360,2012-02-18,Others,32876,0,14,10000503,661.63,815,TEST406,false,885.13,799,LEFT801,LEFT545,LEFT566,LEFT545
+669,2451,2012-02-18,Others,130,0,15,10000454,122.45,523,TEST261,False,842.93,276,LEFT506,LEFT795,LEFT458,LEFT705
+670,4519,2012-02-18,FP-GTC,26262,0,-99,10000903,356.52,38,TEST675,FALSE,265.18,225,LEFT460,LEFT479,LEFT235,LEFT733
+671,2566,2012-02-18,ABIN,9426,3,11,10000980,719.46,98,TEST666,TRUE,390.82,430,LEFT957,LEFT54,LEFT663,LEFT914
+672,3895,2012-02-18,ABIN,314,0,12,10000556,-23.36,263,TEST787,TRUE,733.59,3,LEFT881,LEFT520,LEFT879,LEFT196
+673,3010,2012-02-18,FP-GTC,2635,0,12,10000636,43.78,273,TEST90,False,771.19,92,LEFT103,LEFT901,LEFT607,LEFT141
+674,4460,2012-02-18,FP-non GTC,216,0,11,10000060,912.62,845,TEST721,TRUE,496.37,746,LEFT183,LEFT203,LEFT583,LEFT273
+675,4417,2012-02-18,FP-non GTC,38238,0,12,10000817,843.05,528,TEST874,TRUE,229.58,945,LEFT750,LEFT557,LEFT960,LEFT130
+676,78,2012-02-18,Auction,94847,0,11,10000870,423.56,484,TEST730,false,620.97,924,LEFT92,LEFT40,LEFT789,LEFT451
+677,2144,2012-02-18,Others,0,2,5,10000995,413.53,629,TEST866,false,455.97,155,LEFT355,LEFT35,LEFT898,LEFT832
+678,990,2012-02-18,FP-GTC,25147,0,16,10000798,119.28,915,TEST159,TRUE,239.67,269,LEFT5,LEFT589,LEFT270,LEFT517
+679,2482,2012-02-18,Auction,166013,15,-99,10000400,340.06,158,TEST505,false,927.15,582,LEFT971,LEFT91,LEFT331,LEFT380
+680,3682,2012-02-18,Others,4943,0,5,10000866,938.57,536,TEST616,FALSE,273.28,820,LEFT211,LEFT789,LEFT410,LEFT717
+681,4644,2012-02-19,Others,106340,15,12,10000260,818.36,689,TEST777,true,820.79,597,LEFT165,LEFT992,LEFT48,LEFT142
+682,2017,2012-02-19,Auction,103324,15,11,10000207,441.32,972,TEST128,false,213.78,90,LEFT196,LEFT626,LEFT383,LEFT532
+683,3482,2012-02-19,Others,82494,15,5,10000952,980.87,85,TEST591,true,60.58,867,LEFT472,LEFT17,LEFT520,LEFT916
+684,2698,2012-02-19,FP-GTC,156356,0,14,10000567,621.16,210,TEST377,True,213.96,713,LEFT572,LEFT398,LEFT375,LEFT213
+685,465,2012-02-19,ABIN,43972,100,15,10000431,289.63,609,TEST91,false,522.13,98,LEFT402,LEFT285,LEFT955,LEFT279
+686,1791,2012-02-19,FP-GTC,15868,0,13,10000827,93.01,69,TEST54,FALSE,475.06,21,LEFT538,LEFT374,LEFT3,LEFT228
+687,4912,2012-02-19,Auction,20485,0,16,10000921,717.22,286,TEST966,False,68.58,711,LEFT750,LEFT157,LEFT626,LEFT963
+688,1610,2012-02-19,Others,166013,15,13,10000091,759.01,474,TEST996,false,622.38,110,LEFT557,LEFT591,LEFT957,LEFT372
+689,4319,2012-02-19,FP-GTC,1504,0,12,10000880,340.54,107,TEST350,False,569.46,690,LEFT319,LEFT717,LEFT760,LEFT701
+690,790,2012-02-19,FP-non GTC,164,0,15,10000105,-15.89,42,TEST440,FALSE,104.87,516,LEFT210,LEFT481,LEFT916,LEFT33
+691,3033,2012-02-19,FP-non GTC,139255,15,11,10000631,567.0,426,TEST306,true,888.22,790,LEFT690,LEFT988,LEFT826,LEFT589
+692,1298,2012-02-19,FP-GTC,166013,15,-99,10000500,434.63,719,TEST569,TRUE,671.63,361,LEFT228,LEFT447,LEFT875,LEFT710
+693,1894,2012-02-19,FP-GTC,24760,0,16,10000894,861.77,883,TEST966,False,290.12,905,LEFT409,LEFT943,LEFT734,LEFT965
+694,1253,2012-02-19,Others,33977,15,-99,10000479,434.32,731,TEST637,True,504.58,649,LEFT766,LEFT30,LEFT369,LEFT572
+695,3123,2012-02-20,Auction,30059,3,15,10000816,548.47,852,TEST256,TRUE,252.0,59,LEFT543,LEFT113,LEFT268,LEFT61
+696,78,2012-02-20,FP-non GTC,164,0,13,10000159,841.91,856,TEST606,False,995.37,79,LEFT558,LEFT296,LEFT980,LEFT851
+697,4929,2012-02-20,FP-GTC,100847,0,14,10000246,709.85,235,TEST899,false,264.98,523,LEFT904,LEFT645,LEFT362,LEFT22
+698,2199,2012-02-20,ABIN,1504,0,11,10000177,794.66,970,TEST352,False,726.05,639,LEFT314,LEFT272,LEFT426,LEFT221
+699,1781,2012-02-20,Others,63861,0,12,10000541,-15.61,131,TEST2,FALSE,717.71,889,LEFT238,LEFT172,LEFT689,LEFT801
+700,1345,2012-02-20,ABIN,159184,0,16,10000271,248.8,627,TEST825,False,737.59,604,LEFT386,LEFT480,LEFT908,LEFT277
+701,2875,2012-02-20,ABIN,63864,3,5,10000550,601.99,144,TEST344,True,875.65,540,LEFT538,LEFT497,LEFT880,LEFT167
+702,4370,2012-02-20,ABIN,139973,0,15,10000517,457.02,499,TEST348,false,541.22,234,LEFT776,LEFT852,LEFT597,LEFT882
+703,2405,2012-02-20,Others,50508,0,5,10000917,368.05,884,TEST989,true,459.1,991,LEFT710,LEFT470,LEFT283,LEFT776
+704,738,2012-02-20,ABIN,108782,15,14,10000170,277.64,645,TEST512,True,537.55,879,LEFT873,LEFT379,LEFT847,LEFT817
+705,1840,2012-02-20,ABIN,48027,0,15,10000334,56.07,232,TEST850,false,960.81,326,LEFT20,LEFT79,LEFT571,LEFT221
+706,3946,2012-02-20,FP-GTC,139973,0,13,10000318,427.02,440,TEST902,true,398.94,647,LEFT718,LEFT326,LEFT667,LEFT210
+707,4541,2012-02-21,Others,50508,0,15,10000028,843.79,676,TEST551,true,891.96,406,LEFT366,LEFT384,LEFT255,LEFT759
+708,2481,2012-02-21,ABIN,132939,0,-99,10000790,419.56,615,TEST60,FALSE,53.32,617,LEFT717,LEFT523,LEFT582,LEFT4
+709,266,2012-02-21,Auction,2635,0,5,10000793,522.09,599,TEST35,true,542.13,168,LEFT410,LEFT589,LEFT806,LEFT954
+710,3455,2012-02-21,Auction,26262,0,-99,10000546,259.96,824,TEST466,true,315.35,546,LEFT240,LEFT929,LEFT395,LEFT306
+711,1603,2012-02-21,Others,0,100,13,10000506,729.3,194,TEST896,True,572.33,112,LEFT910,LEFT715,LEFT861,LEFT643
+712,515,2012-02-21,Auction,63864,3,14,10000587,976.86,409,TEST692,true,404.24,198,LEFT291,LEFT61,LEFT175,LEFT91
+713,2559,2012-02-21,ABIN,158798,0,15,10000696,401.94,72,TEST418,TRUE,753.78,792,LEFT544,LEFT814,LEFT595,LEFT249
+714,1165,2012-02-21,Others,170083,3,16,10000810,-15.68,908,TEST190,TRUE,203.0,527,LEFT258,LEFT926,LEFT360,LEFT227
+715,2587,2012-02-21,FP-non GTC,46575,0,15,10000760,749.35,363,TEST484,FALSE,348.6,510,LEFT910,LEFT306,LEFT851,LEFT584
+716,3088,2012-02-21,Others,26249,0,14,10000981,800.8,389,TEST790,True,601.9,292,LEFT574,LEFT841,LEFT735,LEFT159
+717,4819,2012-02-21,FP-GTC,50677,0,11,10000600,801.86,104,TEST121,false,764.2,717,LEFT689,LEFT759,LEFT552,LEFT270
+718,433,2012-02-21,Others,314,211,-99,10000615,512.74,902,TEST211,False,6.69,200,LEFT399,LEFT263,LEFT497,LEFT383
+719,2083,2012-02-22,FP-non GTC,130,0,12,10000502,9.97,303,TEST858,FALSE,742.39,429,LEFT166,LEFT691,LEFT519,LEFT824
+720,3230,2012-02-22,Auction,161567,15,11,10000993,537.12,699,TEST744,false,841.52,960,LEFT529,LEFT998,LEFT367,LEFT171
+721,1336,2012-02-22,ABIN,53064,0,15,10000458,925.32,327,TEST731,False,846.9,451,LEFT100,LEFT465,LEFT74,LEFT555
+722,3777,2012-02-22,Auction,174053,3,16,10000219,335.49,966,TEST937,TRUE,511.94,300,LEFT967,LEFT977,LEFT53,LEFT158
+723,4370,2012-02-22,FP-GTC,175750,3,13,10000840,984.24,249,TEST12,false,843.27,599,LEFT757,LEFT789,LEFT971,LEFT744
+724,1878,2012-02-22,Others,106246,0,13,10000593,736.1,765,TEST213,true,946.34,809,LEFT529,LEFT855,LEFT432,LEFT931
+725,894,2012-02-22,FP-non GTC,165888,0,5,10000488,-74.15,896,TEST976,true,651.69,123,LEFT160,LEFT421,LEFT337,LEFT260
+726,4788,2012-02-22,Others,13836,0,12,10000555,246.96,594,TEST914,FALSE,208.69,41,LEFT576,LEFT988,LEFT728,LEFT921
+727,1870,2012-02-22,ABIN,106246,0,16,10000047,744.11,981,TEST395,false,147.0,546,LEFT566,LEFT764,LEFT323,LEFT788
+728,4604,2012-02-22,FP-GTC,121153,0,12,10000158,849.25,374,TEST347,TRUE,150.3,996,LEFT117,LEFT942,LEFT813,LEFT347
+729,1144,2012-02-22,Others,80135,0,-99,10000312,815.12,256,TEST766,false,52.61,294,LEFT564,LEFT397,LEFT507,LEFT588
+730,4625,2012-02-22,FP-GTC,103324,15,16,10000727,871.32,553,TEST991,False,145.87,225,LEFT164,LEFT561,LEFT999,LEFT386
+731,2330,2012-02-22,FP-GTC,156356,0,15,10000931,105.62,945,TEST742,true,253.45,847,LEFT500,LEFT615,LEFT682,LEFT691
+732,3765,2012-02-23,FP-non GTC,150265,15,12,10000449,667.29,859,TEST176,FALSE,175.39,974,LEFT747,LEFT700,LEFT420,LEFT441
+733,1653,2012-02-23,ABIN,67703,3,-99,10000833,232.57,355,TEST453,true,781.83,631,LEFT424,LEFT119,LEFT636,LEFT545
+734,3972,2012-02-23,FP-GTC,13836,0,14,10000690,889.17,788,TEST910,True,722.37,903,LEFT307,LEFT951,LEFT820,LEFT158
+735,3072,2012-02-23,ABIN,73506,0,16,10000566,155.93,830,TEST679,TRUE,610.32,857,LEFT726,LEFT603,LEFT946,LEFT405
+736,3969,2012-02-23,Others,62179,0,16,10000902,158.02,118,TEST285,TRUE,302.84,328,LEFT752,LEFT330,LEFT552,LEFT904
+737,608,2012-02-23,FP-non GTC,1120,3,-99,10000737,776.58,689,TEST447,true,618.32,394,LEFT618,LEFT469,LEFT523,LEFT978
+738,1691,2012-02-23,Others,32996,15,14,10000725,914.25,545,TEST765,TRUE,975.86,469,LEFT573,LEFT1,LEFT926,LEFT944
+739,544,2012-02-23,FP-GTC,12688,0,-99,10000412,645.35,456,TEST122,true,202.16,343,LEFT693,LEFT864,LEFT307,LEFT577
+740,3015,2012-02-23,FP-non GTC,13987,0,11,10000853,918.33,147,TEST915,False,981.98,716,LEFT75,LEFT102,LEFT806,LEFT906
+741,1781,2012-02-23,FP-GTC,95672,0,12,10000889,233.8,40,TEST931,True,367.99,357,LEFT697,LEFT919,LEFT392,LEFT736
+742,3414,2012-02-23,FP-non GTC,94847,0,11,10000059,373.07,398,TEST408,true,27.89,102,LEFT150,LEFT863,LEFT177,LEFT948
+743,1501,2012-02-23,FP-GTC,87118,0,5,10000439,539.89,416,TEST195,true,930.7,656,LEFT866,LEFT345,LEFT507,LEFT74
+744,480,2012-02-23,FP-non GTC,148324,15,12,10000830,342.52,850,TEST426,FALSE,643.95,887,LEFT958,LEFT918,LEFT769,LEFT833
+745,1311,2012-02-24,Auction,158666,15,14,10000488,685.33,3,TEST613,False,458.67,993,LEFT270,LEFT427,LEFT226,LEFT354
+746,1917,2012-02-24,ABIN,87118,0,11,10000784,670.14,998,TEST303,True,245.47,6,LEFT334,LEFT632,LEFT565,LEFT644
+747,3928,2012-02-24,ABIN,57990,3,12,10000822,162.08,963,TEST179,true,660.46,610,LEFT476,LEFT729,LEFT243,LEFT657
+748,3459,2012-02-24,ABIN,46575,0,12,10000560,325.66,864,TEST785,True,654.52,767,LEFT202,LEFT898,LEFT316,LEFT234
+749,1139,2012-02-24,FP-GTC,34273,100,13,10000428,197.82,728,TEST555,False,646.76,245,LEFT760,LEFT322,LEFT381,LEFT931
+750,4339,2012-02-24,Auction,34273,100,16,10000899,96.58,787,TEST467,False,344.35,1,LEFT492,LEFT753,LEFT846,LEFT538
+751,412,2012-02-24,FP-GTC,43479,0,15,10000445,562.85,467,TEST462,FALSE,9.94,783,LEFT160,LEFT489,LEFT530,LEFT887
+752,4320,2012-02-24,Others,67698,2,16,10000879,938.61,897,TEST263,False,459.74,347,LEFT215,LEFT433,LEFT52,LEFT342
+753,2435,2012-02-24,FP-non GTC,15568,15,13,10000832,183.99,432,TEST718,FALSE,918.01,815,LEFT534,LEFT339,LEFT664,LEFT535
+754,200,2012-02-24,FP-non GTC,12688,0,15,10000989,233.33,329,TEST999,False,806.13,665,LEFT86,LEFT124,LEFT599,LEFT611
+755,3997,2012-02-24,FP-non GTC,33977,15,5,10000257,-58.84,651,TEST124,True,54.78,829,LEFT569,LEFT502,LEFT810,LEFT33
+756,297,2012-02-24,Others,164261,0,14,10000272,898.91,382,TEST64,false,688.43,177,LEFT693,LEFT515,LEFT696,LEFT550
+757,1128,2012-02-24,FP-GTC,148324,15,-99,10000663,833.01,471,TEST931,False,738.5,775,LEFT23,LEFT957,LEFT84,LEFT267
+758,1669,2012-02-24,ABIN,150265,15,14,10000796,433.93,451,TEST155,FALSE,419.5,481,LEFT560,LEFT208,LEFT515,LEFT548
+759,4781,2012-02-24,FP-GTC,43398,0,11,10000962,659.65,464,TEST659,True,720.69,744,LEFT359,LEFT39,LEFT152,LEFT534
+760,4105,2012-02-24,Auction,57784,0,15,10000394,703.32,902,TEST299,FALSE,564.44,266,LEFT890,LEFT502,LEFT637,LEFT291
+761,1127,2012-02-24,Auction,174106,3,-99,10000255,924.89,307,TEST109,False,234.04,443,LEFT925,LEFT694,LEFT409,LEFT809
+762,2441,2012-02-24,FP-GTC,159184,0,-99,10000185,109.91,188,TEST715,true,886.42,318,LEFT191,LEFT449,LEFT626,LEFT748
+763,4941,2012-02-24,Others,2023,0,-99,10000522,417.75,235,TEST469,True,309.01,319,LEFT836,LEFT68,LEFT418,LEFT956
+764,4912,2012-02-24,Others,20485,0,14,10000962,505.74,581,TEST112,TRUE,765.38,842,LEFT911,LEFT376,LEFT978,LEFT656
+765,2014,2012-02-25,FP-non GTC,9426,3,16,10000872,529.01,401,TEST745,True,942.89,697,LEFT632,LEFT129,LEFT67,LEFT443
+766,1112,2012-02-25,FP-GTC,65,0,5,10000595,953.88,323,TEST422,false,164.01,638,LEFT16,LEFT764,LEFT92,LEFT582
+767,1564,2012-02-25,Auction,106340,15,13,10000644,448.84,667,TEST979,TRUE,280.62,687,LEFT273,LEFT97,LEFT241,LEFT838
+768,3455,2012-02-25,Others,174106,3,12,10000130,537.25,254,TEST751,false,808.76,220,LEFT313,LEFT895,LEFT917,LEFT84
+769,1380,2012-02-25,Others,35570,100,15,10000579,859.32,699,TEST854,False,38.19,412,LEFT279,LEFT452,LEFT377,LEFT119
+770,442,2012-02-25,Others,113593,15,15,10000845,121.21,460,TEST114,false,927.09,744,LEFT497,LEFT762,LEFT661,LEFT369
+771,4383,2012-02-25,ABIN,95672,3,13,10000886,-60.19,936,TEST854,TRUE,304.4,32,LEFT775,LEFT226,LEFT662,LEFT658
+772,2358,2012-02-25,FP-GTC,1357,0,15,10000712,431.98,510,TEST739,True,942.74,770,LEFT602,LEFT0,LEFT561,LEFT223
+773,394,2012-02-25,Auction,108782,15,15,10000728,306.14,965,TEST239,False,980.59,981,LEFT498,LEFT431,LEFT734,LEFT648
+774,1170,2012-02-25,Others,67698,0,15,10000515,861.45,7,TEST117,false,156.15,227,LEFT404,LEFT126,LEFT853,LEFT293
+775,3765,2012-02-25,FP-non GTC,11554,0,12,10000449,426.14,362,TEST733,TRUE,638.43,234,LEFT825,LEFT554,LEFT257,LEFT966
+776,1574,2012-02-25,FP-non GTC,31673,0,15,10000607,88.93,871,TEST142,False,506.6,938,LEFT633,LEFT298,LEFT885,LEFT329
+777,370,2012-02-25,FP-GTC,2635,0,5,10000791,982.63,303,TEST718,True,300.63,325,LEFT739,LEFT904,LEFT272,LEFT141
+778,1269,2012-02-25,Auction,155226,0,15,10000468,388.94,80,TEST95,False,881.33,651,LEFT716,LEFT292,LEFT818,LEFT541
+779,4358,2012-02-25,Others,1349,0,13,10000159,300.52,728,TEST744,TRUE,978.56,43,LEFT919,LEFT868,LEFT668,LEFT139
+780,1880,2012-02-26,Auction,75665,0,-99,10000628,932.59,133,TEST342,True,328.83,589,LEFT556,LEFT398,LEFT289,LEFT985
+781,4618,2012-02-26,Others,759,0,11,10000200,855.85,285,TEST806,false,300.58,381,LEFT226,LEFT372,LEFT310,LEFT523
+782,2794,2012-02-26,FP-non GTC,6762,0,16,10000508,134.83,138,TEST971,False,372.95,453,LEFT509,LEFT503,LEFT461,LEFT595
+783,911,2012-02-26,FP-GTC,158798,0,12,10000444,902.75,28,TEST872,FALSE,361.8,368,LEFT862,LEFT994,LEFT878,LEFT434
+784,595,2012-02-26,Others,46575,0,11,10000999,706.07,41,TEST509,TRUE,943.86,417,LEFT593,LEFT86,LEFT407,LEFT609
+785,421,2012-02-26,Others,87118,0,11,10000054,186.34,162,TEST293,True,661.78,91,LEFT439,LEFT688,LEFT719,LEFT278
+786,2721,2012-02-26,Auction,139255,15,5,10000337,469.74,640,TEST572,FALSE,89.97,644,LEFT45,LEFT439,LEFT782,LEFT468
+787,2949,2012-02-27,Others,43398,0,12,10000532,513.6,835,TEST913,True,493.06,469,LEFT867,LEFT659,LEFT747,LEFT827
+788,2069,2012-02-27,Others,88750,0,11,10000284,469.67,295,TEST582,TRUE,272.5,710,LEFT20,LEFT975,LEFT876,LEFT580
+789,3374,2012-02-27,FP-GTC,165888,0,13,10000383,522.63,380,TEST740,true,221.9,97,LEFT587,LEFT278,LEFT454,LEFT828
+790,2028,2012-02-27,FP-non GTC,145970,0,16,10000512,565.96,330,TEST748,True,659.18,404,LEFT944,LEFT878,LEFT797,LEFT562
+791,4084,2012-02-27,ABIN,16145,0,5,10000372,153.93,203,TEST541,False,537.38,587,LEFT614,LEFT982,LEFT225,LEFT485
+792,953,2012-02-27,Others,100847,0,-99,10000981,188.55,382,TEST659,FALSE,847.53,813,LEFT239,LEFT404,LEFT562,LEFT888
+793,810,2012-02-27,Auction,6762,0,16,10000927,437.78,536,TEST453,False,542.53,419,LEFT71,LEFT434,LEFT569,LEFT154
+794,1442,2012-02-27,ABIN,10058,3,15,10000236,694.98,296,TEST624,False,164.34,580,LEFT836,LEFT558,LEFT398,LEFT880
+795,1634,2012-02-27,FP-non GTC,533,0,13,10000989,680.31,973,TEST158,false,7.55,501,LEFT11,LEFT917,LEFT509,LEFT999
+796,1271,2012-02-27,Others,158666,15,-99,10000006,943.52,483,TEST12,True,911.52,267,LEFT724,LEFT544,LEFT755,LEFT846
+797,2505,2012-02-27,Others,44079,0,16,10000305,918.05,846,TEST528,true,448.53,261,LEFT702,LEFT204,LEFT544,LEFT993
+798,2698,2012-02-28,FP-GTC,113593,15,11,10000658,600.75,526,TEST47,False,719.96,113,LEFT83,LEFT873,LEFT952,LEFT189
+799,2245,2012-02-28,ABIN,87118,0,16,10000660,-8.74,737,TEST295,true,240.82,151,LEFT915,LEFT166,LEFT860,LEFT589
+800,3297,2012-02-28,ABIN,132939,0,11,10000132,753.55,970,TEST34,True,274.82,534,LEFT336,LEFT615,LEFT92,LEFT882
+801,4705,2012-02-28,ABIN,31519,0,14,10000199,148.65,359,TEST922,TRUE,256.91,471,LEFT335,LEFT928,LEFT826,LEFT808
+802,4381,2012-02-28,ABIN,156614,0,-99,10000483,794.85,980,TEST713,TRUE,289.33,901,LEFT990,LEFT843,LEFT514,LEFT344
+803,4957,2012-02-28,FP-GTC,67703,3,13,10000101,412.97,585,TEST39,FALSE,608.97,580,LEFT49,LEFT163,LEFT366,LEFT783
+804,2865,2012-02-28,FP-GTC,31519,0,14,10000299,650.01,387,TEST385,True,150.33,767,LEFT125,LEFT178,LEFT948,LEFT505
+805,1679,2012-02-28,Others,20865,0,14,10000977,289.53,83,TEST18,false,739.25,38,LEFT538,LEFT521,LEFT211,LEFT117
+806,4844,2012-02-28,FP-non GTC,216,0,14,10000639,703.57,737,TEST69,FALSE,568.69,14,LEFT820,LEFT856,LEFT858,LEFT980
+807,2383,2012-02-28,FP-non GTC,174106,3,5,10000789,322.48,774,TEST652,False,540.15,714,LEFT153,LEFT41,LEFT132,LEFT155
+808,760,2012-02-28,FP-non GTC,15115,0,14,10000754,726.86,357,TEST227,True,596.7,549,LEFT575,LEFT350,LEFT847,LEFT127
+809,4626,2012-02-28,ABIN,45333,0,15,10000321,6.44,487,TEST313,TRUE,858.97,792,LEFT779,LEFT780,LEFT123,LEFT917
+810,4472,2012-02-28,FP-GTC,32876,0,14,10000810,41.24,660,TEST18,False,723.51,162,LEFT383,LEFT310,LEFT700,LEFT888
+811,967,2012-03-01,Others,13987,0,16,10000710,838.52,102,TEST344,true,473.54,100,LEFT971,LEFT469,LEFT442,LEFT890
+812,3793,2012-03-01,FP-GTC,103324,15,13,10000629,964.69,641,TEST962,true,107.4,530,LEFT200,LEFT968,LEFT387,LEFT875
+813,2278,2012-03-01,FP-GTC,57013,0,14,10000783,654.81,587,TEST222,true,506.79,235,LEFT748,LEFT920,LEFT16,LEFT624
+814,865,2012-03-01,Others,3838,0,-99,10000326,197.02,886,TEST439,TRUE,697.33,800,LEFT879,LEFT798,LEFT435,LEFT342
+815,3810,2012-03-01,FP-GTC,23446,23,16,10000253,867.17,368,TEST74,False,185.05,140,LEFT821,LEFT458,LEFT672,LEFT343
+816,2836,2012-03-01,ABIN,31519,3,5,10000319,417.87,326,TEST534,False,491.78,207,LEFT59,LEFT311,LEFT942,LEFT423
+817,4914,2012-03-01,FP-GTC,759,0,5,10000801,21.83,122,TEST283,false,431.89,34,LEFT341,LEFT156,LEFT979,LEFT595
+818,1190,2012-03-01,FP-non GTC,165888,0,-99,10000901,137.52,911,TEST358,false,605.26,851,LEFT53,LEFT517,LEFT159,LEFT253
+819,85,2012-03-01,FP-non GTC,11554,0,11,10000887,-27.66,222,TEST932,False,109.45,307,LEFT790,LEFT520,LEFT130,LEFT380
+820,1743,2012-03-01,FP-non GTC,314,0,14,10000882,176.76,340,TEST820,False,659.46,267,LEFT201,LEFT869,LEFT338,LEFT111
+821,2495,2012-03-01,ABIN,20886,0,15,10000210,590.09,18,TEST671,false,214.41,885,LEFT527,LEFT289,LEFT784,LEFT21
+822,1275,2012-03-01,ABIN,80287,0,11,10000769,145.66,851,TEST706,True,214.35,256,LEFT646,LEFT25,LEFT395,LEFT46
+823,4134,2012-03-01,Auction,106246,0,13,10000730,193.64,504,TEST444,true,530.64,502,LEFT415,LEFT38,LEFT999,LEFT631
+824,207,2012-03-01,ABIN,95672,3,12,10000013,398.3,423,TEST687,False,76.77,96,LEFT51,LEFT123,LEFT854,LEFT21
+825,1701,2012-03-02,FP-GTC,11554,0,-99,10000539,966.75,596,TEST81,false,101.89,452,LEFT671,LEFT710,LEFT583,LEFT715
+826,289,2012-03-02,Others,132939,0,11,10000603,904.07,385,TEST290,TRUE,85.14,118,LEFT18,LEFT691,LEFT201,LEFT144
+827,2605,2012-03-02,FP-non GTC,170083,3,14,10000113,525.22,626,TEST938,TRUE,809.49,30,LEFT988,LEFT536,LEFT711,LEFT778
+828,116,2012-03-02,FP-GTC,36250,0,14,10000960,828.52,90,TEST328,FALSE,807.73,806,LEFT476,LEFT913,LEFT307,LEFT943
+829,3211,2012-03-02,Auction,60606,3,14,10000728,67.57,389,TEST5,TRUE,672.36,345,LEFT990,LEFT603,LEFT823,LEFT343
+830,3127,2012-03-02,Auction,1504,0,14,10000084,962.75,656,TEST982,false,247.31,413,LEFT120,LEFT680,LEFT749,LEFT416
+831,1526,2012-03-02,Others,9426,3,11,10000503,292.73,51,TEST133,FALSE,344.3,429,LEFT200,LEFT811,LEFT790,LEFT616
+832,4722,2012-03-02,Others,2635,0,11,10000391,10.32,365,TEST753,True,674.28,625,LEFT178,LEFT407,LEFT608,LEFT934
+833,3426,2012-03-02,Others,533,0,15,10000921,780.26,547,TEST903,False,763.8,23,LEFT308,LEFT877,LEFT490,LEFT634
+834,1886,2012-03-02,FP-GTC,25147,0,12,10000098,775.84,166,TEST358,False,738.71,414,LEFT224,LEFT682,LEFT395,LEFT184
+835,2542,2012-03-02,ABIN,1349,0,5,10000109,234.45,270,TEST618,TRUE,774.94,392,LEFT159,LEFT477,LEFT389,LEFT555
+836,1644,2012-03-02,Others,31519,3,11,10000721,788.31,85,TEST384,false,264.89,118,LEFT290,LEFT458,LEFT842,LEFT171
+837,975,2012-03-02,FP-GTC,170302,15,15,10000840,174.32,19,TEST689,FALSE,486.05,458,LEFT460,LEFT735,LEFT772,LEFT266
+838,3258,2012-03-02,FP-non GTC,20213,0,5,10000603,392.4,703,TEST994,true,716.98,171,LEFT156,LEFT641,LEFT782,LEFT362
+839,1454,2012-03-02,Auction,118687,3,11,10000966,230.76,982,TEST610,false,79.09,317,LEFT556,LEFT642,LEFT335,LEFT355
+840,1883,2012-03-02,Auction,48904,0,12,10000308,-31.08,991,TEST663,FALSE,407.35,211,LEFT461,LEFT126,LEFT787,LEFT832
+841,2988,2012-03-03,FP-non GTC,43479,0,16,10000306,427.16,991,TEST914,FALSE,840.99,108,LEFT203,LEFT562,LEFT477,LEFT863
+842,2540,2012-03-03,FP-GTC,35570,100,-99,10000207,831.84,382,TEST788,TRUE,870.94,328,LEFT884,LEFT514,LEFT397,LEFT106
+843,2097,2012-03-03,FP-GTC,43972,100,15,10000807,980.48,827,TEST782,False,821.9,242,LEFT59,LEFT690,LEFT17,LEFT881
+844,3283,2012-03-03,Auction,15568,15,14,10000230,374.58,889,TEST200,TRUE,420.63,276,LEFT50,LEFT893,LEFT749,LEFT305
+845,1530,2012-03-03,FP-non GTC,113593,15,-99,10000142,443.06,822,TEST830,false,36.75,65,LEFT610,LEFT523,LEFT958,LEFT376
+846,4764,2012-03-03,Auction,152801,0,11,10000181,405.23,91,TEST634,true,456.59,326,LEFT925,LEFT690,LEFT172,LEFT830
+847,407,2012-03-03,FP-GTC,15868,0,16,10000348,823.01,601,TEST906,FALSE,911.29,927,LEFT433,LEFT742,LEFT27,LEFT817
+848,727,2012-03-03,Others,314,0,5,10000002,414.18,980,TEST797,true,417.07,401,LEFT817,LEFT745,LEFT308,LEFT581
+849,1925,2012-03-03,FP-GTC,67703,3,11,10000507,269.94,539,TEST36,True,417.63,752,LEFT852,LEFT99,LEFT352,LEFT347
+850,3884,2012-03-03,ABIN,16145,0,16,10000029,591.02,393,TEST927,TRUE,246.9,217,LEFT293,LEFT242,LEFT845,LEFT122
+851,4907,2012-03-03,FP-non GTC,34273,100,15,10000558,619.58,31,TEST411,true,808.34,82,LEFT847,LEFT217,LEFT251,LEFT262
+852,2667,2012-03-03,ABIN,48904,0,16,10000430,-27.22,305,TEST413,FALSE,887.95,124,LEFT586,LEFT948,LEFT253,LEFT445
+853,508,2012-03-03,ABIN,64076,0,12,10000423,431.16,559,TEST56,false,106.72,679,LEFT537,LEFT580,LEFT968,LEFT121
+854,2160,2012-03-04,FP-GTC,75665,0,14,10000349,590.6,3,TEST129,False,231.71,479,LEFT349,LEFT190,LEFT64,LEFT148
+855,1104,2012-03-04,ABIN,148324,15,-99,10000713,901.4,389,TEST270,FALSE,111.11,573,LEFT630,LEFT891,LEFT393,LEFT879
+856,727,2012-03-04,ABIN,20886,0,16,10000781,451.94,831,TEST795,true,855.44,961,LEFT488,LEFT441,LEFT815,LEFT959
+857,1579,2012-03-04,FP-non GTC,46575,0,13,10000281,218.36,569,TEST493,false,490.59,874,LEFT48,LEFT686,LEFT590,LEFT727
+858,3794,2012-03-04,FP-GTC,139973,0,5,10000538,756.36,410,TEST333,True,149.54,728,LEFT315,LEFT395,LEFT406,LEFT969
+859,2842,2012-03-04,ABIN,23446,23,15,10000833,96.56,454,TEST823,False,390.11,830,LEFT812,LEFT103,LEFT372,LEFT807
+860,140,2012-03-04,Others,36250,0,12,10000614,233.79,182,TEST49,FALSE,931.61,135,LEFT813,LEFT102,LEFT53,LEFT639
+861,3007,2012-03-04,ABIN,20865,0,12,10000912,386.74,484,TEST854,false,635.5,335,LEFT459,LEFT50,LEFT525,LEFT497
+862,738,2012-03-04,ABIN,0,15,-99,10000261,739.16,285,TEST462,true,456.98,109,LEFT979,LEFT469,LEFT78,LEFT634
+863,2164,2012-03-04,ABIN,64076,0,-99,10000404,947.64,957,TEST235,TRUE,314.52,843,LEFT68,LEFT15,LEFT19,LEFT802
+864,663,2012-03-04,ABIN,113802,15,16,10000231,392.66,412,TEST514,TRUE,346.6,163,LEFT818,LEFT929,LEFT860,LEFT763
+865,1653,2012-03-04,ABIN,2023,0,14,10000869,555.26,402,TEST441,False,467.43,977,LEFT716,LEFT622,LEFT821,LEFT545
+866,1226,2012-03-04,FP-non GTC,45333,0,14,10000207,369.55,30,TEST501,TRUE,941.59,994,LEFT290,LEFT58,LEFT371,LEFT582
+867,4438,2012-03-05,Others,94847,0,14,10000346,309.81,292,TEST658,True,894.81,47,LEFT348,LEFT942,LEFT897,LEFT380
+868,50,2012-03-05,FP-non GTC,113593,15,5,10000623,325.91,18,TEST484,FALSE,705.24,155,LEFT123,LEFT748,LEFT935,LEFT530
+869,151,2012-03-05,FP-GTC,31387,3,12,10000850,482.99,972,TEST368,true,842.63,134,LEFT126,LEFT191,LEFT964,LEFT757
+870,2751,2012-03-05,Others,1504,0,-99,10000842,-28.44,917,TEST19,False,604.34,477,LEFT335,LEFT327,LEFT946,LEFT629
+871,744,2012-03-05,ABIN,75665,0,11,10000466,540.33,880,TEST524,TRUE,988.0,6,LEFT64,LEFT515,LEFT671,LEFT356
+872,3138,2012-03-05,Auction,139973,0,11,10000927,-89.86,186,TEST956,True,237.12,472,LEFT846,LEFT30,LEFT477,LEFT360
+873,1700,2012-03-05,Auction,41940,0,16,10000870,21.72,203,TEST566,false,251.77,935,LEFT78,LEFT373,LEFT147,LEFT391
+874,3251,2012-03-05,ABIN,1161,3,16,10000382,168.97,267,TEST553,true,279.92,376,LEFT174,LEFT765,LEFT107,LEFT7
+875,359,2012-03-05,ABIN,95672,3,-99,10000199,275.1,880,TEST791,true,82.03,657,LEFT868,LEFT477,LEFT133,LEFT173
+876,4867,2012-03-05,FP-GTC,66767,15,16,10000060,-82.82,727,TEST148,true,790.79,292,LEFT814,LEFT943,LEFT316,LEFT304
+877,2459,2012-03-05,FP-GTC,223,0,15,10000233,120.16,873,TEST619,TRUE,237.65,45,LEFT536,LEFT752,LEFT60,LEFT797
+878,3784,2012-03-05,FP-non GTC,48027,0,12,10000277,782.64,613,TEST768,False,94.77,867,LEFT826,LEFT319,LEFT155,LEFT631
+879,4642,2012-03-05,Others,2635,0,15,10000223,423.64,460,TEST562,False,396.01,166,LEFT670,LEFT802,LEFT276,LEFT213
+880,103,2012-03-05,Auction,113802,15,12,10000045,688.0,464,TEST767,TRUE,350.06,971,LEFT976,LEFT968,LEFT636,LEFT847
+881,724,2012-03-05,Others,33038,15,14,10000098,941.4,769,TEST732,FALSE,807.18,146,LEFT918,LEFT688,LEFT433,LEFT545
+882,1751,2012-03-05,FP-GTC,31387,3,13,10000748,476.14,611,TEST29,True,655.63,610,LEFT287,LEFT570,LEFT540,LEFT319
+883,4259,2012-03-05,FP-GTC,61323,0,14,10000011,594.18,683,TEST9,FALSE,964.71,319,LEFT594,LEFT370,LEFT442,LEFT798
+884,3021,2012-03-05,FP-GTC,95672,0,16,10000035,8.41,290,TEST765,true,927.28,399,LEFT217,LEFT13,LEFT770,LEFT848
+885,1891,2012-03-06,Others,30059,3,14,10000512,604.5,973,TEST722,TRUE,333.64,891,LEFT371,LEFT578,LEFT336,LEFT11
+886,3982,2012-03-06,Auction,1349,0,5,10000126,250.41,148,TEST300,FALSE,329.08,950,LEFT465,LEFT241,LEFT42,LEFT329
+887,1397,2012-03-06,Others,63861,0,16,10000234,571.26,212,TEST246,true,147.08,669,LEFT335,LEFT504,LEFT600,LEFT961
+888,3110,2012-03-06,FP-non GTC,161567,15,11,10000217,769.84,105,TEST658,true,419.99,171,LEFT866,LEFT880,LEFT439,LEFT810
+889,1242,2012-03-06,Others,2635,0,13,10000460,590.39,805,TEST709,false,858.59,816,LEFT686,LEFT30,LEFT124,LEFT242
+890,216,2012-03-06,ABIN,63861,3,12,10000726,497.15,8,TEST341,TRUE,26.64,463,LEFT812,LEFT380,LEFT202,LEFT615
+891,1262,2012-03-06,FP-GTC,24760,0,15,10000513,365.49,206,TEST896,false,994.16,257,LEFT654,LEFT416,LEFT729,LEFT619
+892,2036,2012-03-06,Auction,43479,0,14,10000633,914.38,707,TEST17,True,982.59,145,LEFT745,LEFT644,LEFT29,LEFT754
+893,1441,2012-03-06,FP-non GTC,75708,3,16,10000262,-83.33,517,TEST524,False,699.51,692,LEFT698,LEFT901,LEFT693,LEFT811
+894,4335,2012-03-06,ABIN,26262,0,5,10000105,732.54,338,TEST492,False,374.42,663,LEFT665,LEFT549,LEFT217,LEFT407
+895,2210,2012-03-07,ABIN,759,0,15,10000893,651.89,691,TEST747,false,42.62,502,LEFT227,LEFT163,LEFT800,LEFT928
+896,851,2012-03-07,ABIN,130,0,12,10000153,683.74,130,TEST407,TRUE,190.14,463,LEFT469,LEFT250,LEFT510,LEFT886
+897,1925,2012-03-07,Auction,88750,0,11,10000711,608.95,584,TEST524,FALSE,76.11,72,LEFT810,LEFT48,LEFT734,LEFT872
+898,3284,2012-03-07,FP-non GTC,33038,15,13,10000605,820.89,839,TEST450,FALSE,263.14,322,LEFT745,LEFT968,LEFT30,LEFT823
+899,1769,2012-03-07,FP-GTC,132939,0,11,10000649,181.35,847,TEST788,TRUE,157.38,831,LEFT772,LEFT720,LEFT684,LEFT508
+900,897,2012-03-07,Others,44079,0,-99,10000792,116.86,388,TEST458,TRUE,268.38,403,LEFT405,LEFT667,LEFT32,LEFT168
+901,4786,2012-03-07,FP-GTC,45333,0,5,10000763,-92.71,857,TEST99,True,547.7,911,LEFT106,LEFT212,LEFT135,LEFT329
+902,1823,2012-03-07,FP-non GTC,113802,15,14,10000866,909.28,535,TEST858,True,924.93,817,LEFT81,LEFT60,LEFT845,LEFT985
+903,3982,2012-03-07,FP-non GTC,9426,3,11,10000459,370.45,119,TEST126,true,431.73,465,LEFT999,LEFT22,LEFT456,LEFT201
+904,394,2012-03-07,FP-GTC,175750,0,16,10000265,56.17,257,TEST479,False,499.18,944,LEFT134,LEFT362,LEFT121,LEFT691
+905,846,2012-03-07,FP-GTC,165888,0,15,10000913,274.35,720,TEST23,False,119.39,77,LEFT752,LEFT930,LEFT57,LEFT119
+906,2770,2012-03-07,Auction,6762,0,5,10000244,425.11,679,TEST726,false,298.98,286,LEFT443,LEFT977,LEFT345,LEFT611
+907,1109,2012-03-07,FP-non GTC,2023,0,11,10000320,410.94,444,TEST998,true,308.69,44,LEFT569,LEFT612,LEFT715,LEFT898
+908,2915,2012-03-07,FP-GTC,30059,3,11,10000027,121.63,240,TEST586,TRUE,237.16,89,LEFT32,LEFT957,LEFT515,LEFT45
+909,2932,2012-03-07,ABIN,103178,15,5,10000067,634.79,473,TEST88,true,331.26,353,LEFT490,LEFT979,LEFT311,LEFT677
+910,3335,2012-03-08,ABIN,170302,15,15,10000674,849.69,153,TEST478,TRUE,255.53,650,LEFT837,LEFT568,LEFT621,LEFT557
+911,4161,2012-03-08,FP-non GTC,24541,0,5,10000296,331.6,494,TEST551,True,215.88,667,LEFT616,LEFT577,LEFT758,LEFT421
+912,1632,2012-03-08,FP-non GTC,48027,0,13,10000482,363.72,901,TEST600,TRUE,101.11,650,LEFT539,LEFT912,LEFT155,LEFT816
+913,474,2012-03-08,FP-non GTC,166013,15,14,10000480,46.84,760,TEST719,FALSE,523.75,260,LEFT649,LEFT288,LEFT612,LEFT866
+914,4538,2012-03-08,Others,6762,0,5,10000638,172.9,457,TEST658,True,828.22,218,LEFT415,LEFT49,LEFT80,LEFT152
+915,4743,2012-03-08,FP-non GTC,158666,15,15,10000220,999.3,429,TEST947,false,20.8,533,LEFT329,LEFT887,LEFT443,LEFT607
+916,1826,2012-03-08,FP-non GTC,139973,0,16,10000230,785.23,635,TEST641,TRUE,128.43,141,LEFT867,LEFT582,LEFT124,LEFT918
+917,464,2012-03-08,ABIN,67698,2,-99,10000649,869.71,697,TEST882,true,411.61,68,LEFT914,LEFT407,LEFT815,LEFT785
+918,1890,2012-03-08,FP-non GTC,4943,0,16,10000993,-40.61,204,TEST912,False,874.26,193,LEFT182,LEFT46,LEFT883,LEFT224
+919,2938,2012-03-08,FP-GTC,166013,15,12,10000964,605.32,363,TEST368,FALSE,243.38,248,LEFT390,LEFT961,LEFT499,LEFT2
+920,1552,2012-03-08,FP-non GTC,75665,0,-99,10000637,654.67,978,TEST66,true,493.08,530,LEFT109,LEFT822,LEFT435,LEFT369
+921,2228,2012-03-09,ABIN,43479,0,14,10000041,570.11,52,TEST541,FALSE,104.4,674,LEFT710,LEFT609,LEFT659,LEFT146
+922,4009,2012-03-09,Others,62179,0,16,10000778,533.92,535,TEST423,true,933.36,902,LEFT705,LEFT538,LEFT631,LEFT149
+923,3372,2012-03-09,ABIN,152801,0,11,10000325,161.01,966,TEST578,True,562.83,506,LEFT927,LEFT446,LEFT96,LEFT82
+924,3158,2012-03-09,FP-non GTC,1357,0,14,10000536,530.09,317,TEST6,false,940.91,184,LEFT701,LEFT470,LEFT735,LEFT301
+925,3006,2012-03-09,Auction,57013,0,13,10000405,198.91,685,TEST102,true,13.29,589,LEFT295,LEFT649,LEFT131,LEFT377
+926,2258,2012-03-09,ABIN,759,0,12,10000051,665.0,465,TEST340,false,981.22,693,LEFT76,LEFT348,LEFT72,LEFT420
+927,1821,2012-03-09,ABIN,11554,0,5,10000656,490.94,513,TEST882,False,341.7,363,LEFT249,LEFT670,LEFT793,LEFT517
+928,2651,2012-03-09,ABIN,15568,15,16,10000543,491.4,260,TEST988,False,404.76,792,LEFT286,LEFT502,LEFT16,LEFT475
+929,237,2012-03-09,Others,88750,0,5,10000658,684.67,417,TEST740,false,436.0,656,LEFT291,LEFT943,LEFT418,LEFT619
+930,3970,2012-03-09,Others,533,0,13,10000521,-19.56,102,TEST65,FALSE,332.01,724,LEFT425,LEFT142,LEFT688,LEFT909
+931,3979,2012-03-09,Auction,34273,100,13,10000477,227.95,930,TEST427,TRUE,885.5,378,LEFT37,LEFT353,LEFT692,LEFT536
+932,68,2012-03-09,ABIN,41940,0,5,10000122,302.79,881,TEST284,True,925.8,602,LEFT477,LEFT235,LEFT481,LEFT714
+933,1565,2012-03-09,Auction,67703,3,14,10000638,315.63,69,TEST901,True,613.92,47,LEFT701,LEFT635,LEFT177,LEFT857
+934,3783,2012-03-09,Others,15868,0,-99,10000342,572.59,722,TEST539,False,665.39,332,LEFT55,LEFT517,LEFT73,LEFT953
+935,4199,2012-03-09,FP-GTC,314,0,13,10000926,562.46,350,TEST324,FALSE,91.74,650,LEFT615,LEFT911,LEFT693,LEFT302
+936,70,2012-03-10,FP-non GTC,165888,0,16,10000677,922.61,784,TEST212,true,380.1,103,LEFT858,LEFT854,LEFT746,LEFT812
+937,990,2012-03-10,FP-non GTC,63889,0,14,10000479,804.81,409,TEST99,TRUE,662.22,897,LEFT246,LEFT285,LEFT154,LEFT150
+938,1989,2012-03-10,FP-GTC,63861,0,15,10000188,462.02,958,TEST541,False,985.73,759,LEFT76,LEFT20,LEFT867,LEFT969
+939,231,2012-03-10,ABIN,20886,0,-99,10000584,26.63,273,TEST879,TRUE,607.9,688,LEFT438,LEFT778,LEFT53,LEFT667
+940,4185,2012-03-10,FP-GTC,100847,0,15,10000382,480.63,975,TEST671,false,301.77,524,LEFT835,LEFT736,LEFT70,LEFT82
+941,2426,2012-03-10,FP-GTC,6762,0,-99,10000048,-53.71,306,TEST211,FALSE,184.29,234,LEFT11,LEFT296,LEFT585,LEFT666
+942,2271,2012-03-10,FP-GTC,37831,0,16,10000719,249.41,593,TEST72,false,519.43,120,LEFT463,LEFT177,LEFT590,LEFT838
+943,4862,2012-03-10,ABIN,164,0,13,10000340,215.42,962,TEST502,true,178.33,964,LEFT931,LEFT679,LEFT406,LEFT343
+944,3568,2012-03-10,Others,15115,0,14,10000406,854.57,680,TEST460,True,508.36,408,LEFT695,LEFT877,LEFT814,LEFT605
+945,922,2012-03-10,Others,23446,23,16,10000930,140.21,853,TEST786,FALSE,892.97,832,LEFT888,LEFT631,LEFT539,LEFT169
+946,1419,2012-03-10,FP-GTC,60606,3,-99,10000840,414.05,694,TEST132,false,850.54,526,LEFT851,LEFT804,LEFT5,LEFT184
+947,3748,2012-03-10,ABIN,140746,100,14,10000349,860.89,170,TEST396,FALSE,972.24,602,LEFT747,LEFT532,LEFT682,LEFT495
+948,4044,2012-03-11,FP-GTC,99985,0,13,10000138,767.88,72,TEST284,true,36.49,637,LEFT716,LEFT515,LEFT504,LEFT35
+949,381,2012-03-11,ABIN,11554,0,11,10000415,847.44,238,TEST99,false,472.27,416,LEFT474,LEFT631,LEFT934,LEFT654
+950,502,2012-03-11,Others,164,0,5,10000506,253.21,934,TEST272,true,637.28,739,LEFT561,LEFT120,LEFT423,LEFT21
+951,4523,2012-03-11,FP-non GTC,66767,15,16,10000857,413.86,741,TEST551,True,346.9,364,LEFT639,LEFT675,LEFT516,LEFT37
+952,4960,2012-03-11,FP-non GTC,67698,2,5,10000350,569.53,45,TEST13,True,721.04,522,LEFT542,LEFT501,LEFT512,LEFT145
+953,3711,2012-03-11,Others,20865,0,5,10000354,849.89,256,TEST65,TRUE,817.88,757,LEFT458,LEFT261,LEFT456,LEFT264
+954,2159,2012-03-11,FP-GTC,279,15,-99,10000571,310.23,330,TEST877,False,252.68,105,LEFT501,LEFT823,LEFT563,LEFT865
+955,4695,2012-03-11,FP-GTC,1504,0,13,10000842,304.85,641,TEST64,false,144.72,446,LEFT915,LEFT956,LEFT502,LEFT759
+956,4856,2012-03-11,ABIN,63861,3,5,10000901,349.41,816,TEST492,true,706.1,473,LEFT685,LEFT752,LEFT720,LEFT939
+957,906,2012-03-11,FP-GTC,23446,23,15,10000378,615.46,896,TEST518,True,869.39,844,LEFT310,LEFT825,LEFT875,LEFT119
+958,3408,2012-03-11,Auction,148324,15,5,10000873,779.39,48,TEST937,True,825.79,980,LEFT970,LEFT6,LEFT647,LEFT660
+959,2297,2012-03-11,FP-GTC,139255,15,13,10000391,470.86,803,TEST620,false,735.24,837,LEFT43,LEFT129,LEFT417,LEFT389
+960,242,2012-03-11,ABIN,156356,0,5,10000151,68.43,772,TEST271,true,30.67,708,LEFT457,LEFT129,LEFT687,LEFT293
+961,4803,2012-03-11,ABIN,60606,3,16,10000988,362.31,322,TEST774,TRUE,652.29,54,LEFT849,LEFT703,LEFT629,LEFT360
+962,1902,2012-03-11,Others,106246,0,11,10000462,265.48,295,TEST847,true,14.69,315,LEFT373,LEFT466,LEFT709,LEFT989
+963,4481,2012-03-12,Others,3838,0,11,10000467,951.56,98,TEST139,false,356.13,860,LEFT760,LEFT955,LEFT43,LEFT84
+964,975,2012-03-12,Auction,31387,3,14,10000446,-9.31,667,TEST256,false,928.06,675,LEFT125,LEFT952,LEFT748,LEFT229
+965,3795,2012-03-12,Others,60606,3,14,10000968,225.25,29,TEST179,TRUE,419.53,299,LEFT579,LEFT558,LEFT87,LEFT283
+966,2746,2012-03-12,ABIN,23446,23,13,10000753,98.25,176,TEST891,False,717.55,87,LEFT851,LEFT549,LEFT539,LEFT161
+967,1669,2012-03-12,FP-non GTC,51582,0,11,10000767,370.19,643,TEST610,true,197.14,701,LEFT666,LEFT731,LEFT747,LEFT415
+968,1923,2012-03-12,FP-non GTC,15568,15,14,10000639,768.86,852,TEST14,False,822.92,872,LEFT797,LEFT598,LEFT670,LEFT680
+969,4888,2012-03-12,FP-GTC,75665,0,13,10000548,219.68,994,TEST893,True,614.58,127,LEFT931,LEFT442,LEFT987,LEFT470
+970,4015,2012-03-12,ABIN,95672,3,11,10000730,666.5,187,TEST579,TRUE,547.43,326,LEFT784,LEFT321,LEFT205,LEFT751
+971,4130,2012-03-12,Auction,20213,0,11,10000155,406.89,923,TEST447,false,176.35,977,LEFT496,LEFT994,LEFT864,LEFT806
+972,935,2012-03-12,ABIN,314,0,16,10000314,611.95,2,TEST182,False,963.39,508,LEFT365,LEFT351,LEFT770,LEFT13
+973,2736,2012-03-12,FP-GTC,1120,3,14,10000941,215.48,407,TEST309,false,858.01,796,LEFT56,LEFT156,LEFT280,LEFT538
+974,4956,2012-03-13,Others,121153,0,-99,10000586,-80.66,883,TEST761,FALSE,970.02,441,LEFT909,LEFT968,LEFT577,LEFT291
+975,229,2012-03-13,FP-non GTC,170083,3,15,10000943,19.12,515,TEST873,True,289.14,220,LEFT140,LEFT481,LEFT799,LEFT863
+976,800,2012-03-13,FP-GTC,20485,0,5,10000542,88.67,340,TEST46,FALSE,709.63,642,LEFT351,LEFT347,LEFT903,LEFT778
+977,4626,2012-03-13,Auction,6762,0,15,10000429,-5.24,75,TEST583,FALSE,459.27,396,LEFT775,LEFT505,LEFT611,LEFT707
+978,4308,2012-03-13,FP-non GTC,16145,0,12,10000613,440.29,303,TEST998,FALSE,237.12,409,LEFT165,LEFT13,LEFT431,LEFT5
+979,2943,2012-03-13,Others,113802,15,5,10000680,-70.5,133,TEST833,True,840.41,392,LEFT650,LEFT381,LEFT827,LEFT392
+980,3776,2012-03-13,FP-GTC,80135,0,14,10000509,-42.72,148,TEST482,True,153.24,849,LEFT857,LEFT951,LEFT785,LEFT417
+981,2649,2012-03-13,ABIN,174053,3,14,10000670,528.08,242,TEST122,TRUE,687.54,433,LEFT631,LEFT175,LEFT579,LEFT237
+982,2744,2012-03-13,FP-GTC,148324,15,-99,10000013,546.02,822,TEST641,true,182.51,217,LEFT68,LEFT131,LEFT923,LEFT229
+983,4243,2012-03-13,Others,50677,0,14,10000599,888.45,677,TEST336,false,678.52,100,LEFT966,LEFT986,LEFT743,LEFT438
+984,3347,2012-03-13,Auction,16509,0,14,10000806,533.55,559,TEST424,TRUE,851.35,55,LEFT801,LEFT442,LEFT944,LEFT126
+985,2661,2012-03-13,FP-GTC,156614,0,11,10000852,796.51,151,TEST302,TRUE,39.24,588,LEFT24,LEFT4,LEFT270,LEFT346
+986,4631,2012-03-14,Auction,45238,101,13,10000100,265.16,622,TEST20,true,571.2,565,LEFT692,LEFT209,LEFT425,LEFT902
+987,429,2012-03-14,ABIN,43398,0,15,10000859,509.12,251,TEST727,False,802.21,528,LEFT580,LEFT928,LEFT215,LEFT303
+988,4820,2012-03-14,Auction,36250,0,14,10000549,-3.6,456,TEST461,false,91.24,776,LEFT949,LEFT399,LEFT796,LEFT0
+989,1583,2012-03-14,ABIN,314,0,5,10000480,722.73,657,TEST504,false,215.18,94,LEFT50,LEFT481,LEFT978,LEFT945
+990,3116,2012-03-14,Auction,36250,0,12,10000846,657.93,473,TEST639,true,503.91,112,LEFT398,LEFT326,LEFT267,LEFT36
+991,809,2012-03-14,FP-non GTC,24541,0,11,10000278,384.69,797,TEST893,false,524.07,400,LEFT691,LEFT851,LEFT253,LEFT628
+992,3597,2012-03-14,FP-GTC,67703,3,-99,10000523,114.12,473,TEST187,TRUE,522.25,22,LEFT339,LEFT255,LEFT623,LEFT249
+993,4833,2012-03-14,Others,132939,0,15,10000520,328.89,78,TEST92,false,810.03,150,LEFT498,LEFT812,LEFT515,LEFT576
+994,781,2012-03-14,FP-GTC,11848,0,5,10000360,-9.69,677,TEST406,True,852.11,963,LEFT522,LEFT758,LEFT505,LEFT155
+995,4813,2012-03-14,Auction,67703,3,14,10000061,175.71,130,TEST857,False,285.14,346,LEFT963,LEFT444,LEFT863,LEFT811
+996,4774,2012-03-14,Auction,9426,3,14,10000755,73.29,303,TEST346,True,690.09,283,LEFT746,LEFT0,LEFT783,LEFT780
+997,2136,2012-03-14,ABIN,32876,0,14,10000044,161.77,813,TEST256,true,675.26,231,LEFT975,LEFT835,LEFT995,LEFT10
+998,2516,2012-03-14,Others,152801,0,16,10000929,650.03,167,TEST789,True,125.82,689,LEFT579,LEFT881,LEFT934,LEFT541
+999,373,2012-03-14,FP-GTC,11554,0,13,10000729,-96.75,233,TEST564,True,712.72,782,LEFT702,LEFT941,LEFT573,LEFT377
+1000,2740,2012-03-14,Auction,145970,0,5,10000155,818.24,840,TEST178,FALSE,979.84,929,LEFT132,LEFT725,LEFT391,LEFT906
+1001,2448,2012-03-15,Auction,15808,15,15,10000332,88.13,856,TEST17,True,147.48,652,LEFT915,LEFT204,LEFT249,LEFT547
+1002,4094,2012-03-15,Others,9426,3,16,10000475,450.33,683,TEST420,TRUE,10.39,823,LEFT41,LEFT868,LEFT292,LEFT352
+1003,1737,2012-03-15,Others,75708,3,16,10000443,699.15,503,TEST977,False,122.13,746,LEFT883,LEFT378,LEFT336,LEFT245
+1004,2027,2012-03-15,Others,30059,3,16,10000283,177.42,964,TEST475,true,2.07,563,LEFT976,LEFT51,LEFT522,LEFT257
+1005,1994,2012-03-15,FP-non GTC,4943,0,13,10000998,649.11,702,TEST293,false,275.42,771,LEFT741,LEFT666,LEFT704,LEFT760
+1006,3968,2012-03-15,FP-GTC,20485,101,15,10000998,989.65,402,TEST590,True,956.59,281,LEFT964,LEFT167,LEFT723,LEFT554
+1007,220,2012-03-15,Auction,99985,0,15,10000245,799.95,983,TEST709,True,706.29,943,LEFT309,LEFT595,LEFT182,LEFT911
+1008,2990,2012-03-15,ABIN,9426,3,14,10000869,513.96,389,TEST340,FALSE,413.91,604,LEFT672,LEFT6,LEFT971,LEFT690
+1009,2812,2012-03-15,Others,35570,100,13,10000811,961.69,350,TEST28,false,750.51,164,LEFT947,LEFT185,LEFT279,LEFT283
+1010,1090,2012-03-16,Auction,2635,0,16,10000866,200.6,696,TEST59,FALSE,416.58,640,LEFT305,LEFT746,LEFT403,LEFT857
+1011,1731,2012-03-16,Others,66767,15,5,10000539,325.95,275,TEST765,True,181.19,779,LEFT922,LEFT582,LEFT787,LEFT239
+1012,731,2012-03-16,Auction,16509,0,12,10000544,719.15,357,TEST640,TRUE,771.13,477,LEFT500,LEFT278,LEFT795,LEFT461
+1013,3157,2012-03-16,ABIN,2023,0,15,10000577,342.51,959,TEST275,TRUE,846.71,461,LEFT316,LEFT130,LEFT409,LEFT108
+1014,3412,2012-03-16,Others,140746,100,11,10000030,948.65,656,TEST846,False,585.12,287,LEFT885,LEFT733,LEFT443,LEFT532
+1015,1663,2012-03-16,ABIN,13987,0,-99,10000767,578.7,217,TEST656,TRUE,968.61,924,LEFT271,LEFT73,LEFT561,LEFT234
+1016,4692,2012-03-16,Auction,216,0,12,10000491,8.27,243,TEST470,true,903.52,21,LEFT672,LEFT721,LEFT656,LEFT75
+1017,2235,2012-03-16,ABIN,60340,0,16,10000387,379.74,557,TEST318,true,89.77,563,LEFT124,LEFT331,LEFT539,LEFT260
+1018,573,2012-03-16,Auction,156614,0,15,10000306,341.69,63,TEST832,False,885.53,781,LEFT260,LEFT674,LEFT813,LEFT127
+1019,3154,2012-03-16,ABIN,82494,15,5,10000316,404.17,378,TEST858,False,619.84,365,LEFT265,LEFT93,LEFT879,LEFT774
+1020,2512,2012-03-16,Auction,80135,0,5,10000091,371.71,737,TEST391,TRUE,27.71,376,LEFT761,LEFT30,LEFT582,LEFT960
+1021,1859,2012-03-16,ABIN,30059,3,-99,10000132,505.89,477,TEST906,FALSE,790.49,199,LEFT593,LEFT534,LEFT539,LEFT739
+1022,434,2012-03-16,FP-non GTC,10058,3,12,10000853,719.65,634,TEST355,True,769.42,325,LEFT196,LEFT113,LEFT960,LEFT191
+1023,2362,2012-03-16,Others,533,0,16,10000851,517.76,748,TEST761,true,479.55,928,LEFT854,LEFT686,LEFT184,LEFT735
+1024,1624,2012-03-16,FP-GTC,15115,0,13,10000153,165.59,492,TEST771,true,113.03,266,LEFT799,LEFT219,LEFT116,LEFT275
+1025,4005,2012-03-16,Auction,170083,3,12,10000970,567.89,26,TEST412,TRUE,361.99,26,LEFT266,LEFT681,LEFT168,LEFT561
+1026,4739,2012-03-16,ABIN,32996,15,5,10000580,448.37,781,TEST627,TRUE,896.8,624,LEFT243,LEFT328,LEFT521,LEFT131
+1027,1845,2012-03-16,FP-GTC,155226,0,-99,10000601,354.72,662,TEST504,FALSE,36.56,992,LEFT18,LEFT455,LEFT731,LEFT619
+1028,181,2012-03-16,Others,67703,3,-99,10000091,726.69,409,TEST420,FALSE,485.83,669,LEFT768,LEFT476,LEFT982,LEFT467
+1029,345,2012-03-16,Auction,132939,0,15,10000671,627.55,456,TEST313,false,377.0,918,LEFT887,LEFT61,LEFT740,LEFT106
+1030,4889,2012-03-16,FP-GTC,62179,0,11,10000784,365.71,762,TEST990,true,38.61,405,LEFT817,LEFT173,LEFT887,LEFT658
+1031,1538,2012-03-17,ABIN,108782,15,5,10000162,745.53,563,TEST238,FALSE,946.49,98,LEFT238,LEFT26,LEFT856,LEFT55
+1032,70,2012-03-17,ABIN,150047,3,15,10000461,-67.42,913,TEST452,True,760.22,621,LEFT194,LEFT73,LEFT435,LEFT224
+1033,1298,2012-03-17,FP-GTC,23446,23,-99,10000756,731.68,646,TEST931,TRUE,248.7,147,LEFT323,LEFT600,LEFT869,LEFT354
+1034,260,2012-03-17,FP-GTC,16145,0,5,10000762,191.94,505,TEST205,False,610.14,766,LEFT44,LEFT457,LEFT922,LEFT895
+1035,4263,2012-03-17,ABIN,20865,0,-99,10000094,867.08,328,TEST362,FALSE,569.04,664,LEFT554,LEFT317,LEFT402,LEFT133
+1036,2719,2012-03-17,ABIN,314,0,-99,10000940,983.03,313,TEST291,True,30.83,373,LEFT626,LEFT346,LEFT426,LEFT330
+1037,4629,2012-03-17,FP-non GTC,95672,0,14,10000478,476.51,185,TEST101,FALSE,312.63,19,LEFT166,LEFT566,LEFT147,LEFT639
+1038,2153,2012-03-17,FP-GTC,57784,0,5,10000286,781.9,274,TEST274,True,626.79,924,LEFT662,LEFT315,LEFT8,LEFT174
+1039,741,2012-03-17,Auction,11848,0,11,10000473,950.61,768,TEST405,FALSE,823.75,449,LEFT315,LEFT216,LEFT783,LEFT445
+1040,3998,2012-03-17,FP-non GTC,9426,3,-99,10000639,909.73,296,TEST736,True,528.84,835,LEFT861,LEFT553,LEFT622,LEFT890
+1041,485,2012-03-17,ABIN,33977,15,13,10000058,125.35,331,TEST164,True,177.48,347,LEFT479,LEFT788,LEFT669,LEFT934
+1042,2200,2012-03-17,ABIN,20485,101,12,10000161,243.09,236,TEST57,true,760.49,749,LEFT525,LEFT694,LEFT547,LEFT794
+1043,476,2012-03-17,Auction,140746,100,12,10000633,896.32,784,TEST476,FALSE,533.88,408,LEFT272,LEFT579,LEFT36,LEFT32
+1044,1951,2012-03-17,FP-GTC,174106,3,16,10000642,446.53,701,TEST72,true,92.36,574,LEFT601,LEFT293,LEFT563,LEFT660
+1045,3007,2012-03-17,Auction,95672,3,5,10000700,504.39,306,TEST938,False,648.15,358,LEFT503,LEFT149,LEFT140,LEFT878
+1046,652,2012-03-17,FP-GTC,35570,100,5,10000521,870.32,745,TEST676,FALSE,929.42,9,LEFT743,LEFT8,LEFT50,LEFT388
+1047,2307,2012-03-17,Others,60340,0,15,10000448,351.97,372,TEST97,false,152.0,944,LEFT302,LEFT429,LEFT629,LEFT795
+1048,1808,2012-03-17,FP-GTC,15115,0,15,10000832,105.38,101,TEST925,true,680.96,496,LEFT282,LEFT366,LEFT763,LEFT333
+1049,3565,2012-03-18,Auction,10866,0,12,10000419,-38.31,524,TEST23,FALSE,88.77,743,LEFT872,LEFT757,LEFT841,LEFT761
+1050,4284,2012-03-18,FP-non GTC,41940,0,11,10000120,772.5,960,TEST478,FALSE,71.87,709,LEFT167,LEFT272,LEFT923,LEFT58
+1051,4888,2012-03-18,Others,63861,3,12,10000450,861.19,647,TEST21,true,719.01,849,LEFT892,LEFT870,LEFT27,LEFT992
+1052,2846,2012-03-18,FP-GTC,164,0,-99,10000372,633.53,54,TEST213,false,198.75,534,LEFT757,LEFT666,LEFT906,LEFT959
+1053,1698,2012-03-18,FP-GTC,533,0,5,10000161,120.18,880,TEST486,TRUE,304.09,291,LEFT13,LEFT219,LEFT754,LEFT465
+1054,4862,2012-03-18,FP-GTC,24760,0,13,10000267,188.28,574,TEST329,TRUE,276.71,638,LEFT232,LEFT514,LEFT66,LEFT50
+1055,1088,2012-03-18,FP-non GTC,73506,0,16,10000240,871.42,202,TEST828,TRUE,813.32,569,LEFT113,LEFT286,LEFT407,LEFT881
+1056,1582,2012-03-18,Auction,94847,0,16,10000108,337.27,579,TEST4,TRUE,450.64,844,LEFT834,LEFT123,LEFT186,LEFT302
+1057,4889,2012-03-18,Others,38238,0,5,10000798,-61.43,744,TEST225,false,101.18,896,LEFT323,LEFT731,LEFT223,LEFT687
+1058,4723,2012-03-18,ABIN,223,0,12,10000685,611.77,891,TEST674,FALSE,62.34,303,LEFT709,LEFT243,LEFT784,LEFT41
+1059,1188,2012-03-18,ABIN,99985,0,-99,10000546,381.93,148,TEST325,true,261.51,170,LEFT640,LEFT991,LEFT338,LEFT406
+1060,4584,2012-03-18,FP-GTC,73506,0,16,10000475,602.61,125,TEST92,TRUE,472.57,853,LEFT571,LEFT410,LEFT532,LEFT350
+1061,3394,2012-03-18,FP-non GTC,108782,15,16,10000412,567.35,332,TEST634,True,869.83,462,LEFT229,LEFT121,LEFT11,LEFT30
+1062,4766,2012-03-18,ABIN,95173,0,14,10000939,666.33,197,TEST258,FALSE,130.43,470,LEFT507,LEFT556,LEFT914,LEFT804
+1063,2577,2012-03-18,FP-non GTC,174053,3,16,10000988,292.51,495,TEST212,True,732.24,315,LEFT54,LEFT669,LEFT999,LEFT582
+1064,3085,2012-03-18,FP-GTC,2023,0,11,10000722,120.0,114,TEST936,False,737.19,368,LEFT11,LEFT60,LEFT452,LEFT267
+1065,2769,2012-03-18,Auction,103324,15,16,10000846,740.45,360,TEST456,false,889.97,233,LEFT149,LEFT370,LEFT142,LEFT38
+1066,2246,2012-03-18,Others,150047,3,11,10000820,934.29,691,TEST624,FALSE,128.48,680,LEFT452,LEFT277,LEFT197,LEFT226
+1067,82,2012-03-19,FP-non GTC,175750,0,5,10000631,49.55,827,TEST317,False,961.21,958,LEFT882,LEFT623,LEFT352,LEFT681
+1068,4873,2012-03-19,FP-GTC,43972,100,12,10000386,600.47,596,TEST744,FALSE,188.1,847,LEFT805,LEFT343,LEFT615,LEFT357
+1069,572,2012-03-19,Others,121153,0,-99,10000273,740.95,709,TEST970,true,365.96,584,LEFT734,LEFT84,LEFT719,LEFT325
+1070,4354,2012-03-19,Others,759,0,16,10000895,982.9,167,TEST682,false,470.82,829,LEFT457,LEFT567,LEFT827,LEFT996
+1071,4452,2012-03-19,Auction,216,0,13,10000288,686.84,764,TEST871,False,556.62,774,LEFT979,LEFT45,LEFT205,LEFT44
+1072,2275,2012-03-19,FP-non GTC,48904,0,14,10000072,113.01,56,TEST455,FALSE,130.89,9,LEFT538,LEFT74,LEFT252,LEFT414
+1073,706,2012-03-19,FP-non GTC,4943,0,11,10000284,806.23,548,TEST467,FALSE,287.78,85,LEFT823,LEFT774,LEFT783,LEFT784
+1074,3212,2012-03-19,ABIN,99985,0,13,10000177,585.01,352,TEST179,TRUE,104.21,950,LEFT283,LEFT725,LEFT397,LEFT450
+1075,446,2012-03-20,FP-non GTC,1357,0,15,10000334,991.88,231,TEST331,TRUE,798.69,299,LEFT576,LEFT120,LEFT507,LEFT158
+1076,1418,2012-03-20,FP-GTC,166013,15,11,10000997,-97.3,26,TEST848,true,274.43,951,LEFT358,LEFT615,LEFT684,LEFT761
+1077,4411,2012-03-20,Others,63864,3,12,10000788,-41.41,86,TEST418,TRUE,672.94,833,LEFT474,LEFT778,LEFT561,LEFT135
+1078,4070,2012-03-20,FP-non GTC,95173,0,15,10000537,197.35,603,TEST310,true,140.57,651,LEFT494,LEFT488,LEFT206,LEFT740
+1079,82,2012-03-20,FP-GTC,4943,0,11,10000917,651.6,146,TEST640,True,765.49,892,LEFT224,LEFT65,LEFT744,LEFT959
+1080,1434,2012-03-20,ABIN,82494,15,13,10000609,879.4,602,TEST295,false,323.33,572,LEFT680,LEFT773,LEFT503,LEFT384
+1081,4695,2012-03-20,Others,314,0,5,10000920,543.4,850,TEST28,false,314.26,643,LEFT250,LEFT927,LEFT485,LEFT62
+1082,345,2012-03-21,Others,24541,0,13,10000242,76.76,846,TEST632,FALSE,860.56,257,LEFT114,LEFT694,LEFT447,LEFT329
+1083,852,2012-03-21,FP-GTC,152801,0,-99,10000095,185.01,512,TEST877,False,586.75,119,LEFT601,LEFT825,LEFT901,LEFT929
+1084,2012,2012-03-21,FP-non GTC,145970,0,-99,10000708,-93.24,205,TEST380,True,353.5,725,LEFT444,LEFT358,LEFT13,LEFT530
+1085,2543,2012-03-21,Auction,1504,0,5,10000924,409.69,470,TEST576,FALSE,288.71,357,LEFT250,LEFT116,LEFT340,LEFT463
+1086,1789,2012-03-21,Auction,155226,0,14,10000581,133.04,538,TEST236,False,476.43,240,LEFT183,LEFT327,LEFT836,LEFT671
+1087,2295,2012-03-21,ABIN,158666,15,13,10000074,95.66,876,TEST890,True,833.26,32,LEFT54,LEFT312,LEFT309,LEFT830
+1088,1315,2012-03-21,FP-GTC,80287,0,13,10000552,554.2,522,TEST242,false,24.02,624,LEFT687,LEFT129,LEFT93,LEFT439
+1089,1714,2012-03-21,FP-GTC,10058,3,14,10000801,511.02,374,TEST639,false,475.42,956,LEFT299,LEFT606,LEFT205,LEFT893
+1090,2867,2012-03-21,FP-non GTC,15568,15,11,10000736,518.56,770,TEST632,True,187.44,979,LEFT772,LEFT203,LEFT850,LEFT600
+1091,2302,2012-03-21,ABIN,94847,0,13,10000269,866.52,5,TEST963,false,260.58,667,LEFT690,LEFT938,LEFT602,LEFT681
+1092,1514,2012-03-21,FP-GTC,67698,0,13,10000462,828.84,54,TEST877,False,116.6,825,LEFT966,LEFT341,LEFT605,LEFT401
+1093,1141,2012-03-21,FP-GTC,10866,0,5,10000296,286.78,323,TEST791,false,328.76,482,LEFT750,LEFT10,LEFT990,LEFT532
+1094,222,2012-03-22,FP-non GTC,95173,0,15,10000198,441.25,516,TEST428,true,438.08,617,LEFT404,LEFT579,LEFT459,LEFT166
+1095,4870,2012-03-22,FP-GTC,9426,3,-99,10000972,776.85,616,TEST65,True,445.56,223,LEFT673,LEFT619,LEFT319,LEFT929
+1096,3476,2012-03-22,Auction,99985,0,16,10000132,585.27,343,TEST562,false,945.54,919,LEFT284,LEFT980,LEFT679,LEFT434
+1097,379,2012-03-22,FP-GTC,66767,15,5,10000607,454.49,746,TEST690,TRUE,811.55,129,LEFT423,LEFT494,LEFT742,LEFT268
+1098,4767,2012-03-22,ABIN,20886,0,-99,10000076,398.41,266,TEST227,true,112.18,624,LEFT878,LEFT962,LEFT96,LEFT195
+1099,4645,2012-03-22,FP-GTC,2023,0,11,10000299,63.71,980,TEST103,TRUE,870.3,370,LEFT646,LEFT339,LEFT679,LEFT855
+1100,1667,2012-03-22,Others,63864,3,-99,10000416,870.87,810,TEST216,TRUE,751.15,101,LEFT318,LEFT487,LEFT925,LEFT884
+1101,4468,2012-03-22,ABIN,33038,15,12,10000517,-53.83,541,TEST447,True,334.04,254,LEFT850,LEFT529,LEFT631,LEFT21
+1102,1200,2012-03-22,Auction,26249,0,11,10000606,173.28,925,TEST409,FALSE,717.53,353,LEFT824,LEFT224,LEFT657,LEFT951
+1103,1878,2012-03-23,ABIN,164,0,14,10000926,345.51,582,TEST182,True,919.21,99,LEFT247,LEFT773,LEFT420,LEFT536
+1104,4322,2012-03-23,FP-non GTC,759,0,12,10000516,895.6,106,TEST692,FALSE,574.58,212,LEFT476,LEFT555,LEFT377,LEFT249
+1105,1629,2012-03-23,FP-GTC,155226,0,16,10000855,971.31,895,TEST21,FALSE,708.48,751,LEFT431,LEFT499,LEFT554,LEFT604
+1106,1848,2012-03-23,ABIN,80135,0,15,10000580,921.23,472,TEST101,TRUE,229.11,118,LEFT383,LEFT652,LEFT236,LEFT990
+1107,3653,2012-03-23,ABIN,155226,0,11,10000607,705.24,196,TEST797,True,363.25,144,LEFT885,LEFT81,LEFT396,LEFT438
+1108,2606,2012-03-23,Others,24760,0,16,10000582,650.02,910,TEST796,TRUE,264.73,909,LEFT950,LEFT368,LEFT27,LEFT383
+1109,4819,2012-03-23,FP-GTC,32996,15,5,10000461,-11.92,745,TEST615,FALSE,900.13,386,LEFT945,LEFT807,LEFT459,LEFT163
+1110,1557,2012-03-23,ABIN,88750,0,15,10000228,891.42,292,TEST769,False,181.08,928,LEFT438,LEFT786,LEFT680,LEFT789
+1111,3649,2012-03-23,ABIN,132939,0,16,10000641,642.27,887,TEST185,true,575.77,788,LEFT407,LEFT745,LEFT470,LEFT626
+1112,4151,2012-03-23,Auction,113802,15,13,10000386,192.62,909,TEST457,FALSE,148.75,125,LEFT192,LEFT186,LEFT919,LEFT519
+1113,2109,2012-03-24,Auction,33977,15,11,10000502,773.15,778,TEST777,false,963.85,444,LEFT877,LEFT854,LEFT723,LEFT574
+1114,3632,2012-03-24,Others,65,0,16,10000085,26.41,165,TEST868,FALSE,89.75,526,LEFT800,LEFT800,LEFT349,LEFT841
+1115,4051,2012-03-24,Auction,63864,3,16,10000577,972.64,401,TEST837,False,200.89,780,LEFT726,LEFT465,LEFT67,LEFT260
+1116,2900,2012-03-24,Others,64076,0,13,10000774,631.06,624,TEST271,True,335.87,474,LEFT404,LEFT422,LEFT330,LEFT371
+1117,214,2012-03-24,FP-non GTC,57013,0,11,10000320,405.04,499,TEST150,false,105.76,171,LEFT150,LEFT693,LEFT251,LEFT858
+1118,2778,2012-03-24,FP-non GTC,156356,0,-99,10000981,504.82,464,TEST584,False,94.93,55,LEFT67,LEFT265,LEFT611,LEFT373
+1119,4386,2012-03-24,Others,166013,15,12,10000085,589.16,182,TEST526,true,704.98,775,LEFT250,LEFT248,LEFT327,LEFT851
+1120,1684,2012-03-24,ABIN,41940,0,5,10000402,-51.49,772,TEST544,False,678.48,866,LEFT75,LEFT651,LEFT873,LEFT778
+1121,4908,2012-03-24,ABIN,106340,15,5,10000029,355.26,528,TEST635,false,815.53,121,LEFT965,LEFT94,LEFT662,LEFT776
+1122,3421,2012-03-24,Others,51582,0,12,10000920,567.46,143,TEST175,true,131.17,568,LEFT132,LEFT245,LEFT555,LEFT854
+1123,2520,2012-03-25,Others,48027,0,13,10000461,13.54,640,TEST598,TRUE,422.88,176,LEFT956,LEFT371,LEFT326,LEFT599
+1124,4825,2012-03-25,Auction,24541,0,15,10000186,729.41,338,TEST748,True,463.66,850,LEFT471,LEFT10,LEFT390,LEFT249
+1125,4792,2012-03-25,Others,32876,0,13,10000943,147.11,314,TEST11,true,859.8,13,LEFT149,LEFT732,LEFT376,LEFT759
+1126,4925,2012-03-25,FP-GTC,95672,0,13,10000069,690.46,403,TEST472,false,775.44,130,LEFT224,LEFT157,LEFT677,LEFT932
+1127,4644,2012-03-25,FP-GTC,121153,0,16,10000389,17.78,314,TEST115,False,463.93,553,LEFT853,LEFT392,LEFT499,LEFT467
+1128,911,2012-03-25,FP-GTC,314,0,-99,10000257,279.32,701,TEST741,true,358.26,492,LEFT616,LEFT19,LEFT600,LEFT223
+1129,2370,2012-03-25,FP-GTC,166013,15,15,10000507,178.54,57,TEST687,false,97.79,527,LEFT69,LEFT487,LEFT779,LEFT224
+1130,1485,2012-03-25,Auction,51582,0,15,10000678,726.23,637,TEST448,False,685.7,674,LEFT758,LEFT710,LEFT494,LEFT15
+1131,2828,2012-03-25,FP-non GTC,31519,3,12,10000972,725.35,950,TEST690,true,20.93,910,LEFT43,LEFT751,LEFT204,LEFT705
+1132,2315,2012-03-25,ABIN,34273,100,-99,10000347,233.99,272,TEST87,FALSE,939.27,130,LEFT1,LEFT269,LEFT686,LEFT717
+1133,1832,2012-03-25,ABIN,67698,2,-99,10000867,740.62,47,TEST281,False,791.79,264,LEFT870,LEFT592,LEFT120,LEFT227
+1134,1221,2012-03-25,Others,156614,0,5,10000389,469.12,617,TEST164,False,307.06,212,LEFT711,LEFT898,LEFT22,LEFT955
+1135,2359,2012-03-25,Others,170302,15,16,10000559,437.96,946,TEST853,FALSE,26.37,859,LEFT492,LEFT613,LEFT889,LEFT542
+1136,1806,2012-03-25,FP-GTC,80053,0,14,10000752,116.92,993,TEST637,True,113.18,142,LEFT462,LEFT906,LEFT248,LEFT344
+1137,3259,2012-03-25,Others,34273,100,12,10000158,788.41,16,TEST726,True,188.2,508,LEFT20,LEFT791,LEFT834,LEFT902
+1138,593,2012-03-25,FP-GTC,43972,100,15,10000934,404.96,199,TEST507,false,10.7,890,LEFT679,LEFT797,LEFT444,LEFT210
+1139,1989,2012-03-25,Others,11554,0,12,10000999,303.44,708,TEST495,FALSE,160.69,394,LEFT795,LEFT834,LEFT363,LEFT620
+1140,809,2012-03-25,FP-non GTC,139255,15,12,10000344,935.22,438,TEST518,True,506.68,404,LEFT861,LEFT637,LEFT19,LEFT636
+1141,1230,2012-03-25,FP-non GTC,94847,0,11,10000978,594.01,693,TEST487,True,718.01,789,LEFT530,LEFT832,LEFT582,LEFT326
+1142,3694,2012-03-25,Others,9426,3,16,10000277,206.82,263,TEST456,false,704.82,93,LEFT971,LEFT850,LEFT599,LEFT133
+1143,36,2012-03-26,FP-non GTC,106340,15,14,10000433,300.79,886,TEST848,false,625.02,93,LEFT888,LEFT771,LEFT170,LEFT86
+1144,1650,2012-03-26,ABIN,67698,0,13,10000031,-20.99,138,TEST71,False,639.6,455,LEFT758,LEFT969,LEFT414,LEFT143
+1145,755,2012-03-26,Auction,63864,3,16,10000482,-97.89,256,TEST706,TRUE,318.39,213,LEFT70,LEFT132,LEFT734,LEFT382
+1146,4029,2012-03-26,Others,51582,0,16,10000444,774.29,576,TEST196,true,266.0,575,LEFT94,LEFT707,LEFT458,LEFT711
+1147,3728,2012-03-26,Others,53064,0,5,10000636,977.02,638,TEST138,FALSE,70.08,724,LEFT580,LEFT914,LEFT567,LEFT478
+1148,4964,2012-03-26,ABIN,99985,0,16,10000111,252.11,708,TEST178,FALSE,444.81,264,LEFT175,LEFT559,LEFT157,LEFT280
+1149,4724,2012-03-26,Others,33038,15,15,10000474,-34.45,298,TEST154,False,768.71,48,LEFT611,LEFT659,LEFT206,LEFT860
+1150,514,2012-03-26,Others,175750,3,11,10000640,315.19,646,TEST946,true,396.94,911,LEFT74,LEFT831,LEFT858,LEFT973
+1151,717,2012-03-26,FP-non GTC,43398,0,14,10000029,449.26,700,TEST38,False,822.47,676,LEFT202,LEFT985,LEFT24,LEFT163
+1152,1533,2012-03-26,FP-non GTC,87118,0,-99,10000332,683.7,501,TEST891,TRUE,761.11,646,LEFT81,LEFT419,LEFT850,LEFT698
+1153,4507,2012-03-26,FP-non GTC,40059,3,12,10000511,86.06,152,TEST743,false,668.64,931,LEFT237,LEFT182,LEFT62,LEFT595
+1154,2494,2012-03-26,ABIN,94847,0,12,10000473,108.25,790,TEST508,FALSE,921.87,683,LEFT600,LEFT339,LEFT567,LEFT686
+1155,3700,2012-03-26,FP-non GTC,35570,100,16,10000574,792.36,294,TEST835,True,621.52,557,LEFT152,LEFT605,LEFT562,LEFT150
+1156,1649,2012-03-26,Auction,174053,3,16,10000920,588.81,212,TEST827,True,348.56,903,LEFT377,LEFT636,LEFT266,LEFT241
+1157,255,2012-03-26,ABIN,20865,0,-99,10000556,-94.1,404,TEST778,True,195.8,37,LEFT8,LEFT67,LEFT789,LEFT667
+1158,2552,2012-03-26,Others,57990,3,16,10000868,942.69,399,TEST204,TRUE,199.41,68,LEFT764,LEFT8,LEFT773,LEFT947
+1159,1480,2012-03-26,Others,26249,0,-99,10000341,959.77,305,TEST84,true,527.24,277,LEFT181,LEFT71,LEFT192,LEFT339
+1160,155,2012-03-26,Auction,1161,3,16,10000476,730.32,951,TEST542,false,74.34,724,LEFT179,LEFT102,LEFT723,LEFT839
+1161,3515,2012-03-26,FP-GTC,66767,15,14,10000574,.8,840,TEST954,False,200.2,672,LEFT241,LEFT219,LEFT279,LEFT317
+1162,3626,2012-03-26,FP-non GTC,10058,3,-99,10000231,-54.98,990,TEST364,false,371.43,123,LEFT80,LEFT732,LEFT206,LEFT130
+1163,1724,2012-03-26,Others,36250,0,-99,10000856,351.42,437,TEST669,True,40.87,326,LEFT549,LEFT470,LEFT129,LEFT956
+1164,1700,2012-03-27,ABIN,31519,3,-99,10000943,342.46,144,TEST424,TRUE,269.08,882,LEFT354,LEFT446,LEFT241,LEFT459
+1165,3044,2012-03-27,FP-non GTC,99985,0,15,10000857,360.9,85,TEST412,true,100.34,916,LEFT614,LEFT205,LEFT173,LEFT674
+1166,559,2012-03-27,Others,1504,0,15,10000873,674.32,133,TEST839,false,309.47,273,LEFT18,LEFT424,LEFT125,LEFT917
+1167,315,2012-03-27,Auction,60340,0,14,10000807,288.95,347,TEST202,True,401.89,481,LEFT375,LEFT576,LEFT760,LEFT97
+1168,2284,2012-03-27,ABIN,106340,15,14,10000462,576.53,42,TEST284,FALSE,655.72,341,LEFT45,LEFT529,LEFT7,LEFT79
+1169,1423,2012-03-27,Others,20886,0,5,10000132,867.77,433,TEST379,true,684.0,841,LEFT281,LEFT813,LEFT338,LEFT772
+1170,363,2012-03-27,Others,46575,0,5,10000211,46.88,610,TEST672,False,644.21,301,LEFT949,LEFT429,LEFT777,LEFT90
+1171,1795,2012-03-27,Auction,60606,3,5,10000930,92.35,211,TEST92,FALSE,657.85,854,LEFT239,LEFT616,LEFT637,LEFT764
+1172,1525,2012-03-27,Auction,2023,0,11,10000608,444.59,590,TEST524,False,93.83,831,LEFT262,LEFT833,LEFT400,LEFT204
+1173,4877,2012-03-27,FP-GTC,43398,0,5,10000872,968.24,871,TEST948,true,779.85,758,LEFT991,LEFT367,LEFT862,LEFT532
+1174,3763,2012-03-27,FP-non GTC,50677,0,16,10000231,-10.77,688,TEST608,TRUE,9.73,102,LEFT585,LEFT724,LEFT181,LEFT503
+1175,3830,2012-03-28,Others,9426,3,12,10000265,789.99,237,TEST161,TRUE,190.77,538,LEFT344,LEFT801,LEFT337,LEFT425
+1176,3880,2012-03-28,ABIN,63861,3,-99,10000021,812.37,958,TEST84,True,264.15,326,LEFT436,LEFT293,LEFT402,LEFT356
+1177,3013,2012-03-28,ABIN,155226,0,12,10000870,323.63,961,TEST300,True,399.79,659,LEFT855,LEFT109,LEFT188,LEFT241
+1178,364,2012-03-28,ABIN,13836,0,5,10000227,100.85,972,TEST262,False,185.14,344,LEFT840,LEFT425,LEFT528,LEFT173
+1179,3703,2012-03-28,Others,170302,15,14,10000754,460.53,33,TEST687,True,262.41,442,LEFT857,LEFT928,LEFT686,LEFT163
+1180,4631,2012-03-28,Others,113802,15,15,10000291,748.71,645,TEST153,false,981.53,44,LEFT899,LEFT388,LEFT99,LEFT292
+1181,2076,2012-03-28,FP-GTC,103178,15,-99,10000886,372.28,864,TEST736,True,18.17,191,LEFT143,LEFT833,LEFT254,LEFT74
+1182,1703,2012-03-28,FP-GTC,1504,0,14,10000818,121.94,238,TEST382,FALSE,403.01,356,LEFT735,LEFT27,LEFT510,LEFT549
+1183,1198,2012-03-28,Auction,118687,3,13,10000373,582.29,419,TEST804,False,423.47,58,LEFT592,LEFT775,LEFT853,LEFT674
+1184,3265,2012-03-28,FP-non GTC,75708,3,5,10000164,800.07,858,TEST0,true,101.99,208,LEFT565,LEFT198,LEFT523,LEFT732
+1185,3051,2012-03-28,Others,1161,3,15,10000059,999.81,84,TEST569,true,134.03,559,LEFT888,LEFT468,LEFT832,LEFT307
+1186,4353,2012-03-28,Others,38238,0,16,10000248,750.68,674,TEST108,FALSE,666.32,647,LEFT244,LEFT291,LEFT690,LEFT171
+1187,104,2012-03-28,Others,26249,0,14,10000172,506.39,238,TEST757,True,871.88,981,LEFT853,LEFT990,LEFT633,LEFT472
+1188,2876,2012-03-29,Auction,216,0,-99,10000135,382.04,991,TEST240,FALSE,799.68,425,LEFT487,LEFT63,LEFT822,LEFT708
+1189,764,2012-03-29,ABIN,152801,0,13,10000931,458.9,623,TEST858,False,372.56,628,LEFT161,LEFT652,LEFT106,LEFT884
+1190,1097,2012-03-29,FP-non GTC,314,211,14,10000031,943.73,194,TEST217,TRUE,908.41,76,LEFT538,LEFT126,LEFT614,LEFT6
+1191,2486,2012-03-29,FP-non GTC,1357,0,13,10000174,-26.05,329,TEST873,False,497.37,128,LEFT109,LEFT300,LEFT881,LEFT930
+1192,580,2012-03-29,FP-GTC,36250,0,12,10000961,532.9,578,TEST33,FALSE,170.21,499,LEFT466,LEFT185,LEFT212,LEFT629
+1193,4218,2012-03-29,FP-non GTC,156356,0,13,10000093,951.24,611,TEST711,true,627.44,359,LEFT905,LEFT660,LEFT870,LEFT96
+1194,1579,2012-03-29,FP-GTC,34273,100,15,10000683,536.1,834,TEST708,true,95.05,54,LEFT143,LEFT712,LEFT809,LEFT152
+1195,1391,2012-03-29,Others,31387,3,13,10000139,582.85,630,TEST721,TRUE,724.32,895,LEFT631,LEFT836,LEFT91,LEFT12
+1196,3657,2012-03-29,Others,31519,0,-99,10000160,424.62,431,TEST390,False,471.45,186,LEFT821,LEFT117,LEFT271,LEFT186
+1197,1461,2012-03-29,FP-non GTC,51582,0,5,10000675,833.85,68,TEST540,true,889.76,980,LEFT598,LEFT941,LEFT18,LEFT48
+1198,4522,2012-03-29,Auction,82494,15,16,10000070,-87.96,263,TEST389,TRUE,509.84,686,LEFT806,LEFT655,LEFT451,LEFT737
+1199,4053,2012-03-29,ABIN,2023,0,5,10000409,627.79,271,TEST559,true,770.06,699,LEFT594,LEFT147,LEFT772,LEFT381
+1200,3048,2012-03-29,FP-GTC,20485,0,11,10000628,35.44,536,TEST470,FALSE,28.3,403,LEFT828,LEFT693,LEFT825,LEFT337
+1201,4295,2012-03-29,Auction,45238,101,-99,10000351,630.58,240,TEST783,True,80.63,561,LEFT418,LEFT546,LEFT776,LEFT263
+1202,3546,2012-03-29,FP-non GTC,2635,0,-99,10000568,779.48,85,TEST346,False,191.15,411,LEFT109,LEFT417,LEFT200,LEFT226
+1203,2313,2012-03-29,FP-GTC,132939,0,14,10000620,840.95,180,TEST688,FALSE,186.95,599,LEFT357,LEFT13,LEFT284,LEFT82
+1204,2672,2012-03-29,ABIN,80135,0,-99,10000570,682.63,42,TEST9,FALSE,132.49,11,LEFT751,LEFT969,LEFT319,LEFT713
+1205,294,2012-03-29,FP-GTC,94847,0,-99,10000826,703.99,11,TEST411,False,935.81,585,LEFT493,LEFT130,LEFT560,LEFT249
+1206,2506,2012-03-29,FP-non GTC,759,0,-99,10000911,349.51,835,TEST468,true,692.0,223,LEFT709,LEFT99,LEFT383,LEFT376
+1207,1860,2012-03-30,Others,140746,100,15,10000573,692.09,175,TEST280,TRUE,947.57,798,LEFT913,LEFT103,LEFT150,LEFT702
+1208,3956,2012-03-30,ABIN,216,0,13,10000775,267.5,917,TEST670,True,442.76,174,LEFT25,LEFT196,LEFT477,LEFT529
+1209,1158,2012-03-30,FP-non GTC,24760,0,15,10000007,683.9,352,TEST473,False,603.56,657,LEFT30,LEFT735,LEFT439,LEFT788
+1210,1464,2012-03-30,FP-GTC,57990,3,13,10000839,915.72,237,TEST860,true,924.93,565,LEFT609,LEFT824,LEFT181,LEFT296
+1211,116,2012-03-30,ABIN,36250,0,14,10000361,513.62,417,TEST384,False,966.85,300,LEFT649,LEFT135,LEFT37,LEFT943
+1212,960,2012-03-30,FP-non GTC,15115,0,14,10000629,852.22,88,TEST617,True,133.03,457,LEFT642,LEFT410,LEFT119,LEFT403
+1213,563,2012-03-30,FP-non GTC,40059,3,15,10000783,142.57,953,TEST381,false,561.46,797,LEFT411,LEFT883,LEFT625,LEFT161
+1214,3415,2012-03-30,Others,15868,0,13,10000495,363.33,654,TEST175,false,952.15,257,LEFT390,LEFT322,LEFT683,LEFT201
+1215,4231,2012-03-30,FP-non GTC,95672,3,15,10000578,638.85,157,TEST46,True,214.81,677,LEFT330,LEFT967,LEFT321,LEFT436
+1216,1773,2012-03-30,Others,155226,0,16,10000541,434.0,710,TEST728,false,277.76,516,LEFT556,LEFT384,LEFT786,LEFT643
+1217,2343,2012-03-30,FP-non GTC,15687,0,5,10000357,171.06,327,TEST363,True,274.14,168,LEFT753,LEFT50,LEFT385,LEFT388
+1218,2068,2012-03-30,Auction,103178,15,15,10000496,436.01,576,TEST81,FALSE,801.47,848,LEFT574,LEFT655,LEFT321,LEFT890
+1219,119,2012-03-30,FP-non GTC,158666,15,12,10000371,312.27,26,TEST457,false,463.18,21,LEFT389,LEFT729,LEFT393,LEFT210
+1220,4591,2012-03-30,Others,13987,0,15,10000121,663.72,249,TEST103,false,445.66,527,LEFT839,LEFT960,LEFT309,LEFT904
+1221,1694,2012-03-30,ABIN,118687,3,5,10000737,909.78,661,TEST549,false,58.75,519,LEFT997,LEFT210,LEFT850,LEFT502
+1222,2175,2012-03-30,FP-GTC,31387,3,13,10000418,-35.45,962,TEST181,False,344.05,767,LEFT160,LEFT635,LEFT197,LEFT169
+1223,1393,2012-03-30,Auction,31519,0,13,10000845,-94.13,78,TEST726,True,456.25,124,LEFT209,LEFT204,LEFT595,LEFT686
+1224,3693,2012-03-30,ABIN,150265,15,12,10000764,-41.04,33,TEST266,false,634.5,749,LEFT697,LEFT296,LEFT463,LEFT190
+1225,636,2012-03-31,Auction,43479,0,-99,10000034,868.9,87,TEST850,True,966.84,273,LEFT696,LEFT455,LEFT254,LEFT156
+1226,3980,2012-03-31,Auction,106340,15,14,10000484,139.28,908,TEST954,FALSE,13.39,47,LEFT527,LEFT494,LEFT156,LEFT853
+1227,3635,2012-03-31,FP-GTC,16509,0,12,10000007,-66.51,45,TEST309,True,566.9,509,LEFT21,LEFT101,LEFT79,LEFT845
+1228,128,2012-03-31,FP-non GTC,26249,0,15,10000049,68.41,89,TEST384,True,423.61,262,LEFT797,LEFT606,LEFT862,LEFT958
+1229,1654,2012-03-31,ABIN,80053,0,5,10000468,215.85,312,TEST980,FALSE,362.89,965,LEFT121,LEFT131,LEFT939,LEFT104
+1230,2672,2012-03-31,FP-GTC,65,0,-99,10000024,736.83,186,TEST754,TRUE,209.36,925,LEFT645,LEFT586,LEFT140,LEFT417
+1231,1370,2012-03-31,FP-non GTC,166013,15,-99,10000642,186.17,273,TEST338,false,383.3,540,LEFT619,LEFT761,LEFT482,LEFT343
+1232,868,2012-03-31,FP-GTC,13836,0,-99,10000773,342.1,895,TEST647,false,515.74,454,LEFT463,LEFT754,LEFT881,LEFT395
+1233,1542,2012-03-31,Others,94847,0,-99,10000738,-62.06,409,TEST85,false,771.59,912,LEFT652,LEFT778,LEFT574,LEFT765
+1234,809,2012-03-31,Others,3838,0,16,10000601,619.92,75,TEST284,True,541.16,416,LEFT133,LEFT676,LEFT20,LEFT710
+1235,2157,2012-03-31,FP-non GTC,88750,0,14,10000090,96.88,619,TEST752,TRUE,320.44,699,LEFT72,LEFT118,LEFT741,LEFT185
+1236,2581,2012-03-31,FP-non GTC,87118,0,15,10000178,76.55,702,TEST994,true,507.45,731,LEFT202,LEFT176,LEFT947,LEFT929
+1237,3813,2012-03-31,FP-non GTC,10866,0,-99,10000125,242.1,5,TEST631,TRUE,22.25,130,LEFT104,LEFT676,LEFT191,LEFT65
+1238,4431,2012-03-31,FP-GTC,13987,0,16,10000297,885.06,557,TEST273,False,125.1,724,LEFT378,LEFT260,LEFT704,LEFT379
+1239,4930,2012-03-31,FP-GTC,533,0,-99,10000776,959.21,864,TEST744,False,331.78,143,LEFT360,LEFT250,LEFT741,LEFT322
+1240,1595,2012-03-31,Others,48904,0,15,10000776,220.55,410,TEST655,true,506.97,660,LEFT846,LEFT712,LEFT157,LEFT515
+1241,124,2012-03-31,FP-GTC,106340,15,12,10000826,496.29,553,TEST983,TRUE,229.65,899,LEFT767,LEFT892,LEFT324,LEFT387
+1242,4142,2012-03-31,ABIN,164,0,13,10000100,852.83,54,TEST700,True,696.0,659,LEFT759,LEFT434,LEFT12,LEFT124
+1243,4051,2012-03-31,ABIN,30059,3,16,10000244,838.34,664,TEST514,false,473.19,291,LEFT295,LEFT211,LEFT710,LEFT134
+1244,2805,2012-04-01,FP-non GTC,95672,0,-99,10000450,303.76,95,TEST996,True,792.63,372,LEFT185,LEFT140,LEFT454,LEFT673
+1245,4987,2012-04-01,ABIN,66767,15,12,10000833,779.53,217,TEST933,true,170.17,223,LEFT438,LEFT637,LEFT689,LEFT387
+1246,4949,2012-04-01,ABIN,51582,0,5,10000835,644.93,441,TEST338,FALSE,157.24,107,LEFT115,LEFT167,LEFT636,LEFT252
+1247,421,2012-04-01,ABIN,63861,0,14,10000808,392.51,55,TEST118,True,536.49,241,LEFT138,LEFT389,LEFT897,LEFT558
+1248,44,2012-04-01,FP-non GTC,216,0,15,10000915,963.34,829,TEST682,TRUE,15.01,142,LEFT193,LEFT246,LEFT161,LEFT69
+1249,1997,2012-04-01,FP-non GTC,156614,0,15,10000193,13.15,261,TEST219,false,411.15,323,LEFT188,LEFT669,LEFT117,LEFT681
+1250,529,2012-04-01,Auction,159184,0,14,10000357,912.12,996,TEST800,FALSE,34.41,939,LEFT656,LEFT661,LEFT711,LEFT360
+1251,2980,2012-04-01,Others,35570,100,15,10000672,756.27,446,TEST602,False,417.84,336,LEFT924,LEFT802,LEFT957,LEFT112
+1252,1334,2012-04-01,Others,25147,0,13,10000107,206.93,652,TEST314,TRUE,401.92,979,LEFT27,LEFT955,LEFT643,LEFT80
+1253,1102,2012-04-01,FP-non GTC,80053,0,16,10000810,675.24,107,TEST832,False,393.11,282,LEFT144,LEFT705,LEFT129,LEFT101
+1254,3851,2012-04-02,ABIN,16509,0,5,10000601,-37.28,226,TEST716,false,729.35,814,LEFT233,LEFT812,LEFT558,LEFT841
+1255,1158,2012-04-02,FP-non GTC,31673,0,5,10000446,933.02,868,TEST384,false,408.93,495,LEFT157,LEFT835,LEFT177,LEFT914
+1256,763,2012-04-02,FP-GTC,60340,0,12,10000546,933.66,337,TEST76,TRUE,421.34,510,LEFT851,LEFT567,LEFT520,LEFT902
+1257,1283,2012-04-02,Others,66767,15,12,10000739,390.65,295,TEST127,TRUE,518.83,113,LEFT211,LEFT719,LEFT993,LEFT902
+1258,1936,2012-04-02,FP-GTC,53064,0,5,10000200,929.42,57,TEST492,True,872.33,722,LEFT630,LEFT347,LEFT132,LEFT221
+1259,3459,2012-04-02,Others,34273,100,15,10000162,165.42,685,TEST922,False,313.94,332,LEFT132,LEFT517,LEFT639,LEFT786
+1260,1652,2012-04-02,Others,99985,0,16,10000775,486.75,490,TEST943,FALSE,753.84,497,LEFT768,LEFT22,LEFT194,LEFT331
+1261,1364,2012-04-02,Others,216,0,-99,10000161,438.87,821,TEST801,FALSE,666.85,820,LEFT780,LEFT179,LEFT149,LEFT758
+1262,367,2012-04-02,Others,314,0,12,10000594,792.88,218,TEST587,false,131.9,587,LEFT941,LEFT183,LEFT907,LEFT579
+1263,3509,2012-04-02,ABIN,156614,0,12,10000358,821.05,389,TEST653,False,596.06,249,LEFT60,LEFT679,LEFT725,LEFT17
+1264,3111,2012-04-02,Others,20886,0,15,10000149,23.25,668,TEST579,TRUE,938.65,960,LEFT659,LEFT932,LEFT388,LEFT648
+1265,2784,2012-04-02,ABIN,12688,0,-99,10000361,994.58,182,TEST91,False,825.61,507,LEFT82,LEFT137,LEFT145,LEFT666
+1266,2277,2012-04-02,FP-non GTC,155226,0,16,10000104,-39.0,889,TEST786,True,653.94,633,LEFT167,LEFT82,LEFT728,LEFT578
+1267,3434,2012-04-03,Auction,108782,15,15,10000151,880.94,78,TEST431,False,118.33,483,LEFT637,LEFT728,LEFT325,LEFT919
+1268,2503,2012-04-03,FP-non GTC,279,15,12,10000275,891.3,302,TEST41,True,615.14,731,LEFT852,LEFT203,LEFT681,LEFT294
+1269,1837,2012-04-03,Others,156614,0,14,10000884,696.24,920,TEST893,TRUE,188.12,828,LEFT124,LEFT745,LEFT319,LEFT448
+1270,748,2012-04-03,FP-non GTC,152801,0,14,10000850,309.11,952,TEST299,False,512.1,872,LEFT508,LEFT819,LEFT245,LEFT325
+1271,4379,2012-04-03,Others,30059,3,5,10000807,128.26,188,TEST655,TRUE,987.31,217,LEFT674,LEFT957,LEFT636,LEFT16
+1272,1201,2012-04-03,FP-non GTC,174053,3,12,10000782,307.4,433,TEST740,false,588.02,386,LEFT641,LEFT847,LEFT12,LEFT494
+1273,1993,2012-04-03,FP-non GTC,43972,100,13,10000937,519.95,672,TEST793,True,593.95,910,LEFT260,LEFT233,LEFT519,LEFT241
+1274,4650,2012-04-03,ABIN,156356,0,13,10000060,651.38,236,TEST24,True,206.61,269,LEFT187,LEFT581,LEFT410,LEFT500
+1275,1273,2012-04-03,Others,314,211,15,10000136,108.88,426,TEST256,True,155.88,470,LEFT472,LEFT96,LEFT223,LEFT771
+1276,4041,2012-04-03,Auction,24541,0,12,10000598,446.68,398,TEST313,true,82.74,488,LEFT380,LEFT615,LEFT331,LEFT554
+1277,3627,2012-04-03,ABIN,15568,15,12,10000633,147.92,20,TEST476,true,49.97,799,LEFT363,LEFT444,LEFT717,LEFT301
+1278,974,2012-04-03,FP-GTC,118687,3,15,10000049,64.22,931,TEST130,TRUE,680.67,110,LEFT770,LEFT111,LEFT62,LEFT650
+1279,1899,2012-04-03,Auction,15568,15,5,10000699,983.4,302,TEST393,False,304.89,122,LEFT694,LEFT164,LEFT785,LEFT131
+1280,2050,2012-04-04,Auction,108782,15,13,10000082,126.68,268,TEST401,false,869.96,242,LEFT192,LEFT401,LEFT669,LEFT948
+1281,1304,2012-04-04,Auction,15115,0,5,10000196,-37.47,211,TEST372,false,285.63,507,LEFT486,LEFT848,LEFT688,LEFT518
+1282,4757,2012-04-04,ABIN,150265,15,14,10000692,-27.81,81,TEST982,FALSE,51.99,594,LEFT815,LEFT25,LEFT679,LEFT551
+1283,294,2012-04-04,Auction,16145,3,12,10000455,914.14,487,TEST588,True,425.23,883,LEFT799,LEFT565,LEFT857,LEFT606
+1284,4245,2012-04-04,Auction,963,0,11,10000544,-92.78,573,TEST791,TRUE,463.38,809,LEFT96,LEFT106,LEFT197,LEFT185
+1285,2474,2012-04-04,Auction,156356,0,12,10000257,510.86,573,TEST630,true,941.43,793,LEFT429,LEFT630,LEFT203,LEFT701
+1286,491,2012-04-04,ABIN,60606,3,-99,10000015,647.57,710,TEST321,False,50.17,96,LEFT689,LEFT757,LEFT476,LEFT737
+1287,945,2012-04-04,Auction,31519,0,-99,10000261,627.62,487,TEST41,false,319.14,604,LEFT292,LEFT916,LEFT112,LEFT626
+1288,3049,2012-04-04,Others,38238,0,13,10000245,-16.1,628,TEST5,False,952.06,171,LEFT60,LEFT362,LEFT99,LEFT481
+1289,4531,2012-04-04,FP-non GTC,48904,0,14,10000498,23.04,319,TEST171,false,782.88,356,LEFT988,LEFT362,LEFT268,LEFT481
+1290,3989,2012-04-04,FP-non GTC,170083,3,5,10000739,644.76,349,TEST397,TRUE,501.29,188,LEFT222,LEFT233,LEFT564,LEFT444
+1291,3011,2012-04-04,ABIN,50677,0,-99,10000631,849.3,555,TEST22,False,977.27,679,LEFT903,LEFT856,LEFT129,LEFT792
+1292,3737,2012-04-04,ABIN,24541,0,-99,10000789,845.02,118,TEST449,False,175.36,567,LEFT929,LEFT800,LEFT677,LEFT949
+1293,338,2012-04-04,FP-GTC,6762,0,13,10000309,170.58,830,TEST174,false,807.69,307,LEFT667,LEFT426,LEFT930,LEFT94
+1294,578,2012-04-04,ABIN,23446,23,11,10000514,319.89,683,TEST371,True,945.59,508,LEFT505,LEFT720,LEFT53,LEFT379
+1295,4972,2012-04-04,Others,152801,0,14,10000121,816.3,991,TEST333,true,334.61,476,LEFT507,LEFT608,LEFT625,LEFT449
+1296,4203,2012-04-04,FP-non GTC,16509,0,15,10000184,83.28,106,TEST429,false,667.63,623,LEFT195,LEFT831,LEFT95,LEFT805
+1297,1512,2012-04-04,FP-GTC,65,0,16,10000807,299.05,333,TEST317,TRUE,7.93,877,LEFT816,LEFT747,LEFT860,LEFT313
+1298,178,2012-04-04,ABIN,45333,0,11,10000852,786.7,874,TEST128,true,849.49,432,LEFT495,LEFT63,LEFT106,LEFT609
+1299,237,2012-04-04,FP-GTC,2023,0,12,10000583,806.88,374,TEST122,TRUE,423.63,46,LEFT527,LEFT205,LEFT422,LEFT414
+1300,2740,2012-04-05,ABIN,0,0,5,10000202,26.46,965,TEST460,TRUE,82.83,120,LEFT217,LEFT564,LEFT564,LEFT470
+1301,1394,2012-04-05,Auction,6762,0,12,10000316,939.84,418,TEST873,FALSE,13.96,429,LEFT428,LEFT22,LEFT669,LEFT586
+1302,2391,2012-04-05,FP-non GTC,26262,0,15,10000364,297.62,442,TEST605,FALSE,426.98,88,LEFT943,LEFT547,LEFT466,LEFT337
+1303,1772,2012-04-05,FP-non GTC,216,0,14,10000726,812.02,279,TEST47,True,591.41,966,LEFT705,LEFT653,LEFT708,LEFT308
+1304,2937,2012-04-05,FP-non GTC,57990,0,5,10000756,580.32,974,TEST856,true,372.43,429,LEFT462,LEFT139,LEFT271,LEFT861
+1305,4315,2012-04-05,ABIN,80287,0,16,10000170,35.19,130,TEST891,false,196.99,589,LEFT987,LEFT330,LEFT435,LEFT738
+1306,2064,2012-04-05,FP-GTC,15808,15,-99,10000990,964.37,395,TEST646,False,404.74,248,LEFT220,LEFT948,LEFT417,LEFT102
+1307,3600,2012-04-05,FP-non GTC,67698,2,14,10000400,265.01,956,TEST735,false,512.35,151,LEFT679,LEFT626,LEFT890,LEFT803
+1308,4232,2012-04-05,Others,12688,0,13,10000556,516.91,699,TEST89,True,224.74,778,LEFT23,LEFT717,LEFT899,LEFT195
+1309,4877,2012-04-05,Others,63861,0,12,10000979,839.99,645,TEST805,false,946.47,994,LEFT869,LEFT107,LEFT46,LEFT884
+1310,605,2012-04-05,Others,88750,0,11,10000799,163.63,617,TEST476,False,627.74,974,LEFT216,LEFT710,LEFT77,LEFT744
+1311,1654,2012-04-05,FP-non GTC,118687,3,13,10000559,236.2,980,TEST83,False,371.53,197,LEFT960,LEFT601,LEFT972,LEFT151
+1312,1501,2012-04-05,ABIN,87118,0,14,10000062,463.73,935,TEST856,False,852.1,220,LEFT454,LEFT832,LEFT419,LEFT348
+1313,3019,2012-04-05,Others,15568,15,13,10000728,538.16,604,TEST883,True,789.84,748,LEFT650,LEFT521,LEFT334,LEFT792
+1314,3828,2012-04-05,FP-non GTC,33038,15,14,10000025,741.95,124,TEST741,FALSE,429.68,603,LEFT246,LEFT485,LEFT79,LEFT884
+1315,4174,2012-04-06,Auction,63889,0,12,10000402,676.24,744,TEST100,FALSE,396.15,370,LEFT210,LEFT205,LEFT81,LEFT271
+1316,4280,2012-04-06,ABIN,32876,0,11,10000989,752.28,81,TEST553,true,131.04,774,LEFT458,LEFT795,LEFT430,LEFT869
+1317,3070,2012-04-06,FP-GTC,106246,0,-99,10000506,644.26,391,TEST668,True,226.8,392,LEFT178,LEFT803,LEFT597,LEFT410
+1318,3586,2012-04-06,Auction,45333,0,14,10000986,218.6,914,TEST785,False,174.11,592,LEFT236,LEFT130,LEFT812,LEFT510
+1319,3373,2012-04-06,FP-GTC,50508,0,5,10000101,717.24,323,TEST942,TRUE,615.88,694,LEFT908,LEFT524,LEFT908,LEFT379
+1320,2948,2012-04-06,FP-GTC,152801,0,12,10000507,494.05,665,TEST847,false,319.43,918,LEFT625,LEFT157,LEFT619,LEFT666
+1321,3130,2012-04-06,FP-non GTC,23446,23,5,10000220,616.6,611,TEST257,False,331.44,44,LEFT625,LEFT930,LEFT299,LEFT921
+1322,3909,2012-04-06,Others,2023,0,5,10000624,446.47,748,TEST288,true,7.78,496,LEFT579,LEFT366,LEFT856,LEFT734
+1323,4967,2012-04-06,FP-GTC,113802,15,-99,10000138,834.13,954,TEST716,True,283.4,483,LEFT867,LEFT2,LEFT80,LEFT187
+1324,3627,2012-04-06,FP-non GTC,15568,15,14,10000176,-14.91,153,TEST297,TRUE,87.9,542,LEFT587,LEFT689,LEFT550,LEFT377
+1325,1533,2012-04-06,FP-non GTC,43398,0,5,10000117,308.3,80,TEST968,False,851.72,767,LEFT570,LEFT370,LEFT897,LEFT228
+1326,406,2012-04-06,ABIN,25147,0,14,10000171,310.18,794,TEST239,False,381.9,107,LEFT45,LEFT993,LEFT886,LEFT180
+1327,1808,2012-04-06,Auction,73506,0,14,10000150,647.49,675,TEST246,FALSE,633.27,459,LEFT283,LEFT425,LEFT324,LEFT955
+1328,772,2012-04-06,Others,31519,3,12,10000794,471.65,373,TEST770,True,355.04,86,LEFT236,LEFT919,LEFT484,LEFT142
+1329,1427,2012-04-06,Others,50677,0,15,10000578,232.76,89,TEST741,TRUE,320.89,226,LEFT683,LEFT923,LEFT397,LEFT671
+1330,4916,2012-04-07,FP-non GTC,31519,3,11,10000094,758.79,212,TEST458,false,853.31,348,LEFT106,LEFT584,LEFT733,LEFT921
+1331,1960,2012-04-07,Auction,57990,3,13,10000839,408.01,793,TEST412,true,737.34,398,LEFT307,LEFT874,LEFT894,LEFT562
+1332,159,2012-04-07,FP-non GTC,279,15,-99,10000234,270.55,297,TEST383,true,874.35,710,LEFT997,LEFT730,LEFT352,LEFT628
+1333,2625,2012-04-07,Others,132939,0,5,10000016,239.92,461,TEST118,false,61.8,375,LEFT934,LEFT894,LEFT212,LEFT3
+1334,1539,2012-04-07,Auction,1161,3,15,10000964,66.13,478,TEST83,false,973.18,464,LEFT919,LEFT593,LEFT66,LEFT659
+1335,1521,2012-04-07,ABIN,57784,0,5,10000953,236.64,293,TEST630,false,467.39,187,LEFT251,LEFT317,LEFT156,LEFT522
+1336,4399,2012-04-07,ABIN,13987,0,13,10000839,191.46,22,TEST497,true,957.92,569,LEFT959,LEFT81,LEFT506,LEFT349
+1337,3516,2012-04-07,ABIN,121153,0,11,10000927,398.09,186,TEST473,False,545.42,884,LEFT295,LEFT787,LEFT925,LEFT3
+1338,2844,2012-04-07,Others,106340,15,12,10000675,135.0,62,TEST840,true,965.93,278,LEFT668,LEFT636,LEFT598,LEFT77
+1339,2934,2012-04-07,FP-GTC,24760,0,14,10000112,764.65,441,TEST370,true,749.28,730,LEFT673,LEFT669,LEFT517,LEFT138
+1340,2902,2012-04-07,FP-GTC,80053,0,16,10000297,18.54,985,TEST490,True,573.03,582,LEFT414,LEFT989,LEFT481,LEFT22
+1341,2581,2012-04-07,ABIN,33977,15,12,10000434,505.81,609,TEST221,FALSE,593.39,52,LEFT817,LEFT743,LEFT346,LEFT522
+1342,4510,2012-04-07,ABIN,150047,3,16,10000768,645.44,461,TEST99,False,260.2,190,LEFT519,LEFT144,LEFT725,LEFT17
+1343,3482,2012-04-07,ABIN,67698,0,16,10000327,-35.94,399,TEST352,true,21.04,156,LEFT254,LEFT495,LEFT502,LEFT326
+1344,166,2012-04-07,Others,24760,0,15,10000012,-79.5,544,TEST132,false,776.0,832,LEFT598,LEFT942,LEFT581,LEFT322
+1345,1699,2012-04-07,Auction,46575,0,15,10000050,161.56,772,TEST906,true,30.1,243,LEFT908,LEFT602,LEFT274,LEFT131
+1346,4546,2012-04-07,ABIN,759,0,13,10000591,47.58,560,TEST323,TRUE,455.96,570,LEFT874,LEFT462,LEFT59,LEFT123
+1347,2617,2012-04-07,Others,100847,0,14,10000943,25.1,854,TEST421,FALSE,900.74,416,LEFT696,LEFT768,LEFT585,LEFT752
+1348,307,2012-04-07,FP-GTC,16509,0,-99,10000342,970.8,106,TEST309,true,50.72,237,LEFT189,LEFT354,LEFT963,LEFT298
+1349,3773,2012-04-07,FP-GTC,50508,0,15,10000826,416.16,612,TEST94,false,844.7,491,LEFT889,LEFT846,LEFT674,LEFT240
+1350,2012,2012-04-08,ABIN,43479,0,15,10000316,515.68,539,TEST991,False,427.68,513,LEFT190,LEFT774,LEFT154,LEFT499
+1351,1279,2012-04-08,Auction,20865,0,11,10000707,304.62,188,TEST778,FALSE,165.51,980,LEFT112,LEFT118,LEFT920,LEFT144
+1352,4223,2012-04-08,ABIN,13987,0,13,10000343,940.19,153,TEST439,True,46.18,28,LEFT629,LEFT291,LEFT310,LEFT517
+1353,555,2012-04-08,ABIN,1161,3,5,10000054,684.11,304,TEST660,False,760.26,976,LEFT822,LEFT388,LEFT562,LEFT92
+1354,1941,2012-04-08,FP-GTC,67703,3,16,10000707,364.84,329,TEST499,FALSE,275.43,354,LEFT171,LEFT581,LEFT772,LEFT486
+1355,4883,2012-04-08,FP-GTC,60340,0,12,10000184,955.05,847,TEST233,false,913.23,795,LEFT404,LEFT103,LEFT255,LEFT711
+1356,4829,2012-04-08,FP-non GTC,963,0,5,10000452,716.4,398,TEST339,True,884.26,311,LEFT756,LEFT12,LEFT366,LEFT826
+1357,3383,2012-04-08,Auction,13987,0,11,10000845,319.06,495,TEST723,TRUE,91.97,28,LEFT44,LEFT449,LEFT107,LEFT444
+1358,4637,2012-04-08,ABIN,11848,0,-99,10000312,707.33,953,TEST347,true,301.63,174,LEFT797,LEFT176,LEFT529,LEFT930
+1359,4288,2012-04-08,ABIN,12688,0,14,10000770,686.29,245,TEST420,true,889.41,168,LEFT327,LEFT942,LEFT415,LEFT281
+1360,4439,2012-04-08,Others,20865,0,12,10000864,949.69,578,TEST38,true,301.92,72,LEFT297,LEFT400,LEFT104,LEFT295
+1361,3238,2012-04-08,ABIN,63889,0,16,10000709,899.42,742,TEST768,False,472.47,375,LEFT869,LEFT494,LEFT198,LEFT751
+1362,2742,2012-04-08,Others,161567,15,11,10000324,765.02,512,TEST236,True,782.1,774,LEFT156,LEFT823,LEFT342,LEFT908
+1363,168,2012-04-09,Others,32876,0,5,10000098,6.26,747,TEST338,FALSE,895.52,856,LEFT196,LEFT188,LEFT95,LEFT473
+1364,4211,2012-04-09,Others,30059,3,14,10000072,-61.68,981,TEST844,True,563.88,192,LEFT340,LEFT903,LEFT690,LEFT276
+1365,2733,2012-04-09,FP-GTC,88750,0,15,10000341,522.62,893,TEST505,True,335.72,455,LEFT780,LEFT389,LEFT224,LEFT31
+1366,524,2012-04-09,Auction,36250,0,5,10000757,187.18,664,TEST778,false,390.07,955,LEFT432,LEFT960,LEFT698,LEFT744
+1367,3933,2012-04-09,ABIN,170083,3,5,10000516,74.25,682,TEST478,false,522.46,565,LEFT818,LEFT570,LEFT981,LEFT694
+1368,1624,2012-04-09,FP-GTC,48027,0,11,10000209,488.82,549,TEST57,true,236.39,979,LEFT907,LEFT653,LEFT377,LEFT481
+1369,529,2012-04-09,Auction,164261,0,15,10000773,173.89,828,TEST632,FALSE,909.68,472,LEFT845,LEFT967,LEFT578,LEFT144
+1370,4617,2012-04-09,FP-GTC,314,211,12,10000601,195.6,874,TEST188,False,54.45,781,LEFT367,LEFT543,LEFT782,LEFT76
+1371,1918,2012-04-09,FP-non GTC,24760,0,5,10000316,694.2,270,TEST61,True,292.22,805,LEFT777,LEFT381,LEFT923,LEFT851
+1372,2478,2012-04-09,Auction,24760,0,-99,10000905,583.24,532,TEST95,True,125.12,255,LEFT613,LEFT440,LEFT761,LEFT9
+1373,103,2012-04-09,FP-GTC,13987,0,12,10000626,639.45,940,TEST984,FALSE,482.73,625,LEFT771,LEFT42,LEFT644,LEFT525
+1374,4973,2012-04-09,FP-GTC,11554,0,16,10000295,371.19,773,TEST724,False,909.68,907,LEFT997,LEFT928,LEFT705,LEFT850
+1375,1530,2012-04-09,Auction,175750,3,11,10000264,145.91,241,TEST908,false,697.74,965,LEFT83,LEFT987,LEFT316,LEFT413
+1376,3836,2012-04-10,Others,145970,0,13,10000126,159.75,829,TEST705,False,348.06,386,LEFT349,LEFT391,LEFT224,LEFT730
+1377,2725,2012-04-10,Others,63861,0,15,10000807,234.96,176,TEST270,false,221.72,435,LEFT992,LEFT160,LEFT521,LEFT618
+1378,738,2012-04-10,FP-non GTC,10058,3,-99,10000386,878.08,706,TEST818,False,954.09,593,LEFT183,LEFT969,LEFT541,LEFT224
+1379,1492,2012-04-10,ABIN,103178,15,13,10000265,862.19,957,TEST860,FALSE,759.06,723,LEFT669,LEFT385,LEFT285,LEFT341
+1380,4979,2012-04-10,ABIN,66767,15,12,10000142,627.99,869,TEST21,true,759.69,931,LEFT245,LEFT58,LEFT543,LEFT322
+1381,4835,2012-04-10,FP-non GTC,0,15,-99,10000717,862.69,745,TEST343,true,158.28,878,LEFT495,LEFT979,LEFT926,LEFT915
+1382,1517,2012-04-10,FP-GTC,43398,0,15,10000754,255.56,579,TEST432,TRUE,340.99,664,LEFT644,LEFT574,LEFT337,LEFT421
+1383,4203,2012-04-10,FP-non GTC,15568,15,5,10000483,488.39,550,TEST315,true,364.79,615,LEFT772,LEFT863,LEFT256,LEFT181
+1384,3967,2012-04-10,Others,15868,0,12,10000197,835.52,203,TEST848,FALSE,97.27,705,LEFT108,LEFT402,LEFT686,LEFT256
+1385,1554,2012-04-10,FP-GTC,533,0,14,10000850,165.45,313,TEST186,True,857.8,561,LEFT317,LEFT308,LEFT492,LEFT508
+1386,4417,2012-04-10,Others,103324,15,13,10000753,873.77,752,TEST617,FALSE,524.13,327,LEFT320,LEFT474,LEFT124,LEFT690
+1387,2452,2012-04-10,Others,216,0,5,10000268,864.56,589,TEST208,FALSE,793.08,989,LEFT325,LEFT795,LEFT52,LEFT752
+1388,3397,2012-04-10,FP-non GTC,95672,0,16,10000181,827.55,691,TEST268,true,611.71,897,LEFT110,LEFT21,LEFT379,LEFT475
+1389,1071,2012-04-11,Others,15868,0,-99,10000264,770.32,295,TEST978,true,443.37,278,LEFT782,LEFT707,LEFT470,LEFT482
+1390,4941,2012-04-11,FP-GTC,2023,0,14,10000831,937.03,662,TEST538,False,315.51,983,LEFT294,LEFT702,LEFT443,LEFT234
+1391,3990,2012-04-11,Auction,31673,0,15,10000425,553.08,321,TEST555,TRUE,593.96,745,LEFT581,LEFT178,LEFT593,LEFT577
+1392,4624,2012-04-11,ABIN,32876,0,16,10000813,834.47,437,TEST797,TRUE,607.37,163,LEFT694,LEFT45,LEFT647,LEFT931
+1393,3467,2012-04-11,FP-GTC,15568,15,12,10000580,370.29,465,TEST51,FALSE,564.1,848,LEFT484,LEFT864,LEFT364,LEFT558
+1394,374,2012-04-11,ABIN,0,0,16,10000762,567.47,621,TEST970,false,512.23,196,LEFT985,LEFT474,LEFT591,LEFT519
+1395,1234,2012-04-11,Others,4943,0,5,10000684,411.95,311,TEST958,true,750.91,679,LEFT367,LEFT477,LEFT647,LEFT157
+1396,3934,2012-04-11,FP-GTC,165888,0,13,10000056,919.39,716,TEST281,true,855.16,995,LEFT754,LEFT839,LEFT629,LEFT546
+1397,2690,2012-04-11,FP-non GTC,20213,0,12,10000399,986.76,200,TEST494,False,465.35,450,LEFT634,LEFT352,LEFT725,LEFT170
+1398,3711,2012-04-11,Auction,158666,15,12,10000797,732.71,52,TEST230,True,433.8,719,LEFT79,LEFT206,LEFT854,LEFT835
+1399,4845,2012-04-12,ABIN,87118,0,11,10000266,767.06,715,TEST628,TRUE,736.38,495,LEFT132,LEFT272,LEFT366,LEFT141
+1400,696,2012-04-12,ABIN,12688,0,5,10000224,-28.06,422,TEST797,false,957.28,781,LEFT235,LEFT115,LEFT944,LEFT23
+1401,2182,2012-04-12,ABIN,16145,3,5,10000177,572.62,157,TEST354,True,19.43,29,LEFT607,LEFT683,LEFT467,LEFT300
+1402,1140,2012-04-12,Auction,140746,100,14,10000852,101.46,963,TEST37,TRUE,51.25,976,LEFT363,LEFT483,LEFT620,LEFT841
+1403,1308,2012-04-12,FP-non GTC,99985,0,12,10000137,146.03,863,TEST605,FALSE,27.3,378,LEFT956,LEFT742,LEFT911,LEFT548
+1404,1070,2012-04-12,FP-GTC,165888,0,14,10000927,228.98,519,TEST828,True,309.09,641,LEFT736,LEFT613,LEFT816,LEFT455
+1405,376,2012-04-12,Auction,20485,0,5,10000785,956.68,505,TEST257,False,784.27,645,LEFT807,LEFT402,LEFT200,LEFT343
+1406,4671,2012-04-12,FP-non GTC,95672,3,14,10000537,993.81,532,TEST530,True,772.27,401,LEFT525,LEFT922,LEFT685,LEFT590
+1407,2635,2012-04-12,FP-non GTC,40059,3,5,10000990,924.74,792,TEST403,True,940.27,251,LEFT898,LEFT480,LEFT778,LEFT439
+1408,952,2012-04-12,FP-GTC,63861,3,16,10000098,498.09,826,TEST906,TRUE,46.55,623,LEFT438,LEFT390,LEFT640,LEFT632
+1409,1691,2012-04-12,FP-GTC,66767,15,14,10000257,185.13,618,TEST716,False,229.12,96,LEFT915,LEFT719,LEFT655,LEFT897
+1410,2833,2012-04-12,FP-GTC,44079,0,16,10000022,101.36,350,TEST320,False,85.35,270,LEFT568,LEFT640,LEFT690,LEFT846
+1411,2273,2012-04-12,Others,132939,0,5,10000644,913.23,832,TEST164,True,48.1,588,LEFT342,LEFT484,LEFT761,LEFT874
+1412,4130,2012-04-12,FP-non GTC,6762,0,14,10000579,47.31,141,TEST199,TRUE,326.45,420,LEFT406,LEFT623,LEFT455,LEFT515
+1413,1765,2012-04-12,FP-GTC,67703,3,11,10000774,194.51,810,TEST588,False,814.54,413,LEFT943,LEFT84,LEFT262,LEFT312
+1414,4858,2012-04-12,FP-GTC,67698,0,11,10000024,708.06,568,TEST728,true,460.53,969,LEFT144,LEFT86,LEFT982,LEFT551
+1415,3980,2012-04-12,FP-GTC,152801,0,11,10000649,97.98,333,TEST988,FALSE,865.52,836,LEFT573,LEFT186,LEFT305,LEFT591
+1416,3239,2012-04-13,FP-GTC,279,15,16,10000361,441.37,960,TEST208,False,491.29,354,LEFT483,LEFT964,LEFT624,LEFT413
+1417,2762,2012-04-13,FP-GTC,2635,0,14,10000070,380.42,978,TEST750,true,147.02,437,LEFT300,LEFT45,LEFT983,LEFT853
+1418,1684,2012-04-13,Auction,43479,0,11,10000573,-24.15,519,TEST453,False,111.73,106,LEFT838,LEFT121,LEFT428,LEFT500
+1419,4964,2012-04-13,Auction,33038,15,14,10000066,594.73,617,TEST470,True,222.29,474,LEFT779,LEFT266,LEFT9,LEFT177
+1420,78,2012-04-13,ABIN,106246,0,13,10000694,536.98,650,TEST79,False,318.4,205,LEFT902,LEFT289,LEFT577,LEFT171
+1421,1278,2012-04-13,Others,80053,0,15,10000506,315.97,811,TEST410,false,911.03,976,LEFT76,LEFT834,LEFT77,LEFT210
+1422,162,2012-04-13,Auction,156356,0,16,10000578,320.56,252,TEST809,False,581.67,227,LEFT162,LEFT810,LEFT31,LEFT55
+1423,4863,2012-04-13,FP-non GTC,45238,101,11,10000327,423.19,267,TEST606,FALSE,142.71,441,LEFT488,LEFT33,LEFT812,LEFT31
+1424,4954,2012-04-13,Others,175750,3,-99,10000204,783.14,872,TEST210,false,355.13,178,LEFT464,LEFT476,LEFT101,LEFT847
+1425,487,2012-04-13,Others,314,0,5,10000731,569.9,621,TEST889,False,695.32,96,LEFT523,LEFT532,LEFT195,LEFT567
+1426,2150,2012-04-13,ABIN,57013,0,5,10000339,827.34,869,TEST368,FALSE,118.79,657,LEFT620,LEFT436,LEFT909,LEFT47
+1427,3745,2012-04-13,FP-non GTC,38238,0,5,10000537,339.02,66,TEST599,false,880.63,160,LEFT719,LEFT723,LEFT936,LEFT571
+1428,4387,2012-04-13,Others,60340,0,15,10000357,300.89,907,TEST25,true,828.82,698,LEFT363,LEFT558,LEFT374,LEFT307
+1429,1349,2012-04-13,Others,33977,15,15,10000241,29.88,16,TEST176,FALSE,197.98,802,LEFT14,LEFT793,LEFT424,LEFT896
+1430,1343,2012-04-13,Auction,13987,0,5,10000111,46.0,958,TEST258,True,210.98,230,LEFT671,LEFT748,LEFT401,LEFT833
+1431,1493,2012-04-14,FP-GTC,10866,0,14,10000888,983.51,138,TEST500,TRUE,619.4,885,LEFT435,LEFT202,LEFT624,LEFT874
+1432,4226,2012-04-14,Auction,4943,0,16,10000335,600.09,461,TEST945,FALSE,20.9,492,LEFT309,LEFT991,LEFT18,LEFT57
+1433,1559,2012-04-14,FP-GTC,45238,101,5,10000606,530.44,128,TEST789,True,888.13,454,LEFT899,LEFT91,LEFT671,LEFT443
+1434,3777,2012-04-14,FP-GTC,3838,0,15,10000830,833.16,820,TEST911,True,791.26,60,LEFT802,LEFT194,LEFT28,LEFT286
+1435,3036,2012-04-14,FP-non GTC,41940,0,14,10000881,312.8,783,TEST13,true,525.24,669,LEFT653,LEFT788,LEFT191,LEFT527
+1436,4449,2012-04-14,FP-non GTC,174053,3,11,10000040,445.53,735,TEST710,FALSE,240.87,801,LEFT355,LEFT989,LEFT721,LEFT804
+1437,1988,2012-04-14,Auction,152801,0,13,10000352,-95.42,494,TEST69,TRUE,201.03,131,LEFT720,LEFT978,LEFT283,LEFT630
+1438,1646,2012-04-14,FP-GTC,80053,0,11,10000923,681.26,758,TEST26,true,972.79,140,LEFT923,LEFT900,LEFT711,LEFT593
+1439,3784,2012-04-15,FP-non GTC,57990,3,-99,10000773,693.19,502,TEST792,TRUE,74.0,250,LEFT273,LEFT227,LEFT11,LEFT512
+1440,3193,2012-04-15,FP-non GTC,44079,0,-99,10000987,159.41,770,TEST45,true,864.5,281,LEFT598,LEFT305,LEFT345,LEFT183
+1441,3546,2012-04-15,Others,67698,0,15,10000598,812.3,649,TEST903,True,507.47,975,LEFT751,LEFT322,LEFT0,LEFT541
+1442,4819,2012-04-15,Others,40059,3,15,10000288,613.75,24,TEST880,TRUE,921.62,20,LEFT274,LEFT489,LEFT591,LEFT763
+1443,3830,2012-04-15,Others,24760,0,14,10000925,270.63,883,TEST809,True,371.59,906,LEFT159,LEFT93,LEFT369,LEFT186
+1444,2605,2012-04-15,FP-GTC,50508,0,12,10000734,961.84,696,TEST759,True,587.39,739,LEFT12,LEFT358,LEFT709,LEFT344
+1445,2646,2012-04-15,Others,118687,3,15,10000146,532.3,467,TEST201,true,54.67,363,LEFT639,LEFT455,LEFT820,LEFT833
+1446,758,2012-04-15,FP-non GTC,1349,0,12,10000379,233.62,133,TEST186,False,985.66,175,LEFT416,LEFT401,LEFT549,LEFT309
+1447,1823,2012-04-15,ABIN,45238,101,5,10000080,107.37,365,TEST264,False,360.1,280,LEFT77,LEFT628,LEFT103,LEFT217
+1448,1732,2012-04-15,FP-GTC,43479,0,5,10000919,752.3,494,TEST417,True,929.58,569,LEFT709,LEFT998,LEFT512,LEFT953
+1449,3457,2012-04-15,FP-non GTC,100847,0,14,10000692,8.02,143,TEST309,TRUE,281.22,584,LEFT574,LEFT389,LEFT957,LEFT980
+1450,4539,2012-04-15,FP-non GTC,60606,3,16,10000091,896.77,704,TEST925,True,631.74,679,LEFT171,LEFT910,LEFT521,LEFT937
+1451,4145,2012-04-15,Auction,75708,3,16,10000975,824.9,846,TEST270,True,988.13,177,LEFT1,LEFT408,LEFT724,LEFT407
+1452,1516,2012-04-15,FP-non GTC,106340,15,14,10000387,363.25,969,TEST88,false,291.47,354,LEFT128,LEFT19,LEFT658,LEFT523
+1453,4594,2012-04-15,FP-non GTC,23446,23,11,10000832,298.97,793,TEST543,True,827.19,432,LEFT242,LEFT996,LEFT44,LEFT40
+1454,4134,2012-04-15,Auction,63889,0,16,10000446,797.43,871,TEST579,TRUE,149.68,501,LEFT655,LEFT934,LEFT610,LEFT782
+1455,4526,2012-04-15,FP-GTC,16145,3,13,10000248,418.31,519,TEST355,FALSE,764.98,421,LEFT75,LEFT888,LEFT604,LEFT245
+1456,3210,2012-04-16,ABIN,166013,15,15,10000995,106.22,321,TEST322,TRUE,654.65,553,LEFT2,LEFT879,LEFT62,LEFT758
+1457,798,2012-04-16,Auction,1357,0,-99,10000678,961.61,414,TEST958,TRUE,630.83,515,LEFT703,LEFT528,LEFT919,LEFT439
+1458,490,2012-04-16,ABIN,156356,0,5,10000523,310.96,757,TEST26,false,581.49,753,LEFT706,LEFT496,LEFT701,LEFT838
+1459,873,2012-04-16,Auction,57990,0,15,10000454,310.09,272,TEST702,false,11.43,927,LEFT257,LEFT608,LEFT128,LEFT111
+1460,430,2012-04-16,FP-non GTC,25147,0,5,10000916,214.5,687,TEST624,false,61.14,818,LEFT883,LEFT257,LEFT848,LEFT554
+1461,2842,2012-04-16,FP-non GTC,108782,15,14,10000671,349.5,514,TEST68,True,512.65,364,LEFT666,LEFT894,LEFT396,LEFT413
+1462,4608,2012-04-16,Auction,80135,0,13,10000166,703.64,955,TEST419,False,446.73,845,LEFT635,LEFT865,LEFT776,LEFT189
+1463,1040,2012-04-16,FP-GTC,67698,2,12,10000154,825.95,332,TEST642,True,509.89,795,LEFT69,LEFT645,LEFT218,LEFT322
+1464,3714,2012-04-16,ABIN,108782,15,14,10000505,803.19,238,TEST344,FALSE,517.3,557,LEFT125,LEFT885,LEFT453,LEFT411
+1465,1296,2012-04-16,ABIN,53064,0,5,10000023,-64.65,497,TEST244,TRUE,207.4,335,LEFT269,LEFT715,LEFT600,LEFT458
+1466,4564,2012-04-17,Auction,43479,0,14,10000470,6.82,610,TEST133,TRUE,662.39,411,LEFT832,LEFT570,LEFT738,LEFT792
+1467,514,2012-04-17,FP-non GTC,10058,3,12,10000667,-6.07,771,TEST770,true,398.4,940,LEFT561,LEFT363,LEFT790,LEFT753
+1468,2459,2012-04-17,FP-non GTC,46575,0,15,10000903,833.24,545,TEST167,False,266.05,691,LEFT881,LEFT190,LEFT600,LEFT797
+1469,2061,2012-04-17,Auction,150265,15,5,10000902,647.61,869,TEST703,True,191.12,537,LEFT475,LEFT495,LEFT248,LEFT933
+1470,4481,2012-04-17,ABIN,31519,0,14,10000727,25.09,503,TEST768,False,904.42,688,LEFT92,LEFT648,LEFT545,LEFT224
+1471,1023,2012-04-17,ABIN,31387,3,11,10000944,60.13,817,TEST265,FALSE,454.43,167,LEFT747,LEFT271,LEFT515,LEFT813
+1472,3065,2012-04-17,Auction,3838,0,12,10000757,372.95,961,TEST468,false,367.92,573,LEFT760,LEFT826,LEFT886,LEFT380
+1473,4518,2012-04-17,FP-GTC,9426,3,-99,10000264,949.72,486,TEST435,false,665.43,924,LEFT331,LEFT382,LEFT655,LEFT914
+1474,1892,2012-04-17,FP-non GTC,152801,0,11,10000052,718.26,75,TEST437,FALSE,165.51,680,LEFT777,LEFT255,LEFT23,LEFT394
+1475,1174,2012-04-17,Auction,63889,0,5,10000622,948.5,627,TEST816,False,76.07,223,LEFT275,LEFT584,LEFT841,LEFT939
+1476,3609,2012-04-17,FP-non GTC,159184,0,5,10000310,858.82,185,TEST143,False,267.6,445,LEFT90,LEFT2,LEFT552,LEFT893
+1477,3306,2012-04-17,FP-GTC,82494,15,12,10000444,289.0,943,TEST505,TRUE,931.33,598,LEFT817,LEFT855,LEFT735,LEFT603
+1478,406,2012-04-17,Auction,95173,0,15,10000421,139.54,406,TEST258,TRUE,206.13,544,LEFT351,LEFT900,LEFT57,LEFT508
+1479,4095,2012-04-18,Auction,279,15,-99,10000158,338.08,338,TEST333,True,541.62,701,LEFT681,LEFT856,LEFT917,LEFT879
+1480,1929,2012-04-18,Others,100847,0,13,10000212,194.85,792,TEST264,false,503.6,748,LEFT511,LEFT221,LEFT475,LEFT687
+1481,1785,2012-04-18,FP-GTC,44079,0,11,10000162,562.85,589,TEST729,true,120.23,469,LEFT679,LEFT782,LEFT739,LEFT636
+1482,322,2012-04-18,FP-GTC,82494,15,11,10000384,721.35,608,TEST4,true,25.6,994,LEFT561,LEFT550,LEFT269,LEFT285
+1483,726,2012-04-18,Others,57013,0,14,10000085,455.33,33,TEST972,true,447.33,228,LEFT627,LEFT273,LEFT336,LEFT86
+1484,155,2012-04-18,Others,34273,100,15,10000362,71.21,394,TEST716,FALSE,814.27,922,LEFT56,LEFT272,LEFT29,LEFT40
+1485,1687,2012-04-18,ABIN,158798,0,11,10000973,177.16,947,TEST156,TRUE,563.37,65,LEFT124,LEFT372,LEFT584,LEFT672
+1486,1367,2012-04-18,Auction,31387,3,13,10000183,598.59,299,TEST597,true,673.55,715,LEFT616,LEFT927,LEFT872,LEFT738
+1487,72,2012-04-18,Others,32876,0,13,10000775,960.58,289,TEST821,TRUE,462.25,607,LEFT844,LEFT587,LEFT214,LEFT65
+1488,4995,2012-04-18,Auction,1161,3,14,10000454,541.43,604,TEST137,True,300.31,491,LEFT233,LEFT108,LEFT413,LEFT405
+1489,1588,2012-04-18,Auction,139973,3,15,10000385,490.51,552,TEST78,True,900.35,709,LEFT867,LEFT702,LEFT427,LEFT786
+1490,2544,2012-04-18,Others,15808,15,15,10000342,-47.71,48,TEST293,FALSE,320.97,577,LEFT750,LEFT101,LEFT506,LEFT121
+1491,3454,2012-04-18,FP-GTC,106246,0,5,10000030,942.77,291,TEST705,FALSE,418.04,976,LEFT593,LEFT890,LEFT329,LEFT53
+1492,3995,2012-04-18,Auction,80287,0,-99,10000169,997.35,282,TEST51,False,239.94,927,LEFT757,LEFT243,LEFT303,LEFT106
+1493,1259,2012-04-19,Auction,34273,100,11,10000382,341.83,498,TEST990,TRUE,399.81,92,LEFT196,LEFT123,LEFT733,LEFT614
+1494,2543,2012-04-19,ABIN,13987,0,13,10000464,549.02,973,TEST196,TRUE,367.61,792,LEFT769,LEFT831,LEFT527,LEFT548
+1495,3867,2012-04-19,Auction,80287,0,13,10000100,179.41,421,TEST770,False,499.25,109,LEFT901,LEFT12,LEFT998,LEFT7
+1496,3261,2012-04-19,Auction,170083,3,-99,10000540,596.24,982,TEST728,True,171.94,650,LEFT798,LEFT24,LEFT284,LEFT10
+1497,1917,2012-04-19,ABIN,87118,0,5,10000722,113.51,308,TEST731,False,580.62,476,LEFT119,LEFT214,LEFT564,LEFT605
+1498,792,2012-04-19,ABIN,65,0,15,10000677,246.85,712,TEST917,False,734.97,747,LEFT803,LEFT134,LEFT730,LEFT995
+1499,2339,2012-04-19,Auction,61323,0,13,10000312,5.77,406,TEST159,True,426.21,745,LEFT692,LEFT215,LEFT959,LEFT150
+1500,2744,2012-04-19,FP-GTC,73506,0,12,10000978,272.73,351,TEST821,FALSE,567.44,674,LEFT704,LEFT43,LEFT602,LEFT76
+1501,3954,2012-04-19,Auction,2635,0,16,10000124,986.56,459,TEST348,false,896.51,138,LEFT700,LEFT980,LEFT283,LEFT999
+1502,2177,2012-04-19,ABIN,103324,15,5,10000874,556.26,11,TEST311,FALSE,94.01,256,LEFT610,LEFT691,LEFT296,LEFT638
+1503,3354,2012-04-19,Others,175750,3,5,10000084,313.6,635,TEST537,false,5.28,660,LEFT44,LEFT353,LEFT112,LEFT873
+1504,4388,2012-04-19,FP-GTC,36250,0,11,10000636,67.75,292,TEST708,FALSE,262.84,880,LEFT952,LEFT214,LEFT661,LEFT786
+1505,1363,2012-04-20,ABIN,46575,0,-99,10000028,293.31,598,TEST892,true,782.55,706,LEFT56,LEFT63,LEFT394,LEFT3
+1506,1023,2012-04-20,Others,31387,3,5,10000741,844.28,884,TEST557,false,651.8,12,LEFT344,LEFT591,LEFT46,LEFT774
+1507,2446,2012-04-20,Others,165888,0,13,10000701,359.77,788,TEST196,true,271.83,208,LEFT23,LEFT402,LEFT293,LEFT295
+1508,832,2012-04-20,FP-GTC,1120,3,13,10000989,137.91,91,TEST949,False,1.61,597,LEFT798,LEFT208,LEFT873,LEFT799
+1509,2030,2012-04-20,FP-GTC,80053,0,5,10000489,3.42,628,TEST177,true,786.03,712,LEFT354,LEFT449,LEFT248,LEFT170
+1510,3180,2012-04-20,ABIN,99985,0,13,10000691,400.57,807,TEST925,FALSE,135.26,246,LEFT281,LEFT770,LEFT87,LEFT551
+1511,4577,2012-04-20,FP-GTC,159184,0,15,10000005,137.01,177,TEST845,False,931.99,345,LEFT573,LEFT931,LEFT728,LEFT421
+1512,531,2012-04-20,FP-GTC,61323,0,-99,10000122,893.39,723,TEST233,TRUE,881.97,765,LEFT348,LEFT131,LEFT899,LEFT900
+1513,191,2012-04-20,Auction,20886,0,11,10000931,266.86,31,TEST360,true,123.73,536,LEFT124,LEFT373,LEFT260,LEFT546
+1514,4149,2012-04-20,ABIN,88750,0,-99,10000223,798.81,882,TEST750,TRUE,801.07,984,LEFT140,LEFT243,LEFT654,LEFT261
+1515,1447,2012-04-20,FP-GTC,31387,3,14,10000235,582.3,141,TEST653,TRUE,171.77,416,LEFT559,LEFT266,LEFT305,LEFT641
+1516,359,2012-04-20,FP-non GTC,95672,3,11,10000749,453.93,490,TEST413,False,545.27,657,LEFT714,LEFT291,LEFT259,LEFT959
+1517,2784,2012-04-20,ABIN,75665,0,14,10000639,273.84,846,TEST862,false,259.14,926,LEFT685,LEFT951,LEFT467,LEFT638
+1518,648,2012-04-20,ABIN,53064,0,11,10000177,754.94,421,TEST58,true,836.19,15,LEFT233,LEFT729,LEFT541,LEFT871
+1519,4113,2012-04-20,Auction,100847,0,11,10000361,118.79,429,TEST407,False,209.09,981,LEFT358,LEFT181,LEFT989,LEFT598
+1520,1,2012-04-20,Auction,103324,15,-99,10000071,114.5,740,TEST563,FALSE,280.19,478,LEFT496,LEFT693,LEFT704,LEFT704
+1521,1245,2012-04-20,FP-non GTC,87118,0,12,10000624,756.27,488,TEST789,FALSE,614.83,843,LEFT203,LEFT307,LEFT140,LEFT227
+1522,1075,2012-04-21,FP-non GTC,16509,0,14,10000193,48.54,868,TEST443,True,235.12,124,LEFT446,LEFT876,LEFT400,LEFT860
+1523,1140,2012-04-21,ABIN,145970,0,11,10000965,936.96,946,TEST228,true,488.04,622,LEFT234,LEFT812,LEFT841,LEFT745
+1524,1397,2012-04-21,Auction,51582,0,5,10000631,-27.51,593,TEST901,false,245.83,491,LEFT479,LEFT481,LEFT400,LEFT641
+1525,3214,2012-04-21,Others,95173,0,11,10000578,609.55,188,TEST801,FALSE,4.99,461,LEFT470,LEFT298,LEFT408,LEFT461
+1526,2038,2012-04-21,Others,1357,0,5,10000727,972.76,642,TEST514,False,26.88,66,LEFT181,LEFT691,LEFT273,LEFT8
+1527,2217,2012-04-21,FP-non GTC,57990,0,12,10000505,492.76,817,TEST832,false,256.58,344,LEFT142,LEFT539,LEFT688,LEFT479
+1528,3751,2012-04-21,FP-non GTC,279,15,12,10000372,3.48,857,TEST291,false,707.99,377,LEFT164,LEFT398,LEFT866,LEFT866
+1529,1626,2012-04-21,ABIN,175750,0,15,10000625,814.92,510,TEST782,FALSE,692.19,906,LEFT303,LEFT226,LEFT669,LEFT39
+1530,4418,2012-04-21,FP-non GTC,67698,0,5,10000553,91.59,955,TEST386,true,624.88,656,LEFT221,LEFT491,LEFT129,LEFT371
+1531,1346,2012-04-21,FP-GTC,10058,3,12,10000998,322.06,524,TEST8,True,29.55,744,LEFT617,LEFT317,LEFT984,LEFT121
+1532,1604,2012-04-21,Auction,16145,0,5,10000122,731.72,454,TEST772,TRUE,212.12,875,LEFT418,LEFT321,LEFT427,LEFT599
+1533,1204,2012-04-21,Auction,216,0,11,10000009,207.05,20,TEST752,False,790.2,553,LEFT999,LEFT253,LEFT937,LEFT314
+1534,1540,2012-04-21,FP-non GTC,152801,0,12,10000928,538.01,375,TEST955,False,89.55,449,LEFT163,LEFT728,LEFT327,LEFT711
+1535,1045,2012-04-22,FP-GTC,63861,0,11,10000221,-47.25,498,TEST787,False,667.71,231,LEFT312,LEFT172,LEFT403,LEFT336
+1536,4927,2012-04-22,ABIN,158798,0,16,10000381,562.66,150,TEST328,true,811.66,532,LEFT515,LEFT482,LEFT720,LEFT406
+1537,293,2012-04-22,FP-GTC,87118,0,15,10000895,475.07,342,TEST695,true,420.71,397,LEFT620,LEFT81,LEFT947,LEFT397
+1538,4514,2012-04-22,Auction,4943,0,16,10000703,995.97,62,TEST779,TRUE,623.37,414,LEFT692,LEFT899,LEFT920,LEFT357
+1539,1920,2012-04-22,FP-non GTC,20485,0,16,10000678,320.92,953,TEST634,TRUE,137.14,72,LEFT406,LEFT581,LEFT945,LEFT619
+1540,3167,2012-04-22,Others,279,15,-99,10000759,231.6,692,TEST876,true,298.23,391,LEFT714,LEFT371,LEFT54,LEFT728
+1541,1302,2012-04-22,FP-non GTC,118687,3,11,10000692,11.68,332,TEST485,True,317.48,902,LEFT566,LEFT864,LEFT301,LEFT914
+1542,2086,2012-04-22,Others,24760,0,16,10000688,211.22,860,TEST846,TRUE,719.2,46,LEFT466,LEFT64,LEFT571,LEFT450
+1543,833,2012-04-22,Auction,174053,3,12,10000441,822.48,508,TEST805,true,838.52,359,LEFT101,LEFT257,LEFT923,LEFT104
+1544,3558,2012-04-22,Auction,63889,0,13,10000535,52.55,338,TEST375,true,578.75,34,LEFT984,LEFT845,LEFT220,LEFT340
+1545,503,2012-04-22,Auction,174106,3,12,10000962,-67.76,697,TEST652,True,894.96,662,LEFT32,LEFT285,LEFT949,LEFT402
+1546,3712,2012-04-22,ABIN,20485,0,13,10000541,878.74,91,TEST950,FALSE,922.02,252,LEFT874,LEFT451,LEFT111,LEFT291
+1547,1505,2012-04-22,FP-GTC,24541,0,15,10000242,313.27,487,TEST676,true,804.99,504,LEFT918,LEFT693,LEFT58,LEFT94
+1548,4996,2012-04-23,FP-non GTC,41940,0,12,10000161,672.49,445,TEST137,FALSE,346.09,988,LEFT570,LEFT40,LEFT922,LEFT506
+1549,1745,2012-04-23,Auction,159184,0,12,10000111,31.44,901,TEST601,FALSE,543.05,429,LEFT738,LEFT167,LEFT836,LEFT638
+1550,3941,2012-04-23,FP-GTC,2023,0,11,10000920,790.29,655,TEST63,True,674.92,270,LEFT766,LEFT559,LEFT988,LEFT554
+1551,4789,2012-04-23,ABIN,95672,0,5,10000354,-7.67,855,TEST206,TRUE,729.0,145,LEFT941,LEFT763,LEFT782,LEFT688
+1552,2410,2012-04-23,FP-GTC,82494,15,15,10000979,603.41,461,TEST508,TRUE,975.93,789,LEFT555,LEFT887,LEFT465,LEFT619
+1553,3037,2012-04-23,ABIN,50508,0,12,10000567,298.32,321,TEST967,False,591.55,73,LEFT627,LEFT659,LEFT526,LEFT390
+1554,4654,2012-04-23,FP-non GTC,31673,0,14,10000736,36.39,618,TEST553,FALSE,284.69,710,LEFT123,LEFT954,LEFT827,LEFT19
+1555,615,2012-04-23,ABIN,20865,0,12,10000776,622.41,335,TEST282,True,107.82,605,LEFT56,LEFT425,LEFT395,LEFT502
+1556,4274,2012-04-24,Auction,67698,0,12,10000163,863.12,704,TEST962,False,483.68,109,LEFT971,LEFT214,LEFT158,LEFT842
+1557,919,2012-04-24,Auction,45238,101,12,10000278,505.27,532,TEST762,TRUE,692.03,317,LEFT436,LEFT889,LEFT271,LEFT935
+1558,2524,2012-04-24,FP-GTC,16145,0,14,10000704,138.8,677,TEST96,TRUE,764.69,593,LEFT305,LEFT456,LEFT907,LEFT840
+1559,88,2012-04-24,Others,12688,0,15,10000702,-84.9,669,TEST312,false,761.57,134,LEFT94,LEFT431,LEFT885,LEFT142
+1560,555,2012-04-24,FP-GTC,223,0,12,10000963,332.96,994,TEST950,False,265.44,604,LEFT132,LEFT858,LEFT348,LEFT463
+1561,730,2012-04-24,FP-GTC,139973,0,5,10000930,235.82,242,TEST809,False,586.02,893,LEFT984,LEFT873,LEFT375,LEFT421
+1562,2046,2012-04-24,Auction,94847,0,11,10000790,142.5,375,TEST936,False,411.02,836,LEFT74,LEFT267,LEFT273,LEFT380
+1563,3546,2012-04-24,ABIN,108782,15,13,10000784,270.08,491,TEST266,True,460.65,166,LEFT588,LEFT119,LEFT180,LEFT808
+1564,2707,2012-04-24,Others,223,0,11,10000510,622.8,218,TEST879,false,396.34,657,LEFT644,LEFT947,LEFT21,LEFT256
+1565,2121,2012-04-25,FP-non GTC,38238,0,-99,10000558,912.84,339,TEST967,true,86.29,259,LEFT495,LEFT46,LEFT12,LEFT521
+1566,1973,2012-04-25,Others,50508,0,5,10000069,156.0,653,TEST17,true,868.55,655,LEFT313,LEFT620,LEFT619,LEFT456
+1567,30,2012-04-25,ABIN,165888,0,5,10000855,168.03,1,TEST356,false,355.16,82,LEFT674,LEFT21,LEFT106,LEFT950
+1568,4070,2012-04-25,FP-non GTC,16145,3,11,10000306,771.75,876,TEST78,False,168.42,510,LEFT884,LEFT512,LEFT533,LEFT60
+1569,3223,2012-04-25,ABIN,174106,3,16,10000620,72.43,362,TEST454,True,199.14,130,LEFT978,LEFT576,LEFT919,LEFT819
+1570,2279,2012-04-25,Auction,13987,0,11,10000439,782.14,910,TEST242,false,54.54,314,LEFT521,LEFT544,LEFT465,LEFT889
+1571,3545,2012-04-25,Auction,132939,0,15,10000988,646.81,615,TEST37,TRUE,148.32,44,LEFT949,LEFT14,LEFT970,LEFT786
+1572,1379,2012-04-25,FP-GTC,48904,0,11,10000698,723.27,158,TEST296,True,160.24,969,LEFT116,LEFT327,LEFT307,LEFT950
+1573,3556,2012-04-25,FP-non GTC,43479,0,16,10000498,646.85,812,TEST160,True,465.06,645,LEFT569,LEFT768,LEFT233,LEFT912
+1574,2727,2012-04-25,FP-non GTC,170302,15,-99,10000546,-3.71,906,TEST626,TRUE,108.81,564,LEFT791,LEFT42,LEFT88,LEFT570
+1575,3955,2012-04-25,ABIN,34273,100,13,10000216,879.16,304,TEST753,FALSE,532.53,451,LEFT333,LEFT949,LEFT75,LEFT146
+1576,3997,2012-04-26,Others,2023,0,13,10000318,755.83,138,TEST223,False,944.37,813,LEFT848,LEFT735,LEFT716,LEFT162
+1577,4973,2012-04-26,Others,50508,0,14,10000853,311.71,952,TEST315,True,870.34,178,LEFT791,LEFT772,LEFT515,LEFT22
+1578,1790,2012-04-26,ABIN,9426,3,14,10000637,927.29,175,TEST490,TRUE,392.43,842,LEFT237,LEFT889,LEFT724,LEFT211
+1579,4958,2012-04-26,Others,9426,3,16,10000112,53.42,371,TEST197,false,7.74,897,LEFT143,LEFT999,LEFT41,LEFT47
+1580,2958,2012-04-26,FP-GTC,16145,3,15,10000753,349.49,415,TEST652,TRUE,228.16,278,LEFT804,LEFT716,LEFT62,LEFT703
+1581,199,2012-04-26,FP-GTC,45238,101,16,10000251,642.94,54,TEST432,False,98.25,160,LEFT871,LEFT258,LEFT636,LEFT101
+1582,1731,2012-04-26,FP-GTC,60606,3,12,10000256,860.63,567,TEST879,TRUE,790.42,364,LEFT875,LEFT566,LEFT394,LEFT838
+1583,3855,2012-04-26,FP-GTC,314,0,13,10000598,566.15,595,TEST199,TRUE,120.64,713,LEFT893,LEFT352,LEFT69,LEFT476
+1584,767,2012-04-26,Auction,15687,0,13,10000175,571.7,4,TEST431,true,198.15,308,LEFT735,LEFT846,LEFT414,LEFT209
+1585,4855,2012-04-26,Auction,45238,101,11,10000690,885.91,448,TEST65,True,667.5,50,LEFT32,LEFT785,LEFT157,LEFT792
+1586,334,2012-04-26,FP-GTC,150047,3,14,10000038,902.22,33,TEST443,true,668.97,499,LEFT172,LEFT516,LEFT135,LEFT505
+1587,2420,2012-04-26,FP-non GTC,145970,0,12,10000922,331.14,14,TEST95,False,375.14,635,LEFT784,LEFT551,LEFT179,LEFT201
+1588,3133,2012-04-26,ABIN,95672,0,16,10000977,912.39,379,TEST535,False,821.41,455,LEFT311,LEFT495,LEFT310,LEFT610
+1589,1257,2012-04-26,ABIN,159184,0,11,10000942,-89.13,573,TEST157,True,179.32,959,LEFT428,LEFT491,LEFT161,LEFT921
+1590,2138,2012-04-26,FP-GTC,67698,0,13,10000568,-50.58,970,TEST35,true,119.52,991,LEFT930,LEFT652,LEFT617,LEFT165
+1591,2938,2012-04-26,Auction,156356,0,14,10000519,418.53,147,TEST205,true,706.25,509,LEFT848,LEFT500,LEFT361,LEFT686
+1592,2654,2012-04-26,FP-GTC,25147,0,13,10000247,612.05,29,TEST324,TRUE,505.78,505,LEFT385,LEFT815,LEFT599,LEFT20
+1593,2523,2012-04-26,FP-non GTC,34273,100,15,10000440,259.33,308,TEST793,False,898.86,255,LEFT118,LEFT664,LEFT688,LEFT690
+1594,2848,2012-04-27,Others,15808,15,15,10000966,503.22,480,TEST531,TRUE,680.55,613,LEFT447,LEFT379,LEFT552,LEFT106
+1595,4585,2012-04-27,Auction,132939,0,11,10000410,129.02,404,TEST640,False,225.8,119,LEFT714,LEFT850,LEFT687,LEFT733
+1596,4689,2012-04-27,ABIN,314,211,5,10000728,880.41,743,TEST266,True,251.86,593,LEFT754,LEFT94,LEFT718,LEFT77
+1597,2229,2012-04-27,FP-GTC,11848,0,14,10000586,876.73,262,TEST340,false,236.53,45,LEFT898,LEFT172,LEFT66,LEFT855
+1598,1952,2012-04-27,FP-GTC,15808,15,-99,10000020,848.43,323,TEST893,FALSE,125.47,574,LEFT738,LEFT979,LEFT304,LEFT581
+1599,2718,2012-04-27,FP-GTC,164,0,12,10000294,811.47,987,TEST96,True,146.32,587,LEFT864,LEFT608,LEFT121,LEFT856
+1600,4420,2012-04-27,Auction,13836,0,12,10000041,76.36,353,TEST408,TRUE,674.29,595,LEFT711,LEFT533,LEFT958,LEFT88
+1601,55,2012-04-27,Auction,31387,3,12,10000326,504.37,700,TEST623,true,195.65,60,LEFT566,LEFT639,LEFT33,LEFT514
+1602,4827,2012-04-27,FP-GTC,80287,0,11,10000472,854.81,208,TEST464,False,132.84,650,LEFT90,LEFT419,LEFT773,LEFT831
+1603,3206,2012-04-27,FP-non GTC,25147,0,12,10000091,129.03,993,TEST26,true,78.11,856,LEFT687,LEFT41,LEFT218,LEFT402
+1604,470,2012-04-27,FP-GTC,150047,3,12,10000704,-9.51,783,TEST262,FALSE,313.39,684,LEFT326,LEFT345,LEFT259,LEFT516
+1605,4503,2012-04-27,FP-non GTC,174106,3,16,10000998,143.59,551,TEST351,FALSE,346.21,247,LEFT38,LEFT469,LEFT320,LEFT262
+1606,2268,2012-04-27,Others,41940,0,13,10000676,643.33,323,TEST197,True,617.69,355,LEFT394,LEFT588,LEFT251,LEFT371
+1607,1874,2012-04-27,Others,2635,0,-99,10000524,666.15,218,TEST574,True,183.47,2,LEFT618,LEFT443,LEFT915,LEFT154
+1608,20,2012-04-27,FP-non GTC,216,0,14,10000011,37.75,750,TEST358,false,45.81,716,LEFT824,LEFT997,LEFT198,LEFT667
+1609,3333,2012-04-27,ABIN,88750,0,15,10000375,828.93,551,TEST632,TRUE,862.7,528,LEFT526,LEFT236,LEFT464,LEFT373
+1610,3684,2012-04-27,ABIN,103178,15,16,10000012,127.05,865,TEST733,False,208.85,727,LEFT697,LEFT745,LEFT978,LEFT723
+1611,2755,2012-04-27,FP-non GTC,32996,15,12,10000127,-38.81,188,TEST165,false,199.32,639,LEFT995,LEFT949,LEFT225,LEFT449
+1612,2961,2012-04-27,ABIN,57784,0,13,10000650,164.43,100,TEST152,True,515.53,780,LEFT435,LEFT650,LEFT570,LEFT465
+1613,1397,2012-04-27,FP-GTC,150265,15,13,10000887,194.52,347,TEST656,false,874.25,908,LEFT640,LEFT755,LEFT817,LEFT645
+1614,1357,2012-04-28,FP-GTC,33977,15,14,10000437,763.93,784,TEST895,false,886.66,932,LEFT461,LEFT881,LEFT754,LEFT120
+1615,2251,2012-04-28,ABIN,60606,3,12,10000128,-11.42,693,TEST556,true,669.91,888,LEFT402,LEFT281,LEFT669,LEFT573
+1616,2823,2012-04-28,FP-GTC,31387,3,12,10000726,933.22,372,TEST457,False,150.98,399,LEFT823,LEFT614,LEFT945,LEFT31
+1617,1721,2012-04-28,FP-non GTC,38238,0,-99,10000205,285.6,591,TEST334,True,511.67,930,LEFT405,LEFT347,LEFT68,LEFT829
+1618,4678,2012-04-28,ABIN,1357,0,-99,10000567,523.03,43,TEST982,True,346.81,336,LEFT235,LEFT253,LEFT433,LEFT228
+1619,246,2012-04-28,Auction,161567,15,12,10000583,720.21,756,TEST896,False,726.68,674,LEFT318,LEFT921,LEFT964,LEFT166
+1620,1010,2012-04-28,FP-GTC,2635,0,14,10000844,73.0,477,TEST175,False,39.95,629,LEFT877,LEFT383,LEFT707,LEFT611
+1621,376,2012-04-28,FP-non GTC,32876,0,14,10000535,334.62,812,TEST893,FALSE,517.59,254,LEFT0,LEFT893,LEFT487,LEFT485
+1622,3301,2012-04-28,Auction,155226,0,15,10000089,336.73,973,TEST854,False,353.62,369,LEFT349,LEFT640,LEFT502,LEFT989
+1623,1347,2012-04-28,Auction,66767,15,-99,10000128,95.03,288,TEST181,True,934.8,544,LEFT216,LEFT125,LEFT999,LEFT837
+1624,2571,2012-04-28,ABIN,34273,100,14,10000658,369.15,319,TEST331,FALSE,406.55,922,LEFT543,LEFT778,LEFT173,LEFT798
+1625,1495,2012-04-29,ABIN,31387,3,14,10000606,51.85,25,TEST48,False,961.64,575,LEFT22,LEFT986,LEFT922,LEFT467
+1626,3132,2012-04-29,FP-non GTC,216,0,15,10000256,601.13,393,TEST871,True,806.53,558,LEFT144,LEFT848,LEFT281,LEFT753
+1627,667,2012-04-29,FP-GTC,50677,0,15,10000033,62.06,574,TEST367,True,754.59,743,LEFT255,LEFT579,LEFT917,LEFT205
+1628,3907,2012-04-29,FP-GTC,60340,0,15,10000493,102.66,921,TEST689,true,542.1,726,LEFT776,LEFT821,LEFT58,LEFT865
+1629,3034,2012-04-29,FP-non GTC,6762,0,14,10000511,939.24,863,TEST524,False,220.66,289,LEFT34,LEFT378,LEFT455,LEFT226
+1630,3738,2012-04-29,Auction,759,0,16,10000795,-99.48,60,TEST650,True,279.05,449,LEFT993,LEFT728,LEFT185,LEFT945
+1631,3028,2012-04-29,FP-non GTC,64076,0,13,10000517,779.22,862,TEST484,False,844.72,693,LEFT925,LEFT176,LEFT412,LEFT49
+1632,4917,2012-04-30,FP-non GTC,50508,0,-99,10000637,331.41,97,TEST411,True,613.98,485,LEFT129,LEFT61,LEFT193,LEFT909
+1633,2328,2012-04-30,Others,48027,0,14,10000507,742.62,562,TEST276,TRUE,125.29,975,LEFT133,LEFT732,LEFT119,LEFT949
+1634,1041,2012-04-30,ABIN,100847,0,5,10000742,339.24,152,TEST440,true,556.17,500,LEFT788,LEFT231,LEFT769,LEFT555
+1635,4626,2012-04-30,Auction,20213,0,5,10000967,230.5,892,TEST644,false,426.85,223,LEFT977,LEFT898,LEFT726,LEFT685
+1636,3070,2012-04-30,Others,63889,0,15,10000941,831.91,161,TEST257,false,777.09,206,LEFT453,LEFT572,LEFT578,LEFT702
+1637,4504,2012-04-30,FP-non GTC,80135,0,11,10000605,-61.09,451,TEST445,False,236.02,265,LEFT994,LEFT140,LEFT950,LEFT170
+1638,4640,2012-04-30,FP-GTC,65,0,5,10000753,505.18,765,TEST722,False,2.79,464,LEFT865,LEFT857,LEFT776,LEFT272
+1639,2531,2012-04-30,Others,63864,3,15,10000475,661.0,380,TEST46,True,332.0,6,LEFT262,LEFT968,LEFT464,LEFT985
+1640,3576,2012-04-30,FP-non GTC,15808,15,11,10000210,320.19,906,TEST365,False,454.53,705,LEFT594,LEFT26,LEFT422,LEFT931
+1641,395,2012-04-30,ABIN,66767,15,11,10000747,26.27,354,TEST608,FALSE,747.42,533,LEFT48,LEFT378,LEFT352,LEFT577
+1642,3838,2012-04-30,ABIN,1357,0,11,10000405,483.16,950,TEST635,TRUE,726.9,893,LEFT580,LEFT319,LEFT523,LEFT614
+1643,4661,2012-04-30,Auction,150265,15,5,10000614,498.32,494,TEST656,false,279.08,109,LEFT713,LEFT65,LEFT966,LEFT312
+1644,4098,2012-04-30,Auction,10058,3,5,10000816,635.84,24,TEST963,TRUE,316.36,738,LEFT861,LEFT487,LEFT442,LEFT484
+1645,359,2012-04-30,FP-GTC,95672,3,12,10000070,995.8,641,TEST581,True,65.34,941,LEFT424,LEFT991,LEFT206,LEFT531
+1646,4631,2012-04-30,Auction,37831,0,11,10000018,311.18,574,TEST730,FALSE,53.38,676,LEFT806,LEFT653,LEFT898,LEFT443
+1647,231,2012-04-30,FP-non GTC,31387,3,12,10000789,710.1,330,TEST490,TRUE,251.44,106,LEFT623,LEFT873,LEFT186,LEFT455
+1648,1315,2012-04-30,Auction,223,0,12,10000364,587.87,234,TEST942,false,654.2,970,LEFT104,LEFT659,LEFT511,LEFT840
+1649,701,2012-04-30,FP-GTC,10866,0,13,10000844,37.53,396,TEST561,True,182.66,749,LEFT702,LEFT891,LEFT248,LEFT648
+1650,924,2012-04-30,ABIN,16145,0,16,10000208,923.33,61,TEST92,TRUE,959.59,688,LEFT837,LEFT873,LEFT908,LEFT423
+1651,4249,2012-04-30,Others,164261,0,12,10000963,892.36,13,TEST480,TRUE,166.22,726,LEFT589,LEFT218,LEFT204,LEFT272
+1652,557,2012-04-30,Others,963,0,16,10000289,933.36,892,TEST22,True,382.64,404,LEFT898,LEFT514,LEFT426,LEFT538
+1653,2513,2012-04-30,Others,132939,0,14,10000317,687.15,845,TEST255,FALSE,974.74,232,LEFT133,LEFT730,LEFT751,LEFT456
+1654,3018,2012-04-30,ABIN,6762,0,-99,10000896,716.35,315,TEST598,false,340.69,666,LEFT517,LEFT523,LEFT551,LEFT12
+1655,32,2012-04-30,Auction,32876,0,13,10000805,531.85,321,TEST338,true,66.32,563,LEFT97,LEFT415,LEFT387,LEFT342
+1656,431,2012-04-30,Others,13987,0,16,10000946,228.45,139,TEST389,false,701.41,925,LEFT379,LEFT791,LEFT627,LEFT392
+1657,1660,2012-04-30,Others,106340,15,5,10000490,563.74,844,TEST788,FALSE,267.75,46,LEFT739,LEFT341,LEFT650,LEFT323
+1658,69,2012-04-30,Others,43398,0,16,10000965,174.88,167,TEST256,false,238.23,388,LEFT777,LEFT877,LEFT824,LEFT285
+1659,1594,2012-04-30,ABIN,113593,15,13,10000167,197.72,570,TEST746,false,474.09,377,LEFT86,LEFT724,LEFT34,LEFT35
+1660,4723,2012-05-01,FP-non GTC,223,0,5,10000497,203.49,164,TEST72,False,112.81,213,LEFT858,LEFT476,LEFT52,LEFT600
+1661,1903,2012-05-01,FP-non GTC,31387,3,16,10000177,-62.12,731,TEST506,false,770.25,708,LEFT372,LEFT492,LEFT277,LEFT597
+1662,2054,2012-05-01,ABIN,164,0,14,10000557,-75.15,92,TEST524,false,254.77,733,LEFT330,LEFT16,LEFT307,LEFT48
+1663,4578,2012-05-01,ABIN,4943,0,12,10000297,854.11,85,TEST666,true,180.47,5,LEFT125,LEFT297,LEFT813,LEFT326
+1664,166,2012-05-01,Auction,31673,0,5,10000050,399.48,73,TEST643,True,860.4,546,LEFT942,LEFT139,LEFT856,LEFT263
+1665,4797,2012-05-01,Auction,67703,3,16,10000877,103.49,599,TEST139,FALSE,544.27,368,LEFT162,LEFT401,LEFT259,LEFT553
+1666,2471,2012-05-01,FP-GTC,37831,0,14,10000934,540.67,681,TEST846,false,186.49,683,LEFT515,LEFT208,LEFT936,LEFT969
+1667,3313,2012-05-01,Others,314,211,12,10000628,185.5,171,TEST303,true,460.98,454,LEFT574,LEFT381,LEFT42,LEFT320
+1668,2285,2012-05-01,ABIN,43398,0,-99,10000935,923.42,161,TEST149,FALSE,986.41,667,LEFT37,LEFT893,LEFT77,LEFT416
+1669,4701,2012-05-01,ABIN,2023,0,11,10000955,884.93,354,TEST200,False,370.64,959,LEFT521,LEFT360,LEFT40,LEFT486
+1670,3695,2012-05-01,ABIN,15687,0,5,10000343,969.39,955,TEST566,TRUE,179.12,959,LEFT295,LEFT405,LEFT402,LEFT829
+1671,481,2012-05-01,FP-non GTC,103324,15,13,10000415,381.88,715,TEST221,false,230.67,477,LEFT46,LEFT735,LEFT709,LEFT509
+1672,2533,2012-05-01,Auction,170083,3,16,10000952,767.25,315,TEST867,FALSE,990.47,346,LEFT476,LEFT76,LEFT455,LEFT157
+1673,2779,2012-05-01,FP-non GTC,130,0,5,10000167,886.71,910,TEST981,TRUE,416.95,708,LEFT265,LEFT26,LEFT937,LEFT831
+1674,368,2012-05-01,FP-non GTC,80135,0,14,10000644,339.07,138,TEST168,TRUE,677.43,338,LEFT487,LEFT528,LEFT805,LEFT392
+1675,4335,2012-05-01,Auction,170302,15,11,10000830,683.83,382,TEST481,False,965.6,185,LEFT131,LEFT40,LEFT252,LEFT959
+1676,4683,2012-05-01,Others,50677,0,-99,10000974,337.28,935,TEST184,false,906.53,539,LEFT60,LEFT862,LEFT515,LEFT356
+1677,3866,2012-05-01,FP-GTC,67698,0,13,10000261,845.35,380,TEST914,TRUE,997.18,679,LEFT549,LEFT617,LEFT975,LEFT491
+1678,4262,2012-05-01,Auction,94847,0,13,10000029,269.98,901,TEST389,true,623.51,702,LEFT292,LEFT726,LEFT883,LEFT323
+1679,4021,2012-05-01,Auction,11848,0,14,10000298,172.96,556,TEST725,TRUE,517.95,115,LEFT402,LEFT677,LEFT457,LEFT342
+1680,2834,2012-05-02,Auction,139973,0,13,10000597,992.85,401,TEST138,False,49.35,185,LEFT861,LEFT153,LEFT996,LEFT649
+1681,4001,2012-05-02,Auction,38238,0,5,10000131,542.21,218,TEST201,TRUE,220.1,937,LEFT408,LEFT198,LEFT838,LEFT317
+1682,1794,2012-05-02,Others,10058,3,11,10000180,641.71,802,TEST122,TRUE,794.59,359,LEFT973,LEFT820,LEFT411,LEFT205
+1683,2369,2012-05-02,FP-GTC,159184,0,15,10000835,663.99,260,TEST571,FALSE,417.86,661,LEFT617,LEFT288,LEFT934,LEFT885
+1684,3122,2012-05-02,FP-GTC,10058,3,11,10000388,407.53,291,TEST424,FALSE,613.67,848,LEFT538,LEFT933,LEFT334,LEFT244
+1685,1095,2012-05-02,FP-GTC,13987,0,16,10000611,248.2,603,TEST798,FALSE,593.19,975,LEFT559,LEFT910,LEFT203,LEFT503
+1686,557,2012-05-02,ABIN,88750,0,5,10000617,360.42,342,TEST246,false,685.51,616,LEFT526,LEFT239,LEFT968,LEFT77
+1687,3917,2012-05-02,Auction,11554,0,15,10000001,38.95,896,TEST522,TRUE,866.75,850,LEFT297,LEFT813,LEFT634,LEFT814
+1688,4774,2012-05-02,FP-GTC,31673,0,-99,10000354,506.89,973,TEST943,False,354.14,333,LEFT784,LEFT643,LEFT277,LEFT199
+1689,1796,2012-05-02,Others,43479,0,13,10000071,46.73,409,TEST464,False,802.4,642,LEFT257,LEFT539,LEFT756,LEFT679
+1690,720,2012-05-02,FP-non GTC,15808,15,16,10000731,460.33,773,TEST618,false,207.81,266,LEFT45,LEFT782,LEFT1,LEFT569
+1691,4507,2012-05-02,FP-non GTC,50677,0,14,10000810,379.87,847,TEST918,true,485.42,162,LEFT931,LEFT746,LEFT34,LEFT661
+1692,1710,2012-05-02,ABIN,150047,3,13,10000919,187.53,164,TEST204,true,93.5,497,LEFT964,LEFT288,LEFT24,LEFT927
+1693,2429,2012-05-02,Auction,43398,0,14,10000213,534.24,453,TEST123,true,970.45,402,LEFT11,LEFT958,LEFT450,LEFT372
+1694,3304,2012-05-02,FP-GTC,1120,3,12,10000781,243.19,239,TEST776,true,934.11,806,LEFT922,LEFT519,LEFT449,LEFT766
+1695,525,2012-05-02,FP-non GTC,963,0,5,10000902,70.56,196,TEST695,False,527.6,213,LEFT348,LEFT200,LEFT411,LEFT273
+1696,219,2012-05-03,Others,80287,0,5,10000980,127.09,524,TEST140,False,469.27,588,LEFT201,LEFT517,LEFT936,LEFT364
+1697,3387,2012-05-03,FP-GTC,80287,0,5,10000450,-20.17,143,TEST151,true,353.37,850,LEFT617,LEFT130,LEFT90,LEFT585
+1698,4591,2012-05-03,Auction,158798,0,14,10000323,859.49,304,TEST622,FALSE,851.75,924,LEFT690,LEFT818,LEFT429,LEFT981
+1699,239,2012-05-03,FP-GTC,170302,15,12,10000263,60.95,123,TEST600,true,208.38,177,LEFT643,LEFT775,LEFT35,LEFT511
+1700,857,2012-05-03,Others,174053,3,14,10000776,326.9,483,TEST943,FALSE,42.87,103,LEFT378,LEFT775,LEFT839,LEFT102
+1701,505,2012-05-03,Others,314,211,12,10000107,591.81,145,TEST809,false,386.97,36,LEFT751,LEFT637,LEFT865,LEFT247
+1702,3701,2012-05-03,Auction,170083,3,-99,10000320,48.93,329,TEST724,true,432.1,292,LEFT968,LEFT902,LEFT558,LEFT790
+1703,658,2012-05-03,FP-non GTC,4943,0,14,10000444,938.63,252,TEST121,TRUE,594.5,898,LEFT743,LEFT886,LEFT495,LEFT561
+1704,1566,2012-05-03,FP-GTC,9426,3,11,10000383,94.34,180,TEST466,false,715.91,490,LEFT690,LEFT830,LEFT943,LEFT294
+1705,4017,2012-05-03,ABIN,159184,0,16,10000766,864.16,493,TEST308,false,818.49,842,LEFT549,LEFT32,LEFT349,LEFT626
+1706,3094,2012-05-03,Auction,80053,0,-99,10000998,798.61,712,TEST768,False,602.56,306,LEFT241,LEFT646,LEFT587,LEFT332
+1707,3189,2012-05-04,Others,51582,0,5,10000701,336.51,624,TEST244,FALSE,749.11,204,LEFT885,LEFT975,LEFT959,LEFT292
+1708,433,2012-05-04,Others,43972,100,5,10000585,928.0,556,TEST244,TRUE,73.87,611,LEFT581,LEFT300,LEFT208,LEFT246
+1709,3498,2012-05-04,ABIN,166013,15,5,10000783,848.87,551,TEST508,FALSE,112.01,566,LEFT713,LEFT149,LEFT552,LEFT714
+1710,4148,2012-05-04,Others,140746,100,-99,10000512,535.33,729,TEST163,FALSE,136.06,559,LEFT354,LEFT184,LEFT172,LEFT269
+1711,1514,2012-05-04,FP-GTC,10058,3,14,10000112,-61.2,952,TEST529,TRUE,440.95,632,LEFT734,LEFT104,LEFT662,LEFT183
+1712,3038,2012-05-04,ABIN,25147,0,-99,10000853,363.88,477,TEST537,false,10.56,408,LEFT547,LEFT267,LEFT212,LEFT198
+1713,2295,2012-05-04,Auction,158798,0,13,10000414,379.02,254,TEST823,False,702.52,207,LEFT438,LEFT143,LEFT103,LEFT929
+1714,2909,2012-05-04,Others,63861,0,12,10000855,395.41,463,TEST933,FALSE,341.33,794,LEFT832,LEFT330,LEFT212,LEFT932
+1715,3370,2012-05-04,Others,108782,15,13,10000498,666.92,45,TEST670,FALSE,189.83,121,LEFT224,LEFT238,LEFT406,LEFT247
+1716,317,2012-05-05,Others,11848,0,14,10000144,621.73,957,TEST34,true,585.06,516,LEFT505,LEFT291,LEFT707,LEFT396
+1717,23,2012-05-05,FP-non GTC,158798,0,14,10000654,249.22,452,TEST232,true,652.29,665,LEFT746,LEFT389,LEFT122,LEFT284
+1718,4992,2012-05-05,ABIN,15115,0,12,10000399,760.74,972,TEST563,False,673.91,717,LEFT844,LEFT409,LEFT620,LEFT596
+1719,1454,2012-05-05,Others,165888,0,11,10000089,352.96,107,TEST287,True,161.5,722,LEFT315,LEFT964,LEFT896,LEFT631
+1720,3306,2012-05-05,FP-GTC,23446,23,15,10000414,805.09,434,TEST893,TRUE,81.09,949,LEFT739,LEFT272,LEFT247,LEFT447
+1721,4324,2012-05-05,Auction,16145,0,11,10000961,481.55,740,TEST32,false,637.73,807,LEFT765,LEFT625,LEFT132,LEFT331
+1722,4401,2012-05-05,Others,62179,0,-99,10000014,268.49,928,TEST361,True,435.81,27,LEFT833,LEFT999,LEFT720,LEFT131
+1723,803,2012-05-05,Others,16509,0,14,10000598,731.03,638,TEST829,TRUE,111.32,6,LEFT412,LEFT114,LEFT785,LEFT357
+1724,2624,2012-05-05,ABIN,20485,101,13,10000132,780.32,268,TEST64,True,753.35,31,LEFT778,LEFT788,LEFT835,LEFT272
+1725,4850,2012-05-05,Auction,6762,0,5,10000927,-20.37,859,TEST835,True,607.09,127,LEFT197,LEFT773,LEFT41,LEFT378
+1726,2812,2012-05-05,FP-GTC,36250,0,13,10000001,292.1,113,TEST210,TRUE,195.97,184,LEFT499,LEFT392,LEFT25,LEFT528
+1727,2793,2012-05-06,ABIN,57990,0,-99,10000464,216.4,854,TEST342,TRUE,57.56,483,LEFT806,LEFT753,LEFT952,LEFT336
+1728,343,2012-05-06,FP-non GTC,45238,101,14,10000839,553.72,479,TEST673,TRUE,194.91,153,LEFT878,LEFT118,LEFT285,LEFT966
+1729,4583,2012-05-06,Others,174106,3,-99,10000109,373.61,151,TEST517,TRUE,19.47,978,LEFT110,LEFT197,LEFT319,LEFT874
+1730,646,2012-05-06,Auction,63889,0,15,10000970,354.16,960,TEST356,TRUE,563.49,921,LEFT910,LEFT441,LEFT710,LEFT91
+1731,984,2012-05-06,FP-non GTC,80135,0,13,10000171,765.15,295,TEST234,false,539.99,419,LEFT923,LEFT346,LEFT171,LEFT349
+1732,1261,2012-05-06,ABIN,50508,0,11,10000524,295.22,243,TEST969,false,668.41,428,LEFT944,LEFT342,LEFT140,LEFT557
+1733,113,2012-05-06,FP-GTC,100847,0,16,10000793,889.58,556,TEST807,FALSE,518.12,902,LEFT415,LEFT543,LEFT302,LEFT306
+1734,1967,2012-05-06,Others,45238,101,15,10000993,36.55,652,TEST137,true,901.02,475,LEFT616,LEFT670,LEFT168,LEFT928
+1735,695,2012-05-06,Others,31387,3,12,10000848,860.01,241,TEST309,true,291.11,801,LEFT635,LEFT78,LEFT369,LEFT81
+1736,2824,2012-05-06,Others,15808,15,16,10000085,321.76,914,TEST640,True,879.45,564,LEFT175,LEFT35,LEFT384,LEFT241
+1737,3248,2012-05-06,Others,32876,0,15,10000940,151.86,837,TEST970,TRUE,555.99,498,LEFT801,LEFT95,LEFT121,LEFT278
+1738,1643,2012-05-06,FP-GTC,32996,15,12,10000558,277.63,549,TEST207,False,648.44,135,LEFT300,LEFT343,LEFT745,LEFT696
+1739,2931,2012-05-06,FP-non GTC,60340,0,5,10000158,-1.69,367,TEST429,true,65.52,925,LEFT412,LEFT824,LEFT611,LEFT57
+1740,3232,2012-05-06,FP-non GTC,80135,0,16,10000501,812.63,573,TEST642,TRUE,486.56,479,LEFT773,LEFT612,LEFT157,LEFT93
+1741,1225,2012-05-07,ABIN,164261,0,12,10000449,625.55,128,TEST375,TRUE,455.13,206,LEFT336,LEFT287,LEFT526,LEFT450
+1742,783,2012-05-07,Others,174106,3,15,10000049,123.09,214,TEST41,true,916.04,891,LEFT364,LEFT414,LEFT175,LEFT300
+1743,969,2012-05-07,Others,100847,0,14,10000110,20.06,27,TEST594,TRUE,871.38,916,LEFT239,LEFT935,LEFT332,LEFT773
+1744,3723,2012-05-07,FP-GTC,63864,3,12,10000792,-65.07,795,TEST790,true,862.38,403,LEFT885,LEFT159,LEFT507,LEFT962
+1745,1108,2012-05-07,Others,152801,0,5,10000850,617.25,218,TEST688,true,472.96,5,LEFT972,LEFT948,LEFT482,LEFT760
+1746,3329,2012-05-07,FP-non GTC,159184,0,-99,10000846,595.54,832,TEST31,true,348.32,555,LEFT946,LEFT759,LEFT10,LEFT598
+1747,1000,2012-05-07,Auction,26249,0,16,10000908,905.64,566,TEST509,False,77.33,999,LEFT627,LEFT432,LEFT416,LEFT987
+1748,2579,2012-05-07,FP-non GTC,40059,3,13,10000770,820.63,215,TEST87,False,309.61,541,LEFT835,LEFT665,LEFT662,LEFT550
+1749,1284,2012-05-07,FP-GTC,106340,15,15,10000529,38.76,882,TEST902,TRUE,369.21,88,LEFT769,LEFT420,LEFT61,LEFT37
+1750,1481,2012-05-07,ABIN,62179,0,16,10000616,160.41,928,TEST681,false,603.54,422,LEFT923,LEFT212,LEFT968,LEFT126
+1751,814,2012-05-07,Auction,164,0,12,10000249,801.18,404,TEST942,FALSE,844.47,405,LEFT403,LEFT600,LEFT184,LEFT991
+1752,1898,2012-05-07,FP-non GTC,113593,15,5,10000299,234.63,621,TEST931,TRUE,158.61,491,LEFT791,LEFT891,LEFT317,LEFT283
+1753,2584,2012-05-07,FP-GTC,63861,3,16,10000988,796.41,794,TEST872,true,77.23,512,LEFT513,LEFT651,LEFT245,LEFT434
+1754,3868,2012-05-07,Others,31519,3,-99,10000537,709.89,4,TEST849,false,78.92,926,LEFT665,LEFT420,LEFT970,LEFT589
+1755,1861,2012-05-07,FP-non GTC,11848,0,12,10000070,982.32,134,TEST206,True,469.13,224,LEFT914,LEFT262,LEFT683,LEFT488
+1756,4645,2012-05-07,FP-non GTC,88750,0,-99,10000195,919.38,298,TEST441,FALSE,993.01,474,LEFT544,LEFT173,LEFT960,LEFT129
+1757,3026,2012-05-08,ABIN,23446,23,13,10000394,-49.44,279,TEST37,FALSE,495.75,223,LEFT60,LEFT292,LEFT903,LEFT965
+1758,2191,2012-05-08,Auction,20886,0,5,10000547,242.04,471,TEST701,FALSE,801.96,319,LEFT387,LEFT136,LEFT437,LEFT386
+1759,1585,2012-05-08,FP-GTC,43972,100,-99,10000651,728.14,873,TEST677,False,61.32,793,LEFT119,LEFT703,LEFT72,LEFT222
+1760,3006,2012-05-08,FP-non GTC,118687,3,16,10000560,520.11,45,TEST311,false,680.02,771,LEFT105,LEFT985,LEFT99,LEFT706
+1761,2675,2012-05-08,Others,61323,0,11,10000274,46.68,665,TEST815,false,883.73,235,LEFT966,LEFT60,LEFT336,LEFT800
+1762,168,2012-05-08,Auction,75665,0,13,10000022,30.56,734,TEST643,False,949.61,992,LEFT467,LEFT226,LEFT855,LEFT471
+1763,3265,2012-05-08,FP-GTC,0,0,13,10000373,-15.29,628,TEST761,true,599.28,697,LEFT755,LEFT459,LEFT687,LEFT616
+1764,4812,2012-05-08,ABIN,64076,0,14,10000480,-41.16,37,TEST938,false,708.25,465,LEFT459,LEFT383,LEFT321,LEFT759
+1765,3632,2012-05-08,Auction,32876,0,13,10000850,969.24,598,TEST492,True,316.19,192,LEFT735,LEFT475,LEFT481,LEFT913
+1766,2991,2012-05-08,ABIN,20886,0,15,10000207,839.56,582,TEST0,FALSE,542.12,599,LEFT419,LEFT58,LEFT147,LEFT287
+1767,2991,2012-05-08,Auction,20865,0,14,10000709,-40.14,152,TEST213,FALSE,439.85,214,LEFT159,LEFT317,LEFT880,LEFT994
+1768,3166,2012-05-08,FP-non GTC,1357,0,14,10000549,616.47,312,TEST679,FALSE,479.71,358,LEFT847,LEFT929,LEFT71,LEFT620
+1769,1350,2012-05-08,ABIN,150047,3,16,10000293,768.17,386,TEST706,false,930.17,609,LEFT400,LEFT820,LEFT937,LEFT345
+1770,172,2012-05-08,Auction,140746,100,12,10000849,901.01,333,TEST25,true,715.93,415,LEFT885,LEFT526,LEFT611,LEFT246
+1771,534,2012-05-09,FP-non GTC,106246,0,12,10000373,465.31,896,TEST177,true,494.72,294,LEFT739,LEFT33,LEFT668,LEFT771
+1772,3412,2012-05-09,FP-GTC,139973,3,12,10000213,590.39,556,TEST710,false,556.19,507,LEFT326,LEFT866,LEFT855,LEFT4
+1773,3998,2012-05-09,Auction,16145,3,11,10000270,807.14,977,TEST350,FALSE,798.87,883,LEFT512,LEFT540,LEFT772,LEFT481
+1774,1635,2012-05-09,ABIN,63864,3,15,10000946,65.51,681,TEST51,false,655.87,725,LEFT54,LEFT629,LEFT113,LEFT685
+1775,1855,2012-05-09,Auction,31387,3,-99,10000878,9.47,111,TEST123,TRUE,167.61,386,LEFT841,LEFT325,LEFT952,LEFT444
+1776,2478,2012-05-09,Others,9426,3,-99,10000763,920.9,334,TEST366,False,577.2,526,LEFT343,LEFT559,LEFT493,LEFT154
+1777,268,2012-05-09,Auction,103178,15,5,10000385,912.9,124,TEST105,False,876.96,198,LEFT94,LEFT519,LEFT393,LEFT957
+1778,746,2012-05-09,FP-non GTC,4943,0,13,10000804,742.31,712,TEST21,true,484.72,161,LEFT951,LEFT192,LEFT10,LEFT936
+1779,0,2012-05-09,Others,75665,0,16,10000758,602.25,352,TEST122,TRUE,269.94,530,LEFT72,LEFT658,LEFT63,LEFT148
+1780,1158,2012-05-09,FP-GTC,80053,0,5,10000950,987.2,358,TEST435,true,485.42,638,LEFT508,LEFT682,LEFT410,LEFT446
+1781,2338,2012-05-09,Auction,20213,0,12,10000369,-75.3,250,TEST919,FALSE,886.96,409,LEFT81,LEFT445,LEFT666,LEFT764
+1782,2395,2012-05-09,Others,223,0,16,10000463,740.48,638,TEST595,TRUE,742.12,983,LEFT816,LEFT525,LEFT927,LEFT566
+1783,1570,2012-05-09,FP-non GTC,23446,23,13,10000845,733.12,473,TEST75,False,663.69,577,LEFT669,LEFT700,LEFT423,LEFT17
+1784,2560,2012-05-09,Others,32876,0,14,10000667,402.09,115,TEST12,True,564.88,442,LEFT889,LEFT7,LEFT170,LEFT25
+1785,388,2012-05-09,Others,33038,15,12,10000884,171.64,150,TEST221,False,192.72,201,LEFT724,LEFT820,LEFT180,LEFT584
+1786,2676,2012-05-09,FP-GTC,152801,0,11,10000920,441.95,645,TEST462,False,813.52,772,LEFT992,LEFT274,LEFT738,LEFT708
+1787,2421,2012-05-09,FP-GTC,155226,0,15,10000158,599.71,817,TEST226,False,137.69,717,LEFT115,LEFT428,LEFT788,LEFT330
+1788,2338,2012-05-09,FP-non GTC,156356,0,-99,10000825,383.49,272,TEST993,True,648.76,327,LEFT945,LEFT862,LEFT620,LEFT485
+1789,4976,2012-05-09,FP-non GTC,20485,0,14,10000562,761.74,990,TEST694,True,484.21,709,LEFT181,LEFT903,LEFT919,LEFT880
+1790,2436,2012-05-10,ABIN,43479,0,12,10000472,846.31,20,TEST446,False,44.79,294,LEFT429,LEFT938,LEFT545,LEFT823
+1791,4834,2012-05-10,ABIN,759,0,12,10000634,150.12,912,TEST943,true,960.63,405,LEFT771,LEFT39,LEFT96,LEFT440
+1792,3086,2012-05-10,Others,164,0,-99,10000697,-75.74,362,TEST514,false,218.64,672,LEFT919,LEFT340,LEFT878,LEFT763
+1793,4804,2012-05-10,Others,216,0,13,10000196,146.07,532,TEST963,false,756.82,961,LEFT836,LEFT708,LEFT39,LEFT253
+1794,1296,2012-05-10,ABIN,67698,2,14,10000660,675.06,606,TEST897,False,982.81,141,LEFT388,LEFT191,LEFT554,LEFT116
+1795,740,2012-05-10,ABIN,103178,15,12,10000783,840.06,446,TEST730,false,754.01,751,LEFT279,LEFT383,LEFT116,LEFT258
+1796,3076,2012-05-10,Others,64076,0,5,10000648,188.67,605,TEST363,FALSE,871.97,960,LEFT551,LEFT821,LEFT986,LEFT914
+1797,3987,2012-05-11,Auction,63864,3,14,10000698,647.75,485,TEST189,false,590.79,53,LEFT577,LEFT140,LEFT40,LEFT218
+1798,3268,2012-05-11,FP-non GTC,140746,100,5,10000956,-30.77,53,TEST14,false,199.73,302,LEFT166,LEFT693,LEFT44,LEFT557
+1799,4916,2012-05-11,FP-GTC,103178,15,13,10000632,-88.63,595,TEST252,False,376.46,637,LEFT856,LEFT71,LEFT776,LEFT431
+1800,1588,2012-05-11,FP-non GTC,152801,0,11,10000379,275.49,810,TEST572,true,7.26,643,LEFT695,LEFT658,LEFT984,LEFT665
+1801,4429,2012-05-11,ABIN,2023,0,5,10000005,355.54,462,TEST152,true,944.04,346,LEFT334,LEFT827,LEFT529,LEFT4
+1802,933,2012-05-11,FP-GTC,50508,0,13,10000337,103.2,555,TEST498,False,617.94,685,LEFT824,LEFT311,LEFT397,LEFT643
+1803,1760,2012-05-11,Others,20485,0,5,10000719,119.55,350,TEST684,False,57.54,83,LEFT359,LEFT668,LEFT94,LEFT773
+1804,1554,2012-05-11,Auction,82494,15,13,10000022,10.4,71,TEST620,True,87.93,42,LEFT125,LEFT154,LEFT233,LEFT953
+1805,1282,2012-05-11,FP-non GTC,2635,0,5,10000931,-9.81,383,TEST734,false,17.88,400,LEFT331,LEFT639,LEFT559,LEFT441
+1806,578,2012-05-11,FP-GTC,45333,0,13,10000520,-44.55,597,TEST460,True,661.74,850,LEFT621,LEFT848,LEFT829,LEFT323
+1807,1000,2012-05-11,Others,63861,3,5,10000350,2.2,481,TEST10,True,532.27,104,LEFT569,LEFT807,LEFT285,LEFT961
+1808,2418,2012-05-11,ABIN,175750,3,5,10000073,-98.21,651,TEST837,TRUE,918.78,693,LEFT670,LEFT465,LEFT422,LEFT626
+1809,4107,2012-05-11,ABIN,48904,0,16,10000048,596.95,904,TEST772,False,553.47,39,LEFT361,LEFT549,LEFT10,LEFT285
+1810,3683,2012-05-11,Auction,223,0,14,10000014,387.93,340,TEST580,FALSE,664.42,621,LEFT538,LEFT23,LEFT182,LEFT198
+1811,2692,2012-05-12,Auction,145970,0,12,10000610,448.88,81,TEST587,FALSE,426.15,247,LEFT691,LEFT775,LEFT913,LEFT96
+1812,1163,2012-05-12,Others,30059,3,13,10000415,439.41,564,TEST890,False,589.41,195,LEFT463,LEFT82,LEFT259,LEFT185
+1813,3894,2012-05-12,ABIN,1357,0,5,10000457,157.27,335,TEST5,false,253.82,128,LEFT462,LEFT767,LEFT332,LEFT511
+1814,3538,2012-05-12,FP-non GTC,759,0,13,10000055,305.12,354,TEST621,TRUE,776.47,268,LEFT213,LEFT632,LEFT566,LEFT104
+1815,1541,2012-05-12,Auction,11848,0,5,10000536,872.1,372,TEST858,false,221.28,113,LEFT21,LEFT788,LEFT136,LEFT962
+1816,2784,2012-05-12,FP-non GTC,26249,0,13,10000596,499.64,999,TEST565,False,640.82,550,LEFT260,LEFT106,LEFT276,LEFT218
+1817,1612,2012-05-12,Others,16145,0,12,10000620,-70.88,188,TEST201,TRUE,442.72,446,LEFT983,LEFT489,LEFT845,LEFT298
+1818,822,2012-05-12,Others,165888,0,5,10000424,826.71,782,TEST356,False,251.61,475,LEFT123,LEFT331,LEFT755,LEFT949
+1819,2487,2012-05-12,ABIN,15687,0,-99,10000186,154.89,483,TEST984,false,201.75,408,LEFT195,LEFT174,LEFT224,LEFT926
+1820,3745,2012-05-12,Auction,139255,15,5,10000930,445.79,523,TEST902,TRUE,146.56,209,LEFT499,LEFT755,LEFT986,LEFT64
+1821,4584,2012-05-12,ABIN,57990,3,16,10000476,579.97,140,TEST338,FALSE,916.8,799,LEFT492,LEFT515,LEFT789,LEFT671
+1822,2559,2012-05-12,FP-non GTC,15687,0,14,10000412,70.37,563,TEST400,false,728.49,818,LEFT13,LEFT748,LEFT523,LEFT347
+1823,1983,2012-05-12,ABIN,158666,15,12,10000602,666.04,407,TEST959,False,526.88,986,LEFT470,LEFT196,LEFT163,LEFT416
+1824,4752,2012-05-12,Others,80135,0,11,10000376,285.64,531,TEST830,FALSE,54.09,875,LEFT924,LEFT697,LEFT665,LEFT382
+1825,4262,2012-05-12,FP-non GTC,25147,0,12,10000105,260.47,569,TEST459,false,138.7,145,LEFT676,LEFT777,LEFT113,LEFT864
+1826,2500,2012-05-12,FP-GTC,139973,3,5,10000262,-99.01,939,TEST185,true,161.18,290,LEFT230,LEFT870,LEFT868,LEFT840
+1827,4391,2012-05-12,ABIN,15868,0,13,10000655,901.03,944,TEST705,False,119.82,48,LEFT306,LEFT288,LEFT404,LEFT360
+1828,1920,2012-05-12,Others,26249,0,-99,10000016,901.52,342,TEST266,True,8.28,733,LEFT191,LEFT589,LEFT449,LEFT929
+1829,4917,2012-05-12,ABIN,10866,0,15,10000356,351.22,339,TEST798,True,178.89,531,LEFT66,LEFT614,LEFT6,LEFT584
+1830,2199,2012-05-12,Others,26262,0,11,10000285,360.6,299,TEST278,true,37.13,441,LEFT508,LEFT508,LEFT478,LEFT225
+1831,1059,2012-05-13,FP-GTC,48904,0,15,10000165,-11.68,184,TEST839,True,106.68,130,LEFT368,LEFT87,LEFT820,LEFT52
+1832,1336,2012-05-13,Auction,26249,0,12,10000467,406.31,149,TEST514,FALSE,506.22,55,LEFT370,LEFT331,LEFT527,LEFT556
+1833,4626,2012-05-13,Others,166013,15,-99,10000576,351.75,263,TEST720,False,51.36,785,LEFT271,LEFT320,LEFT356,LEFT502
+1834,274,2012-05-13,Others,45333,0,12,10000469,530.14,884,TEST814,false,411.71,38,LEFT376,LEFT510,LEFT835,LEFT843
+1835,1431,2012-05-13,FP-non GTC,37831,0,11,10000799,906.43,917,TEST401,True,357.86,586,LEFT780,LEFT743,LEFT157,LEFT469
+1836,1220,2012-05-13,ABIN,36250,0,16,10000076,571.47,832,TEST704,FALSE,955.38,417,LEFT54,LEFT282,LEFT792,LEFT431
+1837,379,2012-05-13,Others,34273,100,15,10000235,410.02,741,TEST986,false,876.99,251,LEFT415,LEFT908,LEFT945,LEFT879
+1838,314,2012-05-13,ABIN,175750,3,12,10000231,543.75,630,TEST784,TRUE,114.51,62,LEFT259,LEFT636,LEFT336,LEFT826
+1839,879,2012-05-13,Others,20886,0,12,10000647,176.24,438,TEST330,TRUE,665.53,641,LEFT633,LEFT33,LEFT184,LEFT23
+1840,4108,2012-05-13,ABIN,36250,0,15,10000534,209.96,309,TEST790,true,611.34,117,LEFT965,LEFT671,LEFT146,LEFT933
+1841,557,2012-05-13,FP-GTC,33977,15,16,10000180,660.4,240,TEST471,False,840.98,843,LEFT120,LEFT226,LEFT615,LEFT43
+1842,361,2012-05-13,FP-non GTC,62179,0,5,10000543,988.51,984,TEST558,False,109.08,693,LEFT15,LEFT530,LEFT252,LEFT396
+1843,1890,2012-05-13,Others,166013,15,11,10000510,476.83,493,TEST836,True,190.4,961,LEFT615,LEFT485,LEFT473,LEFT705
+1844,734,2012-05-13,ABIN,80053,0,11,10000042,895.37,918,TEST265,False,9.36,450,LEFT506,LEFT422,LEFT438,LEFT105
+1845,1099,2012-05-13,FP-GTC,223,0,16,10000134,-36.08,367,TEST677,false,155.93,521,LEFT444,LEFT203,LEFT495,LEFT184
+1846,4691,2012-05-13,Others,63864,3,12,10000406,226.8,152,TEST540,False,515.91,424,LEFT496,LEFT544,LEFT161,LEFT25
+1847,3188,2012-05-13,Others,99985,0,13,10000528,834.29,507,TEST783,False,403.16,441,LEFT47,LEFT557,LEFT200,LEFT525
+1848,759,2012-05-13,Auction,158798,0,15,10000592,-92.7,334,TEST74,True,150.31,842,LEFT52,LEFT287,LEFT165,LEFT869
+1849,1372,2012-05-13,Others,106340,15,11,10000314,642.98,520,TEST130,FALSE,77.46,324,LEFT504,LEFT183,LEFT932,LEFT939
+1850,4799,2012-05-13,Others,15687,0,12,10000124,809.67,283,TEST31,False,509.42,862,LEFT573,LEFT197,LEFT355,LEFT514
+1851,4455,2012-05-13,Auction,158666,15,11,10000334,880.5,545,TEST297,False,112.22,814,LEFT997,LEFT442,LEFT243,LEFT634
+1852,1983,2012-05-13,Auction,26262,0,5,10000378,92.25,480,TEST611,FALSE,451.57,221,LEFT520,LEFT41,LEFT734,LEFT846
+1853,94,2012-05-13,FP-GTC,94847,0,-99,10000644,736.52,964,TEST557,True,705.2,55,LEFT180,LEFT907,LEFT133,LEFT926
+1854,2189,2012-05-14,Others,155226,0,14,10000979,737.14,530,TEST256,False,601.81,111,LEFT991,LEFT600,LEFT828,LEFT98
+1855,3117,2012-05-14,Auction,156614,0,13,10000807,720.51,978,TEST995,true,906.08,860,LEFT108,LEFT442,LEFT582,LEFT212
+1856,235,2012-05-14,Others,32996,15,5,10000064,487.24,491,TEST71,TRUE,150.1,319,LEFT107,LEFT397,LEFT138,LEFT71
+1857,1181,2012-05-14,FP-non GTC,156614,0,13,10000036,917.38,758,TEST893,true,322.64,510,LEFT867,LEFT495,LEFT818,LEFT419
+1858,4854,2012-05-14,Others,25147,0,14,10000219,67.94,234,TEST223,false,683.58,597,LEFT389,LEFT730,LEFT242,LEFT797
+1859,4637,2012-05-14,Auction,43398,0,11,10000160,208.06,646,TEST984,false,890.13,881,LEFT832,LEFT948,LEFT805,LEFT69
+1860,4635,2012-05-14,ABIN,1161,3,16,10000083,392.81,638,TEST601,TRUE,347.22,749,LEFT401,LEFT202,LEFT740,LEFT736
+1861,1162,2012-05-14,FP-non GTC,82494,15,-99,10000213,185.04,693,TEST594,FALSE,218.4,284,LEFT53,LEFT310,LEFT760,LEFT782
+1862,2726,2012-05-14,FP-non GTC,25147,0,11,10000285,854.97,518,TEST125,True,602.38,319,LEFT672,LEFT467,LEFT318,LEFT836
+1863,2271,2012-05-15,ABIN,279,15,15,10000272,81.46,25,TEST3,FALSE,619.38,634,LEFT813,LEFT394,LEFT992,LEFT189
+1864,563,2012-05-15,FP-non GTC,223,0,11,10000242,-6.93,580,TEST430,False,941.12,701,LEFT621,LEFT752,LEFT856,LEFT354
+1865,4226,2012-05-15,Others,45333,0,-99,10000826,649.41,592,TEST886,false,47.58,499,LEFT104,LEFT950,LEFT135,LEFT664
+1866,4430,2012-05-15,Auction,80053,0,14,10000839,852.72,19,TEST970,False,576.74,493,LEFT858,LEFT407,LEFT234,LEFT666
+1867,2934,2012-05-15,Auction,9426,3,15,10000617,874.0,171,TEST564,TRUE,414.5,221,LEFT101,LEFT500,LEFT917,LEFT389
+1868,2567,2012-05-15,Auction,31387,3,15,10000106,238.02,692,TEST855,TRUE,741.52,531,LEFT109,LEFT659,LEFT727,LEFT42
+1869,4028,2012-05-15,FP-non GTC,106340,15,-99,10000835,983.81,977,TEST880,TRUE,891.26,806,LEFT54,LEFT408,LEFT864,LEFT656
+1870,1422,2012-05-15,ABIN,16145,3,14,10000019,-46.77,704,TEST372,FALSE,42.52,853,LEFT142,LEFT117,LEFT430,LEFT119
+1871,2273,2012-05-15,FP-GTC,24541,0,12,10000552,609.35,960,TEST166,True,891.22,466,LEFT206,LEFT326,LEFT756,LEFT642
+1872,4728,2012-05-15,Auction,1120,3,13,10000454,32.71,80,TEST487,TRUE,666.73,280,LEFT872,LEFT334,LEFT668,LEFT360
+1873,2062,2012-05-15,Auction,1357,0,14,10000079,676.81,618,TEST773,false,655.6,46,LEFT111,LEFT401,LEFT916,LEFT44
+1874,4032,2012-05-15,FP-non GTC,53064,0,11,10000284,295.61,312,TEST321,false,823.59,244,LEFT60,LEFT300,LEFT446,LEFT582
+1875,45,2012-05-15,FP-GTC,51582,0,-99,10000182,960.22,543,TEST264,TRUE,511.18,310,LEFT753,LEFT927,LEFT947,LEFT908
+1876,859,2012-05-15,FP-non GTC,1161,3,12,10000499,496.36,416,TEST651,true,94.95,276,LEFT679,LEFT913,LEFT87,LEFT364
+1877,2421,2012-05-15,FP-non GTC,11554,0,12,10000308,289.95,332,TEST283,TRUE,828.34,216,LEFT638,LEFT879,LEFT648,LEFT685
+1878,2249,2012-05-15,FP-GTC,3838,0,11,10000542,56.01,341,TEST516,false,461.54,680,LEFT796,LEFT306,LEFT124,LEFT540
+1879,4227,2012-05-15,ABIN,66767,15,13,10000903,6.93,568,TEST990,false,189.02,461,LEFT439,LEFT274,LEFT58,LEFT614
+1880,2881,2012-05-15,Others,44079,0,-99,10000989,-23.29,195,TEST327,true,970.46,748,LEFT782,LEFT561,LEFT571,LEFT476
+1881,1703,2012-05-16,FP-non GTC,20865,0,14,10000945,560.02,79,TEST11,true,544.05,79,LEFT409,LEFT871,LEFT413,LEFT992
+1882,1336,2012-05-16,ABIN,20485,0,13,10000848,726.93,242,TEST307,true,455.45,490,LEFT596,LEFT683,LEFT557,LEFT904
+1883,4713,2012-05-16,FP-GTC,24541,0,12,10000319,-47.04,23,TEST531,false,795.0,987,LEFT366,LEFT234,LEFT185,LEFT288
+1884,377,2012-05-16,FP-GTC,57990,0,5,10000388,694.88,185,TEST861,False,472.46,783,LEFT902,LEFT939,LEFT213,LEFT27
+1885,408,2012-05-16,ABIN,20485,101,16,10000637,509.37,860,TEST386,false,456.14,195,LEFT291,LEFT659,LEFT483,LEFT217
+1886,648,2012-05-16,Auction,1120,3,11,10000969,764.57,965,TEST905,FALSE,651.43,625,LEFT695,LEFT546,LEFT227,LEFT426
+1887,2016,2012-05-16,FP-non GTC,57990,3,14,10000620,-36.15,901,TEST229,False,697.56,864,LEFT457,LEFT111,LEFT749,LEFT111
+1888,384,2012-05-16,FP-GTC,80135,0,12,10000949,845.74,991,TEST608,False,727.88,146,LEFT816,LEFT605,LEFT67,LEFT953
+1889,4596,2012-05-16,Others,106340,15,5,10000641,17.31,590,TEST100,TRUE,687.69,61,LEFT692,LEFT586,LEFT574,LEFT611
+1890,2243,2012-05-16,ABIN,48904,0,15,10000492,194.4,391,TEST639,False,671.02,33,LEFT220,LEFT303,LEFT807,LEFT985
+1891,2914,2012-05-16,Others,82494,15,13,10000775,184.46,949,TEST605,True,791.86,230,LEFT590,LEFT341,LEFT241,LEFT623
+1892,4187,2012-05-16,Others,0,0,11,10000502,202.87,407,TEST439,False,260.97,380,LEFT95,LEFT792,LEFT215,LEFT643
+1893,4263,2012-05-16,Others,31387,3,-99,10000976,613.2,422,TEST254,FALSE,963.13,5,LEFT688,LEFT735,LEFT337,LEFT234
+1894,4956,2012-05-16,Others,140746,100,11,10000082,750.66,657,TEST302,FALSE,251.93,995,LEFT624,LEFT245,LEFT304,LEFT396
+1895,2149,2012-05-16,Auction,156614,0,14,10000156,552.77,204,TEST474,false,725.77,992,LEFT209,LEFT755,LEFT417,LEFT847
+1896,676,2012-05-17,Others,64076,0,11,10000074,716.68,428,TEST533,TRUE,461.4,435,LEFT162,LEFT389,LEFT471,LEFT535
+1897,3015,2012-05-17,FP-non GTC,95672,3,-99,10000383,-94.26,350,TEST7,false,631.74,291,LEFT492,LEFT971,LEFT334,LEFT145
+1898,2750,2012-05-17,FP-non GTC,106246,0,11,10000651,367.6,158,TEST448,False,345.71,342,LEFT649,LEFT71,LEFT933,LEFT372
+1899,3249,2012-05-17,Others,0,0,13,10000169,250.81,521,TEST705,True,640.25,912,LEFT678,LEFT369,LEFT946,LEFT218
+1900,4464,2012-05-17,FP-non GTC,32876,0,5,10000333,438.52,623,TEST108,FALSE,336.35,109,LEFT526,LEFT659,LEFT11,LEFT535
+1901,914,2012-05-17,Auction,23446,23,5,10000526,169.47,77,TEST225,false,306.68,191,LEFT668,LEFT341,LEFT15,LEFT774
+1902,1515,2012-05-17,Others,66767,15,12,10000848,387.85,135,TEST260,FALSE,249.98,379,LEFT65,LEFT94,LEFT738,LEFT29
+1903,946,2012-05-17,FP-GTC,113593,15,11,10000196,898.25,397,TEST403,false,886.36,717,LEFT68,LEFT330,LEFT734,LEFT238
+1904,2665,2012-05-18,Auction,3838,0,-99,10000085,-21.03,665,TEST82,FALSE,440.19,275,LEFT788,LEFT338,LEFT226,LEFT935
+1905,2962,2012-05-18,FP-GTC,23446,23,11,10000190,898.65,505,TEST394,FALSE,754.47,349,LEFT58,LEFT152,LEFT135,LEFT227
+1906,3500,2012-05-18,FP-GTC,121153,0,11,10000904,801.8,55,TEST96,False,633.4,918,LEFT371,LEFT409,LEFT562,LEFT768
+1907,937,2012-05-18,FP-non GTC,164261,0,16,10000052,375.28,148,TEST587,FALSE,663.77,216,LEFT925,LEFT401,LEFT787,LEFT581
+1908,919,2012-05-18,Others,158798,0,12,10000749,686.42,70,TEST820,true,63.36,480,LEFT812,LEFT168,LEFT0,LEFT396
+1909,4113,2012-05-18,FP-GTC,75708,3,11,10000525,915.06,163,TEST954,true,412.11,192,LEFT298,LEFT6,LEFT922,LEFT417
+1910,120,2012-05-18,FP-non GTC,48027,0,12,10000876,274.01,99,TEST408,False,569.89,584,LEFT181,LEFT498,LEFT362,LEFT910
+1911,2381,2012-05-18,Others,963,0,13,10000561,698.97,785,TEST618,FALSE,542.0,9,LEFT705,LEFT520,LEFT59,LEFT169
+1912,4313,2012-05-18,Auction,43972,100,14,10000775,860.67,866,TEST928,false,887.3,567,LEFT669,LEFT166,LEFT680,LEFT532
+1913,587,2012-05-18,ABIN,60606,3,16,10000253,469.41,812,TEST64,False,812.55,42,LEFT289,LEFT272,LEFT195,LEFT245
+1914,568,2012-05-18,Auction,80135,0,13,10000305,484.37,653,TEST460,FALSE,700.2,961,LEFT705,LEFT729,LEFT974,LEFT259
+1915,1002,2012-05-18,FP-GTC,759,0,16,10000648,582.59,864,TEST953,True,35.59,827,LEFT354,LEFT940,LEFT822,LEFT5
+1916,2145,2012-05-19,ABIN,3838,0,5,10000932,359.21,971,TEST463,false,460.18,74,LEFT167,LEFT870,LEFT178,LEFT444
+1917,1127,2012-05-19,FP-GTC,15868,0,12,10000132,144.01,22,TEST653,FALSE,326.44,69,LEFT787,LEFT71,LEFT652,LEFT404
+1918,4878,2012-05-19,FP-GTC,1349,0,14,10000226,297.24,606,TEST440,True,978.3,771,LEFT554,LEFT839,LEFT906,LEFT660
+1919,3204,2012-05-19,ABIN,41940,0,15,10000367,413.97,580,TEST211,False,871.63,264,LEFT818,LEFT300,LEFT51,LEFT46
+1920,102,2012-05-19,Auction,63889,0,13,10000499,601.5,338,TEST686,True,741.51,951,LEFT703,LEFT715,LEFT2,LEFT913
+1921,4729,2012-05-19,FP-non GTC,100847,0,-99,10000612,459.63,613,TEST453,FALSE,662.32,737,LEFT723,LEFT645,LEFT176,LEFT163
+1922,4134,2012-05-19,Auction,31673,0,13,10000832,234.15,701,TEST94,false,618.86,290,LEFT568,LEFT337,LEFT951,LEFT678
+1923,3050,2012-05-19,ABIN,175750,3,-99,10000695,790.36,337,TEST812,FALSE,91.48,218,LEFT760,LEFT296,LEFT150,LEFT552
+1924,4395,2012-05-19,FP-GTC,66767,15,16,10000613,-85.5,879,TEST741,FALSE,40.05,173,LEFT87,LEFT548,LEFT189,LEFT62
+1925,3911,2012-05-19,ABIN,20886,0,13,10000321,324.58,820,TEST125,TRUE,457.41,931,LEFT549,LEFT461,LEFT917,LEFT822
+1926,4909,2012-05-19,ABIN,2023,0,5,10000975,380.59,889,TEST686,True,332.16,664,LEFT383,LEFT319,LEFT408,LEFT477
+1927,3025,2012-05-19,FP-GTC,43972,100,14,10000431,415.94,732,TEST49,false,908.97,376,LEFT970,LEFT903,LEFT435,LEFT341
+1928,2396,2012-05-19,FP-GTC,64076,0,-99,10000577,195.68,488,TEST352,true,507.17,612,LEFT40,LEFT254,LEFT104,LEFT967
+1929,3014,2012-05-19,FP-non GTC,94847,0,15,10000723,74.49,539,TEST245,false,303.89,918,LEFT527,LEFT313,LEFT573,LEFT426
+1930,1118,2012-05-20,Auction,95173,0,15,10000261,673.64,534,TEST509,TRUE,837.97,29,LEFT114,LEFT176,LEFT767,LEFT757
+1931,3980,2012-05-20,Auction,13836,0,5,10000764,82.62,46,TEST605,false,263.55,857,LEFT460,LEFT344,LEFT624,LEFT640
+1932,4905,2012-05-20,Auction,31519,0,13,10000585,735.93,525,TEST604,true,984.63,426,LEFT396,LEFT581,LEFT415,LEFT360
+1933,3056,2012-05-20,FP-non GTC,57990,3,13,10000121,9.64,590,TEST4,false,612.04,472,LEFT583,LEFT113,LEFT219,LEFT263
+1934,2380,2012-05-20,Auction,35570,100,11,10000578,-60.56,63,TEST307,False,851.29,995,LEFT648,LEFT820,LEFT81,LEFT585
+1935,453,2012-05-20,ABIN,10866,0,5,10000190,-20.6,63,TEST718,true,886.47,144,LEFT543,LEFT354,LEFT721,LEFT776
+1936,1243,2012-05-20,ABIN,223,0,11,10000111,438.46,811,TEST948,True,608.2,730,LEFT540,LEFT615,LEFT830,LEFT166
+1937,2876,2012-05-20,FP-GTC,140746,100,14,10000702,624.02,754,TEST994,TRUE,635.94,867,LEFT62,LEFT665,LEFT154,LEFT813
+1938,2129,2012-05-20,FP-non GTC,3838,0,13,10000239,294.87,89,TEST614,false,360.37,975,LEFT225,LEFT110,LEFT443,LEFT294
+1939,315,2012-05-20,FP-non GTC,60606,3,16,10000038,130.23,623,TEST786,False,308.95,675,LEFT661,LEFT975,LEFT813,LEFT8
+1940,3796,2012-05-20,FP-GTC,216,0,5,10000477,508.66,356,TEST273,False,257.85,695,LEFT67,LEFT22,LEFT23,LEFT783
+1941,3435,2012-05-20,ABIN,50677,0,15,10000136,221.56,392,TEST239,false,207.93,327,LEFT186,LEFT140,LEFT937,LEFT399
+1942,1364,2012-05-20,Others,121153,0,11,10000109,12.04,936,TEST988,false,923.44,268,LEFT799,LEFT75,LEFT160,LEFT346
+1943,2599,2012-05-20,FP-non GTC,1504,0,13,10000020,956.76,312,TEST233,false,747.67,410,LEFT257,LEFT891,LEFT958,LEFT75
+1944,2787,2012-05-20,FP-non GTC,50677,0,14,10000208,549.09,248,TEST656,TRUE,971.47,863,LEFT950,LEFT600,LEFT65,LEFT832
+1945,3306,2012-05-20,Others,533,0,14,10000490,137.12,868,TEST981,True,311.08,137,LEFT129,LEFT293,LEFT835,LEFT909
+1946,3409,2012-05-21,FP-non GTC,43972,100,-99,10000506,621.29,865,TEST414,TRUE,681.26,9,LEFT459,LEFT483,LEFT776,LEFT375
+1947,2357,2012-05-21,ABIN,87118,0,13,10000222,883.4,376,TEST688,true,488.29,473,LEFT435,LEFT587,LEFT358,LEFT716
+1948,1877,2012-05-21,FP-non GTC,88750,0,-99,10000800,88.65,442,TEST13,True,60.62,490,LEFT800,LEFT981,LEFT274,LEFT675
+1949,985,2012-05-21,FP-GTC,314,211,-99,10000124,947.08,479,TEST524,false,797.07,994,LEFT849,LEFT532,LEFT59,LEFT771
+1950,2611,2012-05-21,Auction,80287,0,13,10000266,354.23,194,TEST529,True,234.85,835,LEFT42,LEFT899,LEFT118,LEFT734
+1951,1980,2012-05-21,Auction,121153,0,13,10000922,356.5,267,TEST495,False,103.04,162,LEFT457,LEFT488,LEFT525,LEFT956
+1952,3399,2012-05-21,ABIN,314,0,13,10000511,778.75,464,TEST445,TRUE,187.04,490,LEFT421,LEFT180,LEFT729,LEFT835
+1953,2455,2012-05-21,Auction,158798,0,-99,10000561,624.62,552,TEST506,false,634.66,711,LEFT396,LEFT941,LEFT877,LEFT631
+1954,3853,2012-05-21,Auction,67703,3,5,10000664,867.11,57,TEST726,TRUE,535.13,309,LEFT564,LEFT949,LEFT230,LEFT305
+1955,745,2012-05-21,ABIN,314,211,13,10000572,49.64,389,TEST512,TRUE,496.84,450,LEFT777,LEFT226,LEFT558,LEFT693
+1956,375,2012-05-21,FP-non GTC,20886,0,13,10000147,444.12,96,TEST545,TRUE,450.19,700,LEFT171,LEFT793,LEFT650,LEFT30
+1957,1143,2012-05-21,FP-GTC,20886,0,5,10000486,417.39,513,TEST740,true,616.09,400,LEFT881,LEFT716,LEFT544,LEFT0
+1958,2622,2012-05-21,Others,31673,0,16,10000864,697.11,864,TEST400,TRUE,305.73,27,LEFT442,LEFT709,LEFT345,LEFT562
+1959,4519,2012-05-21,FP-GTC,279,15,15,10000691,92.67,892,TEST172,TRUE,213.71,894,LEFT931,LEFT225,LEFT473,LEFT219
+1960,1810,2012-05-21,FP-GTC,113593,15,16,10000058,98.2,484,TEST886,FALSE,998.68,348,LEFT889,LEFT127,LEFT687,LEFT597
+1961,99,2012-05-22,FP-GTC,130,0,13,10000050,985.34,197,TEST438,false,516.45,375,LEFT342,LEFT789,LEFT159,LEFT442
+1962,1994,2012-05-22,Others,759,0,15,10000762,874.55,154,TEST797,FALSE,638.07,519,LEFT441,LEFT424,LEFT510,LEFT257
+1963,195,2012-05-22,ABIN,80287,0,11,10000821,567.71,148,TEST876,FALSE,136.46,986,LEFT59,LEFT223,LEFT780,LEFT147
+1964,4000,2012-05-22,Auction,63861,3,13,10000473,631.78,794,TEST26,TRUE,337.33,655,LEFT469,LEFT78,LEFT135,LEFT659
+1965,1379,2012-05-22,FP-non GTC,66767,15,16,10000296,253.39,0,TEST603,True,663.43,646,LEFT705,LEFT704,LEFT991,LEFT838
+1966,2757,2012-05-22,ABIN,88750,0,11,10000621,412.75,429,TEST902,false,692.85,650,LEFT743,LEFT499,LEFT615,LEFT878
+1967,4919,2012-05-22,ABIN,15687,0,-99,10000747,-11.99,412,TEST961,false,142.44,245,LEFT659,LEFT810,LEFT882,LEFT987
+1968,452,2012-05-22,FP-non GTC,64076,0,16,10000113,894.8,195,TEST505,true,872.89,858,LEFT309,LEFT865,LEFT765,LEFT472
+1969,2914,2012-05-22,FP-non GTC,759,0,5,10000033,723.28,671,TEST842,FALSE,953.22,261,LEFT278,LEFT113,LEFT154,LEFT501
+1970,4202,2012-05-22,Others,10058,3,5,10000342,329.07,460,TEST825,False,951.44,724,LEFT633,LEFT557,LEFT237,LEFT947
+1971,957,2012-05-22,FP-non GTC,88750,0,13,10000576,684.75,69,TEST184,false,377.36,757,LEFT664,LEFT861,LEFT61,LEFT56
+1972,87,2012-05-22,FP-GTC,26262,0,12,10000422,-21.83,110,TEST165,True,118.9,736,LEFT553,LEFT504,LEFT952,LEFT873
+1973,574,2012-05-22,ABIN,16145,3,13,10000231,463.59,975,TEST941,TRUE,657.85,655,LEFT571,LEFT677,LEFT850,LEFT877
+1974,4978,2012-05-22,Others,20213,0,-99,10000155,374.63,967,TEST126,FALSE,910.46,375,LEFT30,LEFT706,LEFT65,LEFT909
+1975,981,2012-05-22,FP-non GTC,156614,0,-99,10000866,50.36,411,TEST661,False,703.76,290,LEFT419,LEFT606,LEFT192,LEFT599
+1976,988,2012-05-22,Others,35570,100,15,10000765,909.78,824,TEST260,True,752.28,856,LEFT723,LEFT725,LEFT490,LEFT541
+1977,2026,2012-05-22,ABIN,139973,0,14,10000181,358.66,201,TEST975,true,29.75,753,LEFT759,LEFT849,LEFT129,LEFT485
+1978,4176,2012-05-23,ABIN,73506,0,5,10000848,415.01,641,TEST390,true,721.19,846,LEFT44,LEFT334,LEFT57,LEFT991
+1979,4277,2012-05-23,Others,156614,0,5,10000971,-72.79,636,TEST379,TRUE,771.21,530,LEFT896,LEFT674,LEFT869,LEFT339
+1980,1959,2012-05-23,ABIN,113802,15,13,10000274,393.14,497,TEST995,True,162.65,165,LEFT925,LEFT564,LEFT840,LEFT542
+1981,3961,2012-05-23,ABIN,43972,100,14,10000106,68.47,98,TEST529,false,674.55,206,LEFT576,LEFT525,LEFT533,LEFT394
+1982,1554,2012-05-23,ABIN,166013,15,16,10000373,610.97,46,TEST143,FALSE,399.32,539,LEFT757,LEFT650,LEFT459,LEFT995
+1983,2501,2012-05-23,Others,43398,0,14,10000978,326.96,486,TEST518,False,606.49,377,LEFT651,LEFT197,LEFT366,LEFT389
+1984,1559,2012-05-23,Others,95672,3,5,10000507,924.54,958,TEST480,TRUE,407.14,766,LEFT582,LEFT91,LEFT421,LEFT818
+1985,2641,2012-05-23,Others,132939,0,-99,10000572,144.03,81,TEST960,TRUE,175.82,850,LEFT364,LEFT574,LEFT673,LEFT644
+1986,3610,2012-05-24,ABIN,759,0,12,10000058,596.92,663,TEST292,True,851.5,421,LEFT133,LEFT965,LEFT192,LEFT446
+1987,3260,2012-05-24,Auction,121153,0,15,10000930,653.54,405,TEST669,TRUE,84.36,714,LEFT190,LEFT782,LEFT823,LEFT154
+1988,2786,2012-05-24,ABIN,156356,0,-99,10000885,602.2,727,TEST574,false,639.58,854,LEFT0,LEFT996,LEFT819,LEFT510
+1989,4914,2012-05-24,Auction,23446,23,12,10000792,308.56,946,TEST911,True,660.28,753,LEFT392,LEFT649,LEFT327,LEFT411
+1990,2658,2012-05-24,Auction,10058,3,-99,10000424,-59.44,468,TEST873,True,159.83,64,LEFT339,LEFT74,LEFT824,LEFT55
+1991,122,2012-05-24,FP-GTC,2635,0,12,10000084,901.27,522,TEST679,TRUE,844.5,654,LEFT735,LEFT342,LEFT232,LEFT582
+1992,4544,2012-05-24,Auction,32876,0,13,10000457,473.42,773,TEST490,True,49.92,559,LEFT281,LEFT652,LEFT95,LEFT286
+1993,2050,2012-05-24,ABIN,139973,0,12,10000432,458.26,24,TEST13,false,385.99,506,LEFT300,LEFT162,LEFT10,LEFT435
+1994,4117,2012-05-24,Auction,51582,0,13,10000486,68.3,428,TEST429,true,584.9,919,LEFT42,LEFT242,LEFT38,LEFT516
+1995,1626,2012-05-24,FP-non GTC,2635,0,11,10000048,248.06,815,TEST929,FALSE,693.22,599,LEFT198,LEFT841,LEFT904,LEFT430
+1996,2951,2012-05-24,FP-GTC,26262,0,11,10000434,183.23,546,TEST10,false,960.16,255,LEFT27,LEFT489,LEFT656,LEFT731
+1997,3830,2012-05-24,FP-non GTC,94847,0,14,10000550,843.12,63,TEST979,True,141.98,13,LEFT823,LEFT60,LEFT631,LEFT910
+1998,866,2012-05-24,FP-non GTC,4943,0,15,10000572,402.9,76,TEST536,False,848.92,140,LEFT859,LEFT86,LEFT103,LEFT112
+1999,3347,2012-05-24,Others,16509,0,14,10000359,433.63,998,TEST97,FALSE,914.09,354,LEFT765,LEFT813,LEFT508,LEFT859
+2000,4285,2012-05-24,ABIN,150265,15,5,10000197,-62.87,236,TEST556,True,874.58,629,LEFT498,LEFT580,LEFT956,LEFT337
+2001,1934,2012-05-24,FP-non GTC,164,0,12,10000741,182.05,310,TEST868,TRUE,501.77,758,LEFT175,LEFT204,LEFT843,LEFT968
+2002,3420,2012-05-24,FP-GTC,13836,0,13,10000320,-71.0,522,TEST427,False,690.84,128,LEFT584,LEFT812,LEFT437,LEFT661
+2003,2101,2012-05-24,Others,43398,0,14,10000116,-49.97,338,TEST730,False,403.84,567,LEFT680,LEFT271,LEFT328,LEFT282
+2004,3101,2012-05-24,ABIN,11554,0,13,10000101,277.79,767,TEST364,False,996.32,900,LEFT218,LEFT400,LEFT790,LEFT228
+2005,1494,2012-05-24,FP-non GTC,63889,0,13,10000862,238.93,571,TEST289,false,886.43,478,LEFT344,LEFT934,LEFT327,LEFT118
+2006,2477,2012-05-25,FP-non GTC,156614,0,13,10000907,416.34,12,TEST351,TRUE,8.74,846,LEFT583,LEFT555,LEFT371,LEFT314
+2007,4947,2012-05-25,ABIN,60340,0,16,10000657,370.77,749,TEST276,TRUE,248.11,7,LEFT291,LEFT326,LEFT612,LEFT809
+2008,2992,2012-05-25,Others,65,0,16,10000275,975.65,198,TEST744,TRUE,866.85,974,LEFT667,LEFT711,LEFT408,LEFT239
+2009,2829,2012-05-25,Others,2023,0,13,10000328,393.48,913,TEST256,FALSE,377.81,437,LEFT782,LEFT705,LEFT633,LEFT896
+2010,4721,2012-05-25,FP-non GTC,132939,0,5,10000430,815.85,234,TEST366,true,.71,682,LEFT233,LEFT380,LEFT84,LEFT809
+2011,2144,2012-05-25,ABIN,1120,3,11,10000253,785.32,288,TEST687,FALSE,946.86,145,LEFT147,LEFT943,LEFT640,LEFT860
+2012,797,2012-05-25,FP-non GTC,156614,0,5,10000351,-58.51,910,TEST934,True,116.06,740,LEFT186,LEFT832,LEFT112,LEFT648
+2013,1372,2012-05-25,FP-non GTC,35570,100,14,10000489,905.42,229,TEST560,True,224.28,365,LEFT206,LEFT566,LEFT29,LEFT878
+2014,3014,2012-05-25,FP-non GTC,9426,3,13,10000806,638.46,429,TEST662,TRUE,365.89,392,LEFT190,LEFT879,LEFT132,LEFT752
+2015,3970,2012-05-25,Auction,139973,0,12,10000427,41.26,409,TEST932,true,119.72,928,LEFT516,LEFT983,LEFT786,LEFT981
+2016,1755,2012-05-25,ABIN,61323,0,14,10000109,423.9,999,TEST949,FALSE,155.34,513,LEFT285,LEFT886,LEFT987,LEFT771
+2017,3860,2012-05-25,Auction,31519,3,16,10000913,706.86,958,TEST740,True,514.82,526,LEFT870,LEFT411,LEFT752,LEFT166
+2018,3146,2012-05-26,ABIN,533,0,12,10000961,202.89,242,TEST852,False,242.5,822,LEFT655,LEFT47,LEFT842,LEFT913
+2019,1390,2012-05-26,Auction,63889,0,15,10000734,359.34,471,TEST48,False,179.0,29,LEFT906,LEFT535,LEFT716,LEFT714
+2020,1874,2012-05-26,Auction,156356,0,13,10000902,-66.75,424,TEST472,TRUE,177.78,687,LEFT818,LEFT248,LEFT787,LEFT321
+2021,2684,2012-05-26,ABIN,106340,15,11,10000830,717.37,283,TEST362,false,352.42,330,LEFT445,LEFT327,LEFT332,LEFT563
+2022,3037,2012-05-26,Others,2023,0,12,10000732,53.14,831,TEST77,True,112.27,747,LEFT280,LEFT171,LEFT296,LEFT112
+2023,2694,2012-05-26,Auction,165888,0,5,10000048,623.99,161,TEST822,false,581.74,772,LEFT636,LEFT265,LEFT75,LEFT793
+2024,330,2012-05-26,FP-GTC,67698,0,15,10000330,180.33,934,TEST719,FALSE,895.06,73,LEFT212,LEFT408,LEFT734,LEFT477
+2025,4030,2012-05-26,Others,1349,0,12,10000313,164.41,638,TEST142,False,731.1,956,LEFT613,LEFT214,LEFT0,LEFT9
+2026,181,2012-05-26,Others,963,0,12,10000364,101.66,593,TEST343,true,656.75,353,LEFT688,LEFT490,LEFT641,LEFT73
+2027,734,2012-05-26,Auction,94847,0,-99,10000802,137.05,252,TEST984,FALSE,652.09,806,LEFT250,LEFT641,LEFT601,LEFT86
+2028,1556,2012-05-26,Others,152801,0,14,10000231,978.74,121,TEST552,FALSE,552.75,351,LEFT604,LEFT691,LEFT677,LEFT452
+2029,605,2012-05-26,FP-non GTC,11848,0,5,10000607,738.2,966,TEST575,False,571.15,977,LEFT861,LEFT91,LEFT887,LEFT621
+2030,3512,2012-05-26,FP-GTC,75665,0,-99,10000757,-41.77,160,TEST766,True,899.84,645,LEFT438,LEFT306,LEFT750,LEFT276
+2031,1199,2012-05-26,ABIN,279,15,15,10000582,194.0,539,TEST402,False,952.22,978,LEFT791,LEFT119,LEFT380,LEFT453
+2032,148,2012-05-26,FP-GTC,106340,15,5,10000481,500.73,547,TEST491,true,795.81,72,LEFT792,LEFT60,LEFT453,LEFT934
+2033,3342,2012-05-26,Others,1349,0,12,10000604,454.1,890,TEST646,false,365.13,379,LEFT3,LEFT365,LEFT633,LEFT538
+2034,507,2012-05-27,FP-non GTC,60340,0,5,10000849,853.47,271,TEST186,False,23.1,360,LEFT706,LEFT61,LEFT269,LEFT830
+2035,3821,2012-05-27,FP-GTC,2023,0,11,10000448,307.51,57,TEST763,false,140.47,848,LEFT521,LEFT393,LEFT680,LEFT730
+2036,1192,2012-05-27,FP-GTC,73506,0,14,10000270,765.29,237,TEST851,False,903.93,842,LEFT522,LEFT157,LEFT757,LEFT893
+2037,3255,2012-05-27,FP-non GTC,45238,101,5,10000986,564.9,601,TEST959,true,18.01,294,LEFT95,LEFT762,LEFT190,LEFT766
+2038,3681,2012-05-27,ABIN,103324,15,16,10000128,127.64,627,TEST102,true,716.71,717,LEFT261,LEFT97,LEFT63,LEFT773
+2039,3228,2012-05-27,Others,121153,0,15,10000723,793.76,506,TEST336,TRUE,856.41,684,LEFT421,LEFT406,LEFT639,LEFT109
+2040,234,2012-05-27,Others,23446,23,12,10000732,54.69,967,TEST87,FALSE,679.59,405,LEFT744,LEFT587,LEFT668,LEFT609
+2041,2736,2012-05-27,FP-GTC,148324,15,15,10000504,845.7,767,TEST846,true,767.46,369,LEFT906,LEFT753,LEFT302,LEFT851
+2042,2448,2012-05-27,Auction,26249,0,14,10000977,897.16,960,TEST243,TRUE,340.65,355,LEFT165,LEFT707,LEFT596,LEFT887
+2043,1490,2012-05-27,FP-GTC,4943,0,16,10000407,877.58,279,TEST143,true,216.53,923,LEFT880,LEFT829,LEFT49,LEFT228
+2044,1521,2012-05-27,ABIN,139255,15,15,10000330,-51.8,404,TEST473,true,165.87,861,LEFT459,LEFT228,LEFT455,LEFT837
+2045,469,2012-05-27,Others,88750,0,11,10000510,449.99,314,TEST815,true,245.26,355,LEFT805,LEFT948,LEFT583,LEFT617
+2046,54,2012-05-27,ABIN,106246,0,-99,10000371,601.37,875,TEST571,False,504.06,389,LEFT257,LEFT487,LEFT318,LEFT368
+2047,3400,2012-05-27,ABIN,26249,0,12,10000872,890.15,232,TEST893,True,887.87,822,LEFT681,LEFT723,LEFT263,LEFT65
+2048,1462,2012-05-27,ABIN,94847,0,15,10000920,475.76,192,TEST374,True,972.83,758,LEFT630,LEFT48,LEFT565,LEFT754
+2049,4133,2012-05-27,FP-GTC,67703,3,11,10000364,-80.26,915,TEST441,TRUE,782.56,832,LEFT310,LEFT146,LEFT686,LEFT144
+2050,129,2012-05-27,Others,43972,100,12,10000434,665.82,231,TEST90,true,927.33,773,LEFT206,LEFT518,LEFT70,LEFT422
+2051,3410,2012-05-27,ABIN,533,0,15,10000507,-33.33,540,TEST580,TRUE,486.56,176,LEFT10,LEFT707,LEFT56,LEFT259
+2052,314,2012-05-27,FP-non GTC,156356,0,-99,10000052,-27.94,599,TEST604,FALSE,814.98,234,LEFT573,LEFT81,LEFT119,LEFT317
+2053,330,2012-05-28,Others,82494,15,5,10000969,232.93,223,TEST368,false,242.06,510,LEFT173,LEFT778,LEFT910,LEFT427
+2054,3459,2012-05-28,Others,32996,15,5,10000529,548.58,255,TEST871,True,969.46,975,LEFT964,LEFT716,LEFT630,LEFT602
+2055,4473,2012-05-28,FP-GTC,314,211,12,10000457,902.71,196,TEST101,false,779.43,781,LEFT13,LEFT967,LEFT214,LEFT72
+2056,1781,2012-05-28,ABIN,963,0,13,10000001,923.93,20,TEST626,FALSE,533.96,62,LEFT783,LEFT153,LEFT894,LEFT944
+2057,2253,2012-05-28,Others,170083,3,14,10000745,500.03,413,TEST61,false,605.62,200,LEFT62,LEFT99,LEFT166,LEFT17
+2058,644,2012-05-28,FP-non GTC,33038,15,12,10000560,714.49,909,TEST376,true,761.07,793,LEFT392,LEFT676,LEFT13,LEFT758
+2059,3258,2012-05-28,FP-non GTC,67698,0,-99,10000118,819.15,806,TEST814,TRUE,504.81,184,LEFT34,LEFT901,LEFT723,LEFT623
+2060,3457,2012-05-28,FP-non GTC,164261,0,13,10000621,633.71,186,TEST568,true,197.02,379,LEFT474,LEFT447,LEFT818,LEFT642
+2061,1517,2012-05-28,FP-non GTC,150265,15,5,10000280,-29.33,562,TEST997,FALSE,278.26,70,LEFT455,LEFT321,LEFT964,LEFT142
+2062,1697,2012-05-29,FP-non GTC,159184,0,11,10000210,583.56,333,TEST931,true,34.4,409,LEFT638,LEFT779,LEFT216,LEFT645
+2063,4037,2012-05-29,ABIN,43398,0,11,10000731,39.45,302,TEST48,false,266.53,953,LEFT142,LEFT166,LEFT358,LEFT331
+2064,2925,2012-05-29,ABIN,33977,15,-99,10000568,553.11,962,TEST168,false,271.56,864,LEFT330,LEFT493,LEFT813,LEFT155
+2065,4764,2012-05-29,FP-GTC,140746,100,13,10000244,191.58,736,TEST235,false,405.49,183,LEFT736,LEFT609,LEFT7,LEFT22
+2066,3083,2012-05-29,Auction,50677,0,16,10000350,353.06,257,TEST233,False,503.62,526,LEFT714,LEFT230,LEFT635,LEFT396
+2067,1595,2012-05-29,Others,80287,0,-99,10000791,147.04,126,TEST279,True,410.48,714,LEFT320,LEFT960,LEFT298,LEFT268
+2068,2781,2012-05-29,ABIN,43398,0,13,10000237,-90.52,394,TEST596,false,569.22,876,LEFT269,LEFT16,LEFT354,LEFT481
+2069,2559,2012-05-29,ABIN,15868,0,11,10000199,19.75,925,TEST74,True,752.51,468,LEFT658,LEFT398,LEFT499,LEFT385
+2070,1483,2012-05-29,Others,34273,100,15,10000592,430.16,729,TEST508,false,398.36,240,LEFT731,LEFT849,LEFT20,LEFT411
+2071,3452,2012-05-29,ABIN,139973,3,-99,10000108,763.74,661,TEST294,TRUE,131.18,45,LEFT558,LEFT530,LEFT989,LEFT32
+2072,1943,2012-05-29,FP-non GTC,37831,0,5,10000142,232.39,326,TEST407,True,9.7,681,LEFT22,LEFT973,LEFT813,LEFT0
+2073,4183,2012-05-29,Others,15868,0,14,10000921,664.6,736,TEST868,True,355.98,194,LEFT880,LEFT724,LEFT62,LEFT713
+2074,4849,2012-05-30,FP-non GTC,57990,0,-99,10000756,116.78,710,TEST170,False,646.25,876,LEFT717,LEFT838,LEFT816,LEFT959
+2075,3405,2012-05-30,FP-GTC,11848,0,15,10000534,880.06,918,TEST599,true,169.25,676,LEFT28,LEFT447,LEFT541,LEFT103
+2076,1009,2012-05-30,Others,44079,0,11,10000664,203.92,990,TEST560,False,466.58,324,LEFT468,LEFT45,LEFT633,LEFT401
+2077,3544,2012-05-30,FP-GTC,67698,2,16,10000380,96.53,958,TEST528,FALSE,924.78,740,LEFT482,LEFT762,LEFT407,LEFT600
+2078,2907,2012-05-30,FP-GTC,130,0,11,10000446,387.54,164,TEST178,true,509.72,256,LEFT66,LEFT589,LEFT4,LEFT495
+2079,131,2012-05-30,FP-GTC,48904,0,11,10000502,750.07,911,TEST517,False,554.29,788,LEFT268,LEFT324,LEFT646,LEFT324
+2080,1165,2012-05-30,Auction,33977,15,13,10000328,561.11,372,TEST184,false,78.88,785,LEFT134,LEFT749,LEFT696,LEFT754
+2081,4398,2012-05-30,Others,57013,0,14,10000057,-29.57,907,TEST379,True,752.52,251,LEFT465,LEFT309,LEFT894,LEFT479
+2082,642,2012-05-30,FP-non GTC,166013,15,14,10000696,629.05,874,TEST610,TRUE,830.93,549,LEFT85,LEFT918,LEFT378,LEFT585
+2083,1718,2012-05-30,FP-GTC,150047,3,12,10000437,967.82,970,TEST214,true,20.83,694,LEFT393,LEFT212,LEFT161,LEFT751
+2084,2614,2012-05-30,FP-GTC,106246,0,16,10000568,229.62,48,TEST229,TRUE,1.95,52,LEFT61,LEFT220,LEFT418,LEFT534
+2085,1191,2012-05-30,ABIN,174106,3,12,10000424,281.95,612,TEST509,TRUE,652.01,803,LEFT685,LEFT991,LEFT998,LEFT625
+2086,4649,2012-05-30,Auction,62179,0,11,10000465,106.97,39,TEST643,True,703.21,689,LEFT514,LEFT144,LEFT862,LEFT481
+2087,4509,2012-05-31,Others,170083,3,11,10000524,966.32,289,TEST783,FALSE,835.83,923,LEFT941,LEFT124,LEFT567,LEFT943
+2088,2469,2012-05-31,ABIN,150265,15,13,10000075,7.64,154,TEST647,FALSE,495.46,82,LEFT78,LEFT625,LEFT900,LEFT496
+2089,2778,2012-05-31,ABIN,4943,0,13,10000588,286.86,944,TEST159,TRUE,923.93,811,LEFT729,LEFT814,LEFT39,LEFT927
+2090,4039,2012-05-31,FP-non GTC,26262,0,11,10000087,755.28,819,TEST357,true,232.18,900,LEFT429,LEFT189,LEFT724,LEFT845
+2091,2266,2012-05-31,Others,67698,0,5,10000520,833.0,330,TEST414,False,805.31,740,LEFT115,LEFT448,LEFT387,LEFT469
+2092,860,2012-05-31,Auction,121153,0,13,10000424,483.75,659,TEST807,true,996.17,310,LEFT282,LEFT89,LEFT148,LEFT41
+2093,4649,2012-05-31,Auction,44079,0,13,10000957,63.78,255,TEST902,True,344.65,48,LEFT80,LEFT680,LEFT513,LEFT76
+2094,116,2012-05-31,ABIN,41940,0,5,10000337,357.78,527,TEST852,FALSE,527.56,291,LEFT885,LEFT12,LEFT656,LEFT264
+2095,3721,2012-05-31,ABIN,103324,15,-99,10000979,527.55,234,TEST302,true,748.86,580,LEFT823,LEFT611,LEFT117,LEFT971
+2096,1643,2012-05-31,FP-non GTC,16509,0,15,10000582,505.11,280,TEST192,True,874.98,815,LEFT956,LEFT322,LEFT224,LEFT244
+2097,4077,2012-05-31,Auction,88750,0,5,10000103,428.2,235,TEST415,FALSE,783.73,182,LEFT921,LEFT436,LEFT130,LEFT624
+2098,1407,2012-05-31,Auction,170302,15,16,10000539,868.71,674,TEST572,false,369.03,640,LEFT709,LEFT866,LEFT410,LEFT193
+2099,4466,2012-05-31,ABIN,139973,0,-99,10000701,823.87,438,TEST923,false,103.96,546,LEFT625,LEFT174,LEFT114,LEFT140
+2100,3985,2012-05-31,Others,44079,0,5,10000509,737.78,988,TEST29,true,816.55,254,LEFT103,LEFT719,LEFT472,LEFT835
+2101,1095,2012-06-01,Others,279,15,15,10000496,758.21,115,TEST879,TRUE,558.2,725,LEFT142,LEFT492,LEFT672,LEFT442
+2102,1630,2012-06-01,ABIN,1349,0,13,10000774,818.09,728,TEST640,true,330.62,147,LEFT543,LEFT663,LEFT668,LEFT119
+2103,2793,2012-06-01,Others,100847,0,16,10000954,992.16,364,TEST459,TRUE,678.49,30,LEFT912,LEFT136,LEFT113,LEFT813
+2104,1578,2012-06-01,Auction,82494,15,5,10000612,124.99,832,TEST546,false,326.12,334,LEFT953,LEFT481,LEFT54,LEFT88
+2105,830,2012-06-01,Auction,94847,0,-99,10000031,991.26,671,TEST229,FALSE,738.51,499,LEFT707,LEFT808,LEFT251,LEFT415
+2106,1567,2012-06-01,FP-GTC,26262,0,16,10000747,545.43,393,TEST325,TRUE,941.25,497,LEFT405,LEFT825,LEFT673,LEFT771
+2107,2750,2012-06-01,Auction,0,0,15,10000085,449.03,160,TEST924,true,433.59,375,LEFT555,LEFT507,LEFT313,LEFT353
+2108,3039,2012-06-01,Auction,158798,0,12,10000701,838.31,346,TEST559,false,573.81,884,LEFT752,LEFT742,LEFT352,LEFT273
+2109,3546,2012-06-01,Others,175750,3,16,10000104,11.51,93,TEST959,true,920.43,908,LEFT889,LEFT972,LEFT529,LEFT623
+2110,291,2012-06-01,FP-GTC,80287,0,11,10000140,248.38,60,TEST390,false,454.48,931,LEFT326,LEFT103,LEFT923,LEFT154
+2111,158,2012-06-01,Auction,25147,0,14,10000626,483.87,379,TEST863,True,156.65,799,LEFT610,LEFT39,LEFT854,LEFT282
+2112,972,2012-06-01,Auction,106340,15,12,10000657,919.91,424,TEST599,FALSE,564.78,534,LEFT608,LEFT376,LEFT759,LEFT32
+2113,4500,2012-06-01,Auction,139973,3,12,10000636,57.97,185,TEST118,False,883.4,35,LEFT266,LEFT761,LEFT501,LEFT782
+2114,363,2012-06-01,Others,30059,3,15,10000816,654.45,302,TEST201,True,740.62,938,LEFT33,LEFT155,LEFT153,LEFT142
+2115,622,2012-06-01,FP-non GTC,80053,0,15,10000144,449.8,549,TEST329,true,144.98,68,LEFT476,LEFT40,LEFT482,LEFT651
+2116,1154,2012-06-01,FP-GTC,82494,15,11,10000505,-87.82,639,TEST415,FALSE,431.39,160,LEFT446,LEFT36,LEFT560,LEFT70
+2117,4192,2012-06-01,FP-GTC,15115,0,5,10000349,953.37,644,TEST23,FALSE,788.21,564,LEFT190,LEFT304,LEFT922,LEFT128
+2118,2810,2012-06-02,Auction,175750,3,12,10000977,-77.5,571,TEST422,FALSE,92.46,797,LEFT808,LEFT188,LEFT348,LEFT352
+2119,1567,2012-06-02,Others,174106,3,13,10000053,79.49,379,TEST122,FALSE,65.63,796,LEFT258,LEFT971,LEFT695,LEFT211
+2120,165,2012-06-02,Others,88750,0,11,10000578,650.29,564,TEST353,True,48.9,601,LEFT363,LEFT934,LEFT141,LEFT588
+2121,4440,2012-06-02,Others,53064,0,16,10000486,269.54,212,TEST582,True,994.64,968,LEFT380,LEFT66,LEFT369,LEFT30
+2122,2065,2012-06-02,FP-GTC,314,211,13,10000268,880.26,952,TEST512,False,505.57,653,LEFT108,LEFT503,LEFT140,LEFT36
+2123,2114,2012-06-02,Auction,139973,0,11,10000020,860.6,316,TEST412,False,95.06,540,LEFT64,LEFT518,LEFT619,LEFT819
+2124,4295,2012-06-02,Others,31387,3,13,10000220,534.99,38,TEST968,TRUE,648.78,92,LEFT856,LEFT774,LEFT431,LEFT462
+2125,142,2012-06-02,Others,165888,0,13,10000665,618.64,129,TEST361,true,822.02,379,LEFT557,LEFT318,LEFT490,LEFT541
+2126,978,2012-06-02,FP-GTC,23446,23,11,10000596,185.99,978,TEST620,TRUE,407.24,352,LEFT825,LEFT98,LEFT891,LEFT720
+2127,1392,2012-06-02,FP-non GTC,20485,0,11,10000066,468.36,301,TEST762,TRUE,564.38,29,LEFT836,LEFT468,LEFT709,LEFT545
+2128,275,2012-06-02,ABIN,80287,0,5,10000719,924.44,854,TEST406,true,31.22,122,LEFT699,LEFT681,LEFT705,LEFT484
+2129,2909,2012-06-02,Others,2023,0,5,10000019,-69.33,15,TEST902,FALSE,954.2,277,LEFT299,LEFT546,LEFT110,LEFT13
+2130,3557,2012-06-02,ABIN,50508,0,-99,10000234,525.86,174,TEST630,FALSE,118.11,521,LEFT535,LEFT190,LEFT518,LEFT290
+2131,1631,2012-06-02,FP-non GTC,158666,15,16,10000231,438.97,844,TEST290,false,833.41,916,LEFT271,LEFT232,LEFT20,LEFT517
+2132,3646,2012-06-02,Auction,106246,0,11,10000291,822.7,517,TEST794,false,31.35,701,LEFT460,LEFT870,LEFT28,LEFT110
+2133,2085,2012-06-02,Auction,156614,0,-99,10000602,513.57,15,TEST922,True,878.07,835,LEFT911,LEFT786,LEFT523,LEFT599
+2134,4198,2012-06-02,ABIN,95173,0,13,10000253,265.03,446,TEST51,FALSE,4.46,345,LEFT268,LEFT286,LEFT836,LEFT750
+2135,1205,2012-06-03,ABIN,963,0,11,10000543,128.88,738,TEST153,true,757.96,92,LEFT112,LEFT985,LEFT103,LEFT744
+2136,3552,2012-06-03,FP-GTC,48027,0,13,10000011,-49.92,264,TEST517,FALSE,208.43,48,LEFT182,LEFT66,LEFT523,LEFT172
+2137,833,2012-06-03,ABIN,100847,0,16,10000758,826.12,352,TEST792,TRUE,632.04,785,LEFT583,LEFT583,LEFT833,LEFT232
+2138,2983,2012-06-03,FP-non GTC,95672,3,15,10000995,564.58,773,TEST410,false,410.25,239,LEFT353,LEFT464,LEFT572,LEFT217
+2139,18,2012-06-03,Others,10058,3,16,10000376,216.55,698,TEST697,FALSE,740.97,241,LEFT240,LEFT620,LEFT615,LEFT765
+2140,537,2012-06-03,FP-non GTC,43972,100,12,10000796,132.64,738,TEST467,false,620.76,434,LEFT557,LEFT643,LEFT314,LEFT655
+2141,1959,2012-06-03,ABIN,15687,0,13,10000005,444.42,115,TEST986,True,359.09,703,LEFT534,LEFT766,LEFT450,LEFT338
+2142,145,2012-06-03,FP-non GTC,38238,0,15,10000441,145.68,975,TEST107,FALSE,728.77,595,LEFT271,LEFT814,LEFT359,LEFT892
+2143,1278,2012-06-03,FP-non GTC,1349,0,13,10000141,430.05,694,TEST753,false,216.55,708,LEFT216,LEFT440,LEFT528,LEFT856
+2144,4166,2012-06-03,FP-non GTC,57013,0,16,10000567,954.16,831,TEST470,true,651.47,577,LEFT184,LEFT998,LEFT440,LEFT616
+2145,1363,2012-06-03,ABIN,30059,3,5,10000577,681.91,908,TEST62,true,787.47,573,LEFT885,LEFT361,LEFT55,LEFT514
+2146,2302,2012-06-04,FP-GTC,1349,0,13,10000861,595.68,112,TEST609,FALSE,277.06,248,LEFT437,LEFT841,LEFT351,LEFT624
+2147,4532,2012-06-04,Auction,145970,0,14,10000137,396.33,248,TEST505,True,831.84,198,LEFT38,LEFT18,LEFT950,LEFT355
+2148,410,2012-06-04,Others,533,0,-99,10000513,46.98,200,TEST934,false,810.87,571,LEFT403,LEFT166,LEFT6,LEFT466
+2149,4056,2012-06-04,FP-GTC,15115,0,-99,10000836,366.24,700,TEST912,True,588.92,340,LEFT767,LEFT947,LEFT765,LEFT124
+2150,1682,2012-06-04,ABIN,113593,15,5,10000917,761.36,32,TEST748,TRUE,950.77,95,LEFT10,LEFT348,LEFT643,LEFT979
+2151,2690,2012-06-04,FP-GTC,139973,0,15,10000624,233.15,270,TEST17,True,568.1,859,LEFT487,LEFT928,LEFT373,LEFT31
+2152,2217,2012-06-04,FP-non GTC,0,3,11,10000932,789.26,79,TEST686,True,478.25,839,LEFT365,LEFT42,LEFT123,LEFT470
+2153,156,2012-06-04,Others,152801,0,5,10000164,234.49,547,TEST840,true,317.32,795,LEFT483,LEFT437,LEFT622,LEFT482
+2154,4416,2012-06-04,Others,15808,15,15,10000371,76.91,431,TEST422,true,31.26,936,LEFT329,LEFT816,LEFT896,LEFT141
+2155,1718,2012-06-04,Auction,9426,3,12,10000135,123.82,743,TEST277,True,483.64,701,LEFT518,LEFT571,LEFT297,LEFT375
+2156,4552,2012-06-04,FP-non GTC,26249,0,12,10000692,202.86,208,TEST120,True,309.63,370,LEFT688,LEFT345,LEFT197,LEFT12
+2157,927,2012-06-04,Others,1504,0,16,10000409,673.56,619,TEST16,True,236.39,578,LEFT50,LEFT654,LEFT475,LEFT100
+2158,3353,2012-06-04,FP-non GTC,62179,0,12,10000344,981.79,386,TEST624,False,831.58,772,LEFT582,LEFT33,LEFT837,LEFT266
+2159,166,2012-06-04,FP-GTC,95173,0,12,10000004,16.89,978,TEST959,false,308.13,146,LEFT938,LEFT493,LEFT267,LEFT215
+2160,4368,2012-06-04,Auction,12688,0,16,10000312,458.27,907,TEST184,True,155.84,918,LEFT450,LEFT756,LEFT62,LEFT896
+2161,544,2012-06-04,Others,80135,0,5,10000618,721.16,960,TEST781,true,159.93,335,LEFT632,LEFT167,LEFT743,LEFT865
... 15343 lines suppressed ...