diff --git ql/src/java/org/apache/hadoop/hive/ql/.DS_Store ql/src/java/org/apache/hadoop/hive/ql/.DS_Store new file mode 100644 index 0000000..4a9c35d Binary files /dev/null and ql/src/java/org/apache/hadoop/hive/ql/.DS_Store differ diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/.DS_Store ql/src/java/org/apache/hadoop/hive/ql/exec/.DS_Store new file mode 100644 index 0000000..5948dff Binary files /dev/null and ql/src/java/org/apache/hadoop/hive/ql/exec/.DS_Store differ diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/.DS_Store ql/src/java/org/apache/hadoop/hive/ql/exec/vector/.DS_Store new file mode 100644 index 0000000..4d7a6a7 Binary files /dev/null and ql/src/java/org/apache/hadoop/hive/ql/exec/vector/.DS_Store differ diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/ColumnVector.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/ColumnVector.java index 49d4c12..1f4cfd4 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/vector/ColumnVector.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/ColumnVector.java @@ -38,6 +38,7 @@ * The current kinds of column vectors. */ public static enum Type { + NONE, LONG, DOUBLE, BYTES, diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/.DS_Store ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/.DS_Store differ diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonAggregation.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonAggregation.java new file mode 100644 index 0000000..105c9f7 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonAggregation.java @@ -0,0 +1,158 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.Collection; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr; +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.AggregateCombinationTypes; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; + +/** + * This class is common operator class for native vectorized group by. + * + * It contain common initialization logic. + */ +public abstract class VectorGroupByCommonAggregation extends VectorGroupByCommonHashTableOperator { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByCommonAggregation.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + protected transient boolean atLeastAllNullKey; + + protected transient VectorGroupByColAggr[] columnAggregations; + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByCommonAggregation() { + super(); + } + + public VectorGroupByCommonAggregation(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + atLeastAllNullKey = false; + + if (!isOnlyCountStar) { + int size = nonKeyColumnAggregationInfos.length; + columnAggregations = new VectorGroupByColAggr[size]; + for (int i = 0; i < size; i++) { + NonKeyColumnAggregationInfo nonKeyColumnAggregationInfo = nonKeyColumnAggregationInfos[i]; + Class colAggrClass = nonKeyColumnAggregationInfo.getColumnAggregationClass(); + int columnNum = nonKeyColumnAggregationInfo.getColumnNum(); + try { + columnAggregations[i] = + colAggrClass.getDeclaredConstructor(int.class).newInstance(columnNum); + } catch (Exception e) { + throw new HiveException(e); + } + } + } + + return result; + } + + protected void aggregate(VectorizedRowBatch batch, int startIndex, + int seriesCount, long[] longs, int longsAggregateIndex) { + + final int hasValuesFlagWordOffset = longsAggregateIndex - 1; + long hasValuesFlagWord = longs[hasValuesFlagWordOffset]; + + if (hasCountStar) { + // COUNT(*) includes NULLs. + longs[longsAggregateIndex++] += seriesCount; + } + + if (columnAggregations.length == 0) { + return; + } + + int columnAggregateIndex = 0; + VectorGroupByColAggr colAggr = columnAggregations[0]; + do { + AggregateCombinationTypes aggrCombinationTypes = colAggr.getAggregateCombinationTypes(); + + boolean hasValues = (hasValuesFlagWord & (1L << columnAggregateIndex)) != 0; + boolean newHasValues; + switch (aggrCombinationTypes) { + case LONG: + newHasValues = colAggr.aggregateColumnLongAggrs(batch, startIndex, seriesCount, + hasValues, longs, longsAggregateIndex); + if (!hasValues && newHasValues) { + longs[hasValuesFlagWordOffset] |= 1L << columnAggregateIndex; + } + if (++columnAggregateIndex >= columnAggregations.length) { + return; + } + longsAggregateIndex += colAggr.getLongAggrCount(); + break; + /* + case DOUBLE: + newHasValues = colAggr.aggregateColumnDoubleAggrs(batch, startIndex, seriesCount, + hasValues, doubles, doublesAggregateIndex); + if (!hasValues && newHasValues) { + longs[hasValuesFlagWordOffset] |= 1L << columnAggregateIndex; + } + if (++columnAggregateIndex >= columnAggregations.length) { + return; + } + doublesAggregateIndex += colAggr.getDoubleAggrCount(); + break; + case LONG_DOUBLE: + newHasValues = colAggr.aggregateColumnLongDoubleAggrs(batch, startIndex, seriesCount, + hasValues, longs, longsAggregateIndex, doubles, doublesAggregateIndex); + if (!hasValues && newHasValues) { + longs[hasValuesFlagWordOffset] |= 1L << columnAggregateIndex; + } + if (++columnAggregateIndex >= columnAggregations.length) { + return; + } + longsAggregateIndex += colAggr.getLongAggrCount(); + doublesAggregateIndex += colAggr.getDoubleAggrCount(); + break; + */ + default: + throw new RuntimeException("Unexpected aggregate combination types " + aggrCombinationTypes.name()); + } + + colAggr = columnAggregations[columnAggregateIndex]; + } while (true); + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonHashTableOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonHashTableOperator.java new file mode 100644 index 0000000..24ea28b --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonHashTableOperator.java @@ -0,0 +1,342 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.Arrays; +import java.util.Collection; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; + +/* + * An single long value map optimized for vector map join. + */ +public abstract class VectorGroupByCommonHashTableOperator extends VectorGroupByCommonStorageOperator { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByCommonHashTableOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + // The find or create results for findOrCreateLongKey and findOrCreateNonLongKey. + + public transient boolean currentIsNewKey; + public transient int currentLongsIndex; + public transient int currentDoublesIndex; + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByCommonHashTableOperator() { + super(); + } + + public VectorGroupByCommonHashTableOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + allocateBucketArray(2); + + return result; + } + + public void findOrCreateLongKey(long key, long hashCode) throws HiveException { + + int intHashCode = (int) hashCode; + int slot = (intHashCode & logicalHashBucketMask); + long probeSlot = slot; + int i = 0; + boolean isNewKey; + int pairIndex = 0; + long longsIndex = 0; + while (true) { + pairIndex = 2 * slot; + longsIndex = slotMultiples[pairIndex]; + if (longsIndex == 0) { + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateLongKey key " + key + " slot " + slot + " pairIndex " + pairIndex + " empty slot (i = " + i + ")"); + isNewKey = true; + break; + } + long tableKey = slotMultiples[pairIndex + 1]; + if (key == tableKey) { + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateLongKey key " + key + " slot " + slot + " pairIndex " + pairIndex + " found key (i = " + i + ")"); + isNewKey = false; + break; + } + ++metricPutConflict; + // Some other key (collision) - keep probing. + probeSlot += (++i); + slot = (int)(probeSlot & logicalHashBucketMask); + } + + if (largestNumberOfSteps < i) { + if (LOG.isDebugEnabled()) { + LOG.debug("Probed " + i + " slots (the longest so far) to find space"); + } + largestNumberOfSteps = i; + // debugDumpKeyProbe(keyOffset, keyLength, hashCode, slot); + } + + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateLongKey slot " + slot + " hashCode " + Long.toHexString(hashCode)); + + if (!isNewKey) { + + currentIsNewKey = false; + currentLongsIndex = (int) longsIndex; + + } else { + boolean limitReached = (keyCount + 1 >= keyLimit); + if (limitReached) { + + // We reached a limit. + + flushAndClear(); + + if (nextLongsIndex > longsArraySize) { + throw new RuntimeException("Group by storage not cleared properly"); + } + + // Recalculate slot for hashCode since now the first slot must now be available. + slot = (intHashCode & logicalHashBucketMask); + pairIndex = 2 * slot; + if (slotMultiples[pairIndex] != 0) { + throw new RuntimeException("Group by hash table not cleared properly"); + } + } + slotMultiples[pairIndex] = currentLongsIndex = nextLongsIndex; + nextLongsIndex += longsEntrySize; + currentIsNewKey = true; + + slotMultiples[pairIndex + 1] = key; + + keyCount++; + } + } + + public void findOrCreateLongKeyCountStar(long key, long hashCode, int count) throws HiveException { + + int intHashCode = (int) hashCode; + int slot = (intHashCode & logicalHashBucketMask); + long probeSlot = slot; + int i = 0; + boolean isNewKey; + int pairIndex = 0; + while (true) { + pairIndex = 2 * slot; + if (slotMultiples[pairIndex + 1] == 0) { + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateLongKeyCountStar key " + key + " slot " + slot + " pairIndex " + pairIndex + " empty slot (i = " + i + ")"); + isNewKey = true; + break; + } + if (key == slotMultiples[pairIndex]) { + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateLongKeyCountStar key " + key + " slot " + slot + " pairIndex " + pairIndex + " found key (i = " + i + ")"); + isNewKey = false; + break; + } + ++metricPutConflict; + // Some other key (collision) - keep probing. + probeSlot += (++i); + slot = (int)(probeSlot & logicalHashBucketMask); + } + + if (largestNumberOfSteps < i) { + if (LOG.isDebugEnabled()) { + LOG.debug("Probed " + i + " slots (the longest so far) to find space"); + } + largestNumberOfSteps = i; + // debugDumpKeyProbe(keyOffset, keyLength, hashCode, slot); + } + + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateLongKeyCountStar slot " + slot + " hashCode " + Long.toHexString(hashCode)); + + if (isNewKey) { + boolean limitReached = (keyCount + 1 >= keyLimit); + if (limitReached) { + + // We reached a limit. + + flushAndClear(); + + // Recalculate slot for hashCode since now the first slot must now be available. + slot = (intHashCode & logicalHashBucketMask); + pairIndex = 2 * slot; + if (slotMultiples[pairIndex] != 0) { + throw new RuntimeException("Group by hash table not cleared properly"); + } + } + slotMultiples[pairIndex] = key; + keyCount++; + } + slotMultiples[pairIndex + 1] += count; + } + + private int countStarPairIndex; + private long currentCountStartCount; + + protected int initLongCountStarIterator() { + countStarPairIndex = 0; + currentCountStartCount = 0; + return keyCount; + } + + // Find next key and return it. + protected long getLongCountStarKey() { + while (true) { + long count = slotMultiples[countStarPairIndex + 1]; + if (count > 0) { + currentCountStartCount = count; + long key = slotMultiples[countStarPairIndex]; + countStarPairIndex += 2; + return key; + } + countStarPairIndex += 2; + } + } + + public long getLongCountStarCount() { + return currentCountStartCount; + } + + public boolean verifyNonLongKey(long storageRef) { + throw new RuntimeException("Must be overridden"); + } + + public void findOrCreateNonLongKey(long hashCode) throws HiveException { + + int intHashCode = (int) hashCode; + int slot = (intHashCode & logicalHashBucketMask); + long probeSlot = slot; + int i = 0; + boolean isNewKey; + int pairIndex = 0; + long longsIndex = 0; + while (true) { + pairIndex = 2 * slot; + longsIndex = slotMultiples[pairIndex]; + if (longsIndex == 0) { + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateNonLongKey slot " + slot + " pairIndex " + pairIndex + " empty slot (i = " + i + ")"); + isNewKey = true; + break; + } + long tableHashCode = slotMultiples[pairIndex + 1]; + if (hashCode == tableHashCode) { + + // Since hash codes are not unique, we must compare non-single-long key to verify. + + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateNonLongKey slot " + slot + " pairIndex " + pairIndex + " found key (i = " + i + ")"); + if (verifyNonLongKey(longsIndex)) { + isNewKey = false; + break; + } + } + ++metricPutConflict; + // Some other key (collision) - keep probing. + probeSlot += (++i); + slot = (int)(probeSlot & logicalHashBucketMask); + } + + if (largestNumberOfSteps < i) { + if (LOG.isDebugEnabled()) { + LOG.debug("Probed " + i + " slots (the longest so far) to find space"); + } + largestNumberOfSteps = i; + // debugDumpKeyProbe(keyOffset, keyLength, hashCode, slot); + } + + // LOG.debug("VectorGroupByCommonHashTableOperator findOrCreateNonLongKey slot " + slot + " hashCode " + Long.toHexString(hashCode)); + if (!isNewKey) { + + currentIsNewKey = false; + currentLongsIndex = (int) longsIndex; + + } else { + boolean limitReached = (keyCount + 1 >= keyLimit); + if (limitReached) { + + // We reached a limit. + + flushAndClear(); + + if (nextLongsIndex > longsArraySize) { + throw new RuntimeException("Group by storage not cleared properly"); + } + + // Recalculate slot for hashCode since now the first slot must now be available. + slot = (intHashCode & logicalHashBucketMask); + pairIndex = 2 * slot; + if (slotMultiples[pairIndex] != 0) { + throw new RuntimeException("Group by hash table not cleared properly"); + } + } + slotMultiples[pairIndex] = currentLongsIndex = nextLongsIndex; + nextLongsIndex += longsEntrySize; + currentIsNewKey = true; + + slotMultiples[pairIndex + 1] = hashCode; + + keyCount++; + } + } + + protected abstract void flushAndClear() throws HiveException; + + protected void clearHashTable() { + Arrays.fill(slotMultiples, 0, slotPhysicalArraySize, 0); + keyCount = 0; + largestNumberOfSteps = 0; + metricPutConflict = 0; + } + + /* + * The hash table slots. For a long key hash table, each slot is 2 longs and the array is + * 2X sized. + * + * The slot pair is 1) a non-zero storage word to the first value bytes and + * 2) the long value or hash code. + */ + int slotPhysicalArraySize; + protected long[] slotMultiples; + + int keyCount; + int largestNumberOfSteps; + int metricPutConflict; + + private void allocateBucketArray(int multiplier) { + slotPhysicalArraySize = multiplier * logicalHashBucketCount; + slotMultiples = new long[slotPhysicalArraySize]; + + keyCount = 0; + largestNumberOfSteps = 0; + metricPutConflict = 0; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonOperator.java new file mode 100644 index 0000000..1e0947a --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonOperator.java @@ -0,0 +1,420 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.Operator; +import org.apache.hadoop.hive.ql.exec.Utilities; +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContextRegion; +import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr; +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.BaseWork; +import org.apache.hadoop.hive.ql.plan.ExprNodeDesc; +import org.apache.hadoop.hive.ql.plan.GroupByDesc; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.AggregationFunction; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.ColumnAggregationInfo; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.AggregationFunctionInfo; +import org.apache.hadoop.hive.ql.plan.VectorGroupByDesc; +import org.apache.hadoop.hive.ql.plan.api.OperatorType; + +/** + * This class is common operator class for native vectorized group by. + * + * It contain common initialization logic. + */ +public abstract class VectorGroupByCommonOperator extends Operator implements + VectorizationContextRegion { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByCommonOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + public VectorizationContext vContext; + + /** + * Key vector expressions. + */ + protected VectorExpression[] keyExpressions; + + // Create a new outgoing vectorization context because column name map will change. + protected VectorizationContext vOutContext; + + // This is map of which vectorized row batch columns are the key columns. + protected int groupByKeyColumnMap[]; + + // *** LONG COLUMN AGGREGATION MAP (does not include complex aggregation like AVG) *** + public static final Map longAggrFuncToBasicAggrMap = + new HashMap(); + static { + longAggrFuncToBasicAggrMap.put(AggregationFunction.MIN_FUNC, BasicAggregation.BASIC_MIN); + longAggrFuncToBasicAggrMap.put(AggregationFunction.MAX_FUNC, BasicAggregation.BASIC_MAX); + longAggrFuncToBasicAggrMap.put(AggregationFunction.COUNT_FUNC, BasicAggregation.BASIC_COUNT); + longAggrFuncToBasicAggrMap.put(AggregationFunction.SUM_FUNC, BasicAggregation.BASIC_SUM); + } + + // *** DOUBLE COLUMN AGGREGATION MAP (does not include complex aggregation like AVG) *** + public static final Map doubleAggrFuncToBasicAggrMap = + new HashMap(); + static { + doubleAggrFuncToBasicAggrMap.put(AggregationFunction.MIN_FUNC, BasicAggregation.BASIC_DOUBLE_MIN); + doubleAggrFuncToBasicAggrMap.put(AggregationFunction.MAX_FUNC, BasicAggregation.BASIC_DOUBLE_MAX); + doubleAggrFuncToBasicAggrMap.put(AggregationFunction.COUNT_FUNC, BasicAggregation.BASIC_COUNT); + doubleAggrFuncToBasicAggrMap.put(AggregationFunction.SUM_FUNC, BasicAggregation.BASIC_DOUBLE_SUM); + } + + // Is the group by only have one output? COUNT(*). If so, we have a specialized operator for it. + protected boolean isOnlyCountStar; + + // Are we keeping the COUNT(*) counter for this group by. Note that sometimes we keep the + // counter for easy key aggregations even when COUNT(*) doesn't explicitly appear in the + // aggregation function outputs. + protected boolean hasCountStar; + + // The size of a key's entry in the longs and doubles arrays. + protected int longsEntrySize; + protected int doublesEntrySize; + + // The offset into the key's longs entry of the long key. + protected int longsKeyBaseOffset; + + // The offset into the key's longs and doubles entry of the beginning of the aggregate(s). + protected int longsAggrBaseOffset; + protected int doublesAggrBaseOffset; + + // Information on the Non-Key column aggregations we generate during constructor time for + // runtime usage. + protected NonKeyColumnAggregationInfo[] nonKeyColumnAggregationInfos; + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + // The maximum number of keys we'll keep in the hash table before flushing. + protected transient int keyLimit; + + // The logical size and power of 2 mask of the hash table + protected transient int logicalHashBucketCount; + protected transient int logicalHashBucketMask; + + // For debug tracing: the name of the map or reduce task. + protected transient String taskName; + + // Debug display. + protected transient long batchCounter; + + public VectorGroupByCommonOperator() { + super(); + } + + public VectorGroupByCommonOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(); + + GroupByDesc desc = (GroupByDesc) conf; + this.conf = desc; + VectorGroupByDesc vectorDesc = desc.getVectorDesc(); + this.vContext = vContext; + + List keysDesc = desc.getKeys(); + keyExpressions = vContext.getVectorExpressions(keysDesc); + + // Since a key expression can be a calculation and the key will go into a scratch column, + // we need the mapping and type information. + groupByKeyColumnMap = new int[keyExpressions.length]; + for (int i = 0; i < groupByKeyColumnMap.length; i++) { + VectorExpression ve = keyExpressions[i]; + groupByKeyColumnMap[i] = ve.getOutputColumn(); + } + + vOutContext = new VectorizationContext(getName(), desc.getOutputColumnNames()); + + isOnlyCountStar = vectorDesc.isOnlyCountStar(); + + if (isOnlyCountStar) { + + hasCountStar = true; + + } else { + VectorGroupByAggregrationInfo aggrInfo = vectorDesc.getAggregationInfo(); + hasCountStar = aggrInfo.getHasCountStar(); + + // UNDONE: For now, start with 1 for long key and 1 for hasValuesFlagWord. + longsEntrySize = 2; + doublesEntrySize = 0; + + longsKeyBaseOffset = 0; + + // UNDONE: Offset after hasValuesFlagWord. + longsAggrBaseOffset = 2; + doublesAggrBaseOffset = 0; + + prepareAllInfoForRuntime(aggrInfo); + } + } + + /** + * Information on a Non-Key column aggregations we generate during constructor time for + * runtime usage. + * + * Adds the column number, column aggregate position (number), and the basic aggregate offsets. + */ + public class NonKeyColumnAggregationInfo { + + private final ColumnAggregationInfo columnAggregationInfo; + + private final int columnNum; + + private final int columnAggregationNum; + + Class columnAggregationClass; + + // Offset to long/double/etc aggregate. + private final int[] basicAggregationOffsets; + + public NonKeyColumnAggregationInfo(int columnNum, int columnAggregationNum, + ColumnAggregationInfo columnAggregationInfo) { + this.columnNum = columnNum; + this.columnAggregationNum = columnAggregationNum; + this.columnAggregationInfo = columnAggregationInfo; + columnAggregationClass = null; + basicAggregationOffsets = new int[BasicAggregation.basicAggregationValues.length]; + } + + public ColumnAggregationInfo getColumnAggregationInfo() { + return columnAggregationInfo; + } + + public int getColumnNum() { + return columnNum; + } + public int getColumnAggregationNum() { + return columnAggregationNum; + } + public int[] getBasicAggregationOffsets() { + return basicAggregationOffsets; + } + + public Class getColumnAggregationClass() { + return columnAggregationClass; + } + public void setColumnAggregationClass(Class columnAggregationClass) { + this.columnAggregationClass = columnAggregationClass; + } + } + + /** + * Determine the rest of the constructor time information needed for runtime. + */ + private void prepareAllInfoForRuntime(VectorGroupByAggregrationInfo aggrInfo) + throws HiveException { + + HashMap columnAggregationMap = + aggrInfo.getColumnAggregationMap(); + ArrayList nonKeyColumnAggrInfoList = + new ArrayList(); + + HashMap colAggrToNonKeyAggrMap = + new HashMap(); + + int columnAggregationNum = 0; + for (Entry entry : columnAggregationMap.entrySet()) { + ColumnAggregationInfo columnAggrInfo = entry.getValue(); + + if (!columnAggrInfo.getIsKey()) { + String columnName = entry.getKey(); + + // Get concrete about column numbers. + int columnNum = vContext.getProjectionColumnMap().get(columnName); + + NonKeyColumnAggregationInfo nonKeyColumnAggrInfo = + new NonKeyColumnAggregationInfo(columnNum, columnAggregationNum, columnAggrInfo); + nonKeyColumnAggrInfoList.add(nonKeyColumnAggrInfo); + + colAggrToNonKeyAggrMap.put(columnAggrInfo, nonKeyColumnAggrInfo); + columnAggregationNum++; + } + } + + // Now that we know which columns have 1 or more aggregations on them, prepare this + // information for use at runtime: + // + // For aggregating: + // + // Information used during execution to quickly do the column aggregations for a series + // of vector rows with equal keys. + // + // The aggregations will be stored in small ranges within very large long, double, + // etc arrays to avoid Java allocations per key. + // + // For outputting: + // + // Grab the aggregations from the very large long, double, etc arrays and store them + // in the output row. + // + // Outputting occurs during closeOp, or when the hash table gets full and we need to + // kick out stuff. + // + // For simple long, double, etc aggregations: + // --> Take the value from very large array and store it in the output row + // + // For each complex aggregation, invoke a small helper class that forms the complex + // output from the separate simple aggregations. + // --> For avg, take the count from the very large long array and the sum from + // the very large array and store them in the avg output structure. + + determineNonKeyColumnAggrClasses(nonKeyColumnAggrInfoList); + + setupVectorOutput(aggrInfo.getAggregationFunctionInfos(), nonKeyColumnAggrInfoList, + colAggrToNonKeyAggrMap); + + nonKeyColumnAggregationInfos = nonKeyColumnAggrInfoList.toArray(new NonKeyColumnAggregationInfo[0]); + + } + + /** + * Determine the object needed for each aggregation function output. + */ + protected abstract void setupVectorOutput(AggregationFunctionInfo[] aggrFuncInfos, + ArrayList nonKeyColumnAggrInfoList, + HashMap colAggrToNonKeyAggrMap); + + /** + * Determines which aggregation class is needed for each Non-Key column. + * + * The aggregation class handles the combination of basic aggregations (MIN, MAX, + * COUNT, SUM, etc) needed for each column + */ + private void determineNonKeyColumnAggrClasses(ArrayList nonKeyColumnAggrInfoList) { + + int currentLongsOffset = 0; + int currentDoublesOffset = 0; + + if (hasCountStar) { + currentLongsOffset++; + } + + for (NonKeyColumnAggregationInfo nonKeyColumnAggrInfo : nonKeyColumnAggrInfoList) { + + int[] basicAggregationOffsets = nonKeyColumnAggrInfo.getBasicAggregationOffsets(); + + ColumnAggregationInfo columnAggrInfo = nonKeyColumnAggrInfo.getColumnAggregationInfo(); + + ColumnVector.Type columnVectorType = columnAggrInfo.getColumnVectorType(); + + boolean[] aggregationFunctionsPresent = columnAggrInfo.getAggregationFunctionsPresent(); + + Class columnAggregationClass = null; + + switch (columnVectorType) { + case LONG: + { + int mask = 0; + for (AggregationFunction aggrFunc : AggregationFunction.aggregationFunctionValues) { + if (aggregationFunctionsPresent[aggrFunc.getValue()]) { + + if (aggrFunc != AggregationFunction.AVG_FUNC) { + BasicAggregation basicAggr = longAggrFuncToBasicAggrMap.get(aggrFunc); + basicAggregationOffsets[basicAggr.value] = currentLongsOffset++; + mask |= basicAggr.mask; + } else { + basicAggregationOffsets[BasicAggregation.BASIC_COUNT.value] = currentLongsOffset++; + mask |= BasicAggregation.BASIC_COUNT.mask; + + // Note use of doubles offset. + basicAggregationOffsets[BasicAggregation.BASIC_DOUBLE_SUM.value] = currentDoublesOffset++; + mask |= BasicAggregation.BASIC_DOUBLE_SUM.mask; + } + } + } + + columnAggregationClass = VectorGroupByColAggr.longNonKeyColAggrMap.get(mask); + } + break; + + default: + throw new RuntimeException( + "Vector column type " + columnVectorType.name() + " not supported yet"); + } + + nonKeyColumnAggrInfo.setColumnAggregationClass(columnAggregationClass); + } + + // Save longs and doubles final entry sizes. + longsEntrySize = longsAggrBaseOffset + currentLongsOffset; + doublesEntrySize = doublesAggrBaseOffset + currentDoublesOffset; + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + if (LOG.isDebugEnabled()) { + // Determine the name of our map or reduce task for debug tracing. + BaseWork work = Utilities.getMapWork(hconf); + if (work == null) { + work = Utilities.getReduceWork(hconf); + } + taskName = work.getName(); + } + + // UNDONE: Configure this. + keyLimit = 100000; + + // UNDONE: What factor here? + int rawHashBucketCount = 8 * keyLimit; + + // Must be a power of 2 so the mask works. + logicalHashBucketCount = 1 << (Long.SIZE - Long.numberOfLeadingZeros(rawHashBucketCount)); + logicalHashBucketMask = logicalHashBucketCount - 1; + + batchCounter = 0; + + return result; + } + + static public String getOperatorName() { + return "GBY"; + } + + @Override + public VectorizationContext getOuputVectorizationContext() { + return vOutContext; + } + + @Override + public OperatorType getType() { + return OperatorType.GROUPBY; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonOutputOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonOutputOperator.java new file mode 100644 index 0000000..508337e --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonOutputOperator.java @@ -0,0 +1,681 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.List; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.DoubleColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorAggregationBufferBatch; +import org.apache.hadoop.hive.ql.exec.vector.VectorHashKeyWrapper; +import org.apache.hadoop.hive.ql.exec.vector.VectorHashKeyWrapperBatch; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatchCtx; +import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpressionWriter; +import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpressionWriterFactory; +import org.apache.hadoop.hive.ql.exec.vector.expressions.aggregates.VectorAggregateExpression; +import org.apache.hadoop.hive.ql.exec.vector.groupby.VectorGroupByCommonOperator.NonKeyColumnAggregationInfo; +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.AggregationDesc; +import org.apache.hadoop.hive.ql.plan.ExprNodeDesc; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.AggregationFunction; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.AggregationFunctionInfo; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.ColumnAggregationInfo; +import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; +import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory; +import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector; + +/* + * Specialized class for doing a vectorized group by that is lookup on multiple key columns (or a + * single non-long column) using a hash map. + */ +public abstract class VectorGroupByCommonOutputOperator extends VectorGroupByCommonAggregation { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByCommonOutputOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + protected transient VectorizedRowBatch outputBatch; + private transient VectorizedRowBatchCtx vrbCtx; + + /** + * Base abstract class for populating one column of the output for an aggregation function. + */ + private static abstract class VectorOutputAggrLongBasic { + + private static final long serialVersionUID = 1L; + + protected final AggregationFunction aggregationFunction; + + protected final int outputColumnNum; + + protected final int longsEntrySize; + + protected LongColumnVector longColumnVector; + protected long[] vector; + + public VectorOutputAggrLongBasic(AggregationFunction aggregationFunction, int outputColumnNum, + int longsEntrySize) { + this.aggregationFunction = aggregationFunction; + this.outputColumnNum = outputColumnNum; + this.longsEntrySize = longsEntrySize; + } + + /** + * Set the output batch once during runtime. + */ + public void setBatch(VectorizedRowBatch outputBatch) { + longColumnVector = (LongColumnVector) outputBatch.cols[outputColumnNum]; + vector = longColumnVector.vector; + } + + /** + * Populate the aggregation function output column with one or more aggregations. + */ + public abstract void apply(long[] longs, int longsIndex, int startBatchIndex, int count); + } + + /** + * Handles populating an aggregation function COUNT(*) output column. + */ + private static class VectorOutputAggrCountStar extends VectorOutputAggrLongBasic { + + protected final int aggregateOffset; + + public VectorOutputAggrCountStar(int aggregateOffset, AggregationFunction aggregationFunction, int outputColumnNum, + int longsEntrySize) { + super(aggregationFunction, outputColumnNum, longsEntrySize); + this.aggregateOffset = aggregateOffset; + } + + @Override + protected Object clone() { + return new VectorOutputAggrCountStar(aggregateOffset, aggregationFunction, outputColumnNum, + longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + for (int batchIndex = startBatchIndex, + countStartIndex = longsIndex + aggregateOffset; + count > 0; + count--, + batchIndex++, + countStartIndex += longsEntrySize) { + + vector[batchIndex] = longs[countStartIndex]; + } + } + } + + /** + * Abstract class for populating an aggregation function output column for the trivial or + * easy case of a key. + */ + private static abstract class VectorOutputAggrLongKey extends VectorOutputAggrLongBasic { + + protected final int keyNum; + protected final int keyBaseOffset; + + protected final long keyIsNullMask; + + public VectorOutputAggrLongKey(int keyNum, int keyBaseOffset, AggregationFunction aggregationFunction, + int outputColumnNum, int longsEntrySize) { + super(aggregationFunction, outputColumnNum, longsEntrySize); + this.keyNum = keyNum; + this.keyBaseOffset = keyBaseOffset; + + keyIsNullMask = (1L << keyNum); + } + } + + // Key trivial: MIN and MAX. Single-Key case (check if all NULLs entry). + private static class VectorOutputAggrLongKeyTrivialSingle extends VectorOutputAggrLongKey { + + public VectorOutputAggrLongKeyTrivialSingle(int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongKeyTrivialMulti(keyNum, keyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + if (longsIndex == 0) { + assert count == 1; + longColumnVector.noNulls = false; + longColumnVector.isNull[startBatchIndex] = true; + return; + } + + for (int batchIndex = startBatchIndex, + keyLongsIndex = longsIndex + keyBaseOffset + keyNum; + count > 0; + count--, + batchIndex++, + longsIndex += longsEntrySize, + keyLongsIndex += longsEntrySize) { + + vector[batchIndex] = longs[keyLongsIndex]; + } + } + } + + // Key trivial: MIN and MAX. Multi-Key case (null checking required). + private static class VectorOutputAggrLongKeyTrivialMulti extends VectorOutputAggrLongKey { + + public VectorOutputAggrLongKeyTrivialMulti(int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongKeyTrivialMulti(keyNum, keyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + for (int batchIndex = startBatchIndex, + keyLongsIndex = longsIndex + keyBaseOffset + keyNum; + count > 0; + count--, + batchIndex++, + longsIndex += longsEntrySize, + keyLongsIndex += longsEntrySize) { + + boolean isNull = (longs[longsIndex] & keyIsNullMask) != 0; + if (!isNull) { + vector[batchIndex] = longs[keyLongsIndex]; + } else { + longColumnVector.noNulls = false; + longColumnVector.isNull[batchIndex] = true; + } + } + } + } + + // Abstract class for easy cases involving a key column. + private static abstract class VectorOutputAggrKeyCountBase extends VectorOutputAggrLongKey { + + protected final int countStarAggrOffset; + + public VectorOutputAggrKeyCountBase(int countStarAggrOffset, int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + this.countStarAggrOffset = countStarAggrOffset; + } + } + + // Key Count: Easy. Single-Key case (check if all NULLs entry). + private static class VectorOutputAggrLongKeyCountSingle extends VectorOutputAggrKeyCountBase { + + public VectorOutputAggrLongKeyCountSingle(int countAggrOffset, + int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(countAggrOffset, keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongKeyCountMulti(countStarAggrOffset, keyNum, keyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + if (longsIndex == 0) { + assert count == 1; + longColumnVector.noNulls = false; + longColumnVector.isNull[startBatchIndex] = true; + return; + } + + for (int batchIndex = startBatchIndex, + countStartLongsIndex = longsIndex + countStarAggrOffset; + count > 0; + count--, + batchIndex++, + longsIndex += longsEntrySize, + countStartLongsIndex += longsEntrySize) { + + vector[batchIndex] = longs[countStartLongsIndex]; + } + } + } + + // Key Count: Easy. Multi-Key case (null checking required). + private static class VectorOutputAggrLongKeyCountMulti extends VectorOutputAggrKeyCountBase { + + public VectorOutputAggrLongKeyCountMulti(int countAggrOffset, + int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(countAggrOffset, keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongKeyCountMulti(countStarAggrOffset, keyNum, keyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + for (int batchIndex = startBatchIndex, + countStartLongsIndex = longsIndex + countStarAggrOffset; + count > 0; + count--, + batchIndex++, + longsIndex += longsEntrySize, + countStartLongsIndex += longsEntrySize) { + + boolean isNull = (longs[longsIndex] & keyIsNullMask) != 0; + if (!isNull) { + vector[batchIndex] = longs[countStartLongsIndex]; + } else { + longColumnVector.noNulls = false; + longColumnVector.isNull[batchIndex] = true; + } + } + } + } + + // Key Count: Easy. Single-Key case (check if all NULLs entry). + private static class VectorOutputAggrLongKeySumSingle extends VectorOutputAggrKeyCountBase { + + public VectorOutputAggrLongKeySumSingle(int countStarAggrOffset, + int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(countStarAggrOffset, keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongKeySumMulti(countStarAggrOffset, keyNum, keyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + if (longsIndex == 0) { + assert count == 1; + longColumnVector.noNulls = false; + longColumnVector.isNull[startBatchIndex] = true; + return; + } + + for (int batchIndex = startBatchIndex, + keyLongsIndex = longsIndex + keyBaseOffset + keyNum, + countStartLongsIndex = longsIndex + countStarAggrOffset; + count > 0; + count--, + batchIndex++, + longsIndex += longsEntrySize, + keyLongsIndex += longsEntrySize, + countStartLongsIndex += longsEntrySize) { + + vector[batchIndex] = longs[countStartLongsIndex] * longs[keyLongsIndex]; + } + } + } + // Key Count: Easy. Multi-Key case (null checking required). + private static class VectorOutputAggrLongKeySumMulti extends VectorOutputAggrKeyCountBase { + + public VectorOutputAggrLongKeySumMulti(int countStarAggrOffset, + int keyNum, int keyBaseOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(countStarAggrOffset, keyNum, keyBaseOffset, aggregationFunction, outputColumnNum, longsEntrySize); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongKeySumMulti(countStarAggrOffset, keyNum, keyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + for (int batchIndex = startBatchIndex, + keyLongsIndex = longsIndex + keyBaseOffset + keyNum, + countStartLongsIndex = longsIndex + countStarAggrOffset; + count > 0; + count--, + batchIndex++, + longsIndex += longsEntrySize, + keyLongsIndex += longsEntrySize, + countStartLongsIndex += longsEntrySize) { + + boolean isNull = (longs[longsIndex] & keyIsNullMask) != 0; + if (!isNull) { + vector[batchIndex] = longs[countStartLongsIndex] * longs[keyLongsIndex]; + } else { + longColumnVector.noNulls = false; + longColumnVector.isNull[batchIndex] = true; + } + } + } + } + + /** + * Populate an aggregation function output column for a Non-Key. + * + * Copies the aggregate by offset to the output when there are values for the column aggregates. + */ + private static class VectorOutputAggrLongNonKey extends VectorOutputAggrLongBasic { + + // The column position needed for has values flag testing. + protected final int columnAggregateNum; + + // The offset of the long aggregate. + protected final int aggregateOffset; + + // The offset of the has values flag word. + protected final int hasValuesOffset; + + // The has values mask computed from the column position. + protected final long hasValuesMask; + + public VectorOutputAggrLongNonKey(int columnAggregateNum, int aggregateOffset, int hasValuesOffset, + AggregationFunction aggregationFunction, int outputColumnNum, int longsEntrySize) { + super(aggregationFunction, outputColumnNum, longsEntrySize); + this.columnAggregateNum = columnAggregateNum; + this.aggregateOffset = aggregateOffset; + this.hasValuesOffset = hasValuesOffset; + + hasValuesMask = (1L << columnAggregateNum); + } + + @Override + protected Object clone() { + return new VectorOutputAggrLongNonKey(columnAggregateNum, aggregateOffset, hasValuesOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + + public void apply(long[] longs, int longsIndex, int startBatchIndex, int count) { + + for (int batchIndex = startBatchIndex, + hasValuesLongsIndex = longsIndex + hasValuesOffset, + aggregateLongsIndex = longsIndex + aggregateOffset; + count > 0; + count--, + batchIndex++, + hasValuesLongsIndex += longsEntrySize, + aggregateLongsIndex += longsEntrySize) { + + boolean hasValues = (longs[hasValuesLongsIndex] & hasValuesMask) != 0; + if (hasValues) { + vector[batchIndex] = longs[aggregateLongsIndex]; + } else { + longColumnVector.noNulls = false; + longColumnVector.isNull[batchIndex] = true; + } + } + } + } + + /** + * Determines which aggregation class is needed for each Non-Key column. + * + * The aggregation class handles the combination of basic aggregations (MIN, MAX, + * COUNT, SUM, etc) needed for each column + */ + @Override + protected void setupVectorOutput( + AggregationFunctionInfo[] aggrFuncInfos, + ArrayList nonKeyColumnAggrInfoList, + HashMap colAggrToNonKeyAggrMap) { + + ArrayList longVectorOutputList = + new ArrayList(); + + boolean isMultiKey = (groupByKeyColumnMap.length > 1); + int outputColumnNum = groupByKeyColumnMap.length; + for (AggregationFunctionInfo aggrFuncInfo : aggrFuncInfos) { + + AggregationFunction aggregationFunction = aggrFuncInfo.getAggregationFunction(); + + ColumnAggregationInfo columnAggrInfo = aggrFuncInfo.getColumnAggregationInfo(); + + VectorOutputAggrLongBasic outputAggr = null; + if (columnAggrInfo == null) { + + // COUNT(*) + + outputAggr = new VectorOutputAggrCountStar(longsAggrBaseOffset, aggregationFunction, + outputColumnNum, longsEntrySize); + + } else if (aggregationFunction.getIsComplex()) { + + // UNDONE: e.g. AVG not handled yet. + throw new RuntimeException("Complex aggregation functions not supported yet"); + + } else { + + // Which (single) basic aggregation is for this aggregation function? + // UNDONE: Different mappings for DOUBLE, etc. + BasicAggregation basicAggr = longAggrFuncToBasicAggrMap.get(aggregationFunction); + + if (columnAggrInfo.getIsKey()) { + + // Key aggregation is easy or trivial. + + int keyNum = columnAggrInfo.getKeyNum(); + switch (aggregationFunction) { + case MIN_FUNC: + case MAX_FUNC: + // Trivial copy key when key non-NULL. + if (isMultiKey) { + outputAggr = new VectorOutputAggrLongKeyTrivialMulti(keyNum, longsKeyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } else { + outputAggr = new VectorOutputAggrLongKeyTrivialSingle(keyNum, longsKeyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + break; + case COUNT_FUNC: + // Use COUNT(*) count when key non-NULL. + if (isMultiKey) { + outputAggr = new VectorOutputAggrLongKeyCountMulti( + /* countStarAggrOffset */ longsAggrBaseOffset, + keyNum, longsKeyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } else { + outputAggr = new VectorOutputAggrLongKeyCountSingle( + /* countStarAggrOffset */ longsAggrBaseOffset, + keyNum, longsKeyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + break; + case SUM_FUNC: + // Use COUNT(*) multiplied by key when key non-NULL. + if (isMultiKey) { + outputAggr = new VectorOutputAggrLongKeySumMulti( + /* countStarAggrOffset */ longsAggrBaseOffset, + keyNum, longsKeyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } else { + outputAggr = new VectorOutputAggrLongKeySumSingle( + /* countStarAggrOffset */ longsAggrBaseOffset, + keyNum, longsKeyBaseOffset, + aggregationFunction, outputColumnNum, longsEntrySize); + } + break; + default: + throw new RuntimeException("Aggregation function " + aggregationFunction.name() + " not expected"); + } + } else { + + // Non-Key aggregation copies the aggregate by offset to the output. + // Checking is required in case there were no non-null values found to aggregate. + + NonKeyColumnAggregationInfo nonKeyColumnAggrInfo = + colAggrToNonKeyAggrMap.get(columnAggrInfo); + int columnAggregationNum = nonKeyColumnAggrInfo.getColumnAggregationNum(); + + // Determine which aggregation offset is needed by this aggregation function. + int[] basicAggregationOffsets = nonKeyColumnAggrInfo.getBasicAggregationOffsets(); + int aggregateOffset = basicAggregationOffsets[basicAggr.value]; + + outputAggr = new VectorOutputAggrLongNonKey(columnAggregationNum, + longsAggrBaseOffset + aggregateOffset, + /* hasValuesOffset */ longsAggrBaseOffset - 1, aggregationFunction, outputColumnNum, + longsEntrySize); + } + } + + longVectorOutputList.add(outputAggr); + outputColumnNum++; + } + + longVectorOutputs = longVectorOutputList.toArray(new VectorOutputAggrLongBasic[0]); + } + + VectorOutputAggrLongBasic[] longVectorOutputs; + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByCommonOutputOperator() { + super(); + } + + public VectorGroupByCommonOutputOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + // UNDONE: Instead of initializing all the stuff the old VectorGroupByOperator does + // UNDONE: and then throwing it away --> Need to determine object inspectors differently... + + ArrayList aggrDesc = conf.getAggregators(); + VectorAggregateExpression[] aggregators = new VectorAggregateExpression[aggrDesc.size()]; + for (int i = 0; i < aggrDesc.size(); ++i) { + AggregationDesc aggDesc = aggrDesc.get(i); + aggregators[i] = + vContext.getAggregatorExpression(aggDesc, conf.getVectorDesc().isReduceMergePartial()); + } + + List objectInspectors = new ArrayList(); + + List keysDesc = conf.getKeys(); + + List outputFieldNames = conf.getOutputColumnNames(); + + // grouping id should be pruned, which is the last of key columns + // see ColumnPrunerGroupByProc + int outputKeyLength = conf.pruneGroupingSetId() ? keyExpressions.length - 1 : keyExpressions.length; + + VectorExpressionWriter[] keyOutputWriters = new VectorExpressionWriter[keyExpressions.length]; + + for(int i = 0; i < outputKeyLength; ++i) { + keyOutputWriters[i] = VectorExpressionWriterFactory. + genVectorExpressionWritable(keysDesc.get(i)); + objectInspectors.add(keyOutputWriters[i].getObjectInspector()); + } + + for (int i = 0; i < aggregators.length; ++i) { + aggregators[i].init(conf.getAggregators().get(i)); + objectInspectors.add(aggregators[i].getOutputObjectInspector()); + } + + outputObjInspector = ObjectInspectorFactory.getStandardStructObjectInspector( + outputFieldNames, objectInspectors); + + // Setup outputBatch. + + vrbCtx = new VectorizedRowBatchCtx(); + vrbCtx.init(vOutContext.getScratchColumnTypeMap(), (StructObjectInspector) outputObjInspector); + outputBatch = vrbCtx.createVectorizedRowBatch(); + + if (!isOnlyCountStar) { + + // Setup our helper objects that copy aggregates in the storage arrays + // into the output batch. + + for (VectorOutputAggrLongBasic longVectorOutput : longVectorOutputs) { + longVectorOutput.setBatch(outputBatch); + } + } + + return result; + } + + protected void outputVectorAggregates(int longsIndex, int startBatchIndex, + int count) { + + for (VectorOutputAggrLongBasic longVectorOutput : longVectorOutputs) { + longVectorOutput.apply(longs, longsIndex, startBatchIndex, count); + } + } + + /** + * Flush all of the keys and aggregations to the output. + */ + protected abstract void flushVector(boolean flushAllNullKey) throws HiveException; + + @Override + public void flushAndClear() throws HiveException { + flushVector(false); + clearHashTable(); + clearStorage(); + } + + /** + * On close, make sure a partially filled overflow batch gets forwarded. + */ + @Override + public void closeOp(boolean aborted) throws HiveException { + super.closeOp(aborted); + if (!aborted) { + flushVector(/* flushAllNullKey */ true); + if (outputBatch.size > 0) { + forward(outputBatch, null); + } + } + if (LOG.isDebugEnabled()) { + LOG.debug("VectorGroupByCommonOutputOperator closeOp " + batchCounter + " batches processed"); + } + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonStorageOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonStorageOperator.java new file mode 100644 index 0000000..c835564 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByCommonStorageOperator.java @@ -0,0 +1,135 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.Arrays; +import java.util.Collection; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; + +/* + * An single long value map optimized for vector map join. + */ +public abstract class VectorGroupByCommonStorageOperator extends VectorGroupByCommonOperator { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByCommonStorageOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + protected transient int nextLongsIndex; + protected transient int nextDoublesIndex; + + protected transient int longsArraySize; + protected transient long[] longs; + + protected transient int doublesArraySize; + protected transient double[] doubles; + + // Since the information for bytes is variable length, we need to track it separately from + // storageArrayNum. + // private transient int nextBytesArrayNum; + // private transient int nextBytesIndex; + + /* + * The longs index into the longs array. + */ + public final class LongsIndex { + public static final int bitLength = 32; + public static final long allBitsOn = (((long) 1) << bitLength) - 1; + public static final long bitMask = allBitsOn; + } + + /* + * The doubles index into the doubles array. + */ + public final class DoublesIndex { + public static final int bitLength = 30; + public static final int allBitsOn = (1 << bitLength) - 1; + public static final int bitShift = LongsIndex.bitLength; + public static final long bitMask = ((long) allBitsOn) << bitShift; + } + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByCommonStorageOperator() { + super(); + } + + public VectorGroupByCommonStorageOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + if (!isOnlyCountStar) { + + int logicalStorageSize = keyLimit; + + // All NULLs entry at index 0 is automatically allocated. + nextLongsIndex = longsEntrySize; + + longsArraySize = logicalStorageSize * longsEntrySize; + longs = new long[longsArraySize]; + + if (doublesEntrySize > 0) { + nextDoublesIndex = doublesEntrySize; + + doublesArraySize = logicalStorageSize * doublesEntrySize; + doubles = new double[doublesArraySize]; + } else { + nextDoublesIndex = -1; + + doublesArraySize = 0; + doubles = null; + } + } + + return result; + } + + protected void clearStorage() { + + // UNDONE: Just clear what was used... + + // Leave all NULLs entry alone. + + Arrays.fill(longs, longsEntrySize, longsArraySize, 0); + nextLongsIndex = longsEntrySize; + + if (doublesEntrySize > 0) { + Arrays.fill(doubles, doublesEntrySize, doublesEntrySize, 0); + nextDoublesIndex = doublesEntrySize; + } + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongCommonOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongCommonOperator.java new file mode 100644 index 0000000..032186b --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongCommonOperator.java @@ -0,0 +1,126 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.Collection; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.exec.vector.groupby.keyseries.VectorGroupByLongKeySeries; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; + +/* + * Specialized class for doing a vectorized group by that is lookup on multiple key columns (or a + * single non-long column) using a hash map. + */ +public abstract class VectorGroupByLongCommonOperator extends VectorGroupByCommonOutputOperator { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByLongCommonOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + private int singleKeyColumnNum; + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + protected transient VectorGroupByLongKeySeries longKeySeries; + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByLongCommonOperator() { + super(); + } + + public VectorGroupByLongCommonOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + + singleKeyColumnNum = groupByKeyColumnMap[0]; + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + longKeySeries = new VectorGroupByLongKeySeries(singleKeyColumnNum); + + return result; + } + + /** + * Flush all of the keys and aggregations to the output. + */ + @Override + protected void flushVector(boolean flushAllNullKey) throws HiveException { + + // Keys come first in the output. + LongColumnVector longKeyColumnVector = (LongColumnVector) outputBatch.cols[0]; + + // Handle NULL long key separately. + if (flushAllNullKey && atLeastAllNullKey) { + if (outputBatch.size == outputBatch.DEFAULT_SIZE) { + forward(outputBatch, null); + outputBatch.reset(); + } + longKeyColumnVector.noNulls = false; + longKeyColumnVector.isNull[outputBatch.size] = true; + outputVectorAggregates(/* longsIndex */ 0, outputBatch.size++, 1); + } + + // Loop over the arrays. + long[] vector = longKeyColumnVector.vector; + + // Determine the in-use count for current array (after NULL entry). + int currentCount = (nextLongsIndex - longsEntrySize) / longsEntrySize; + + int longsIndex = longsEntrySize; + int longKeyIndex = longsEntrySize + longsKeyBaseOffset; + + while (currentCount > 0) { + if (outputBatch.size == outputBatch.DEFAULT_SIZE) { + forward(outputBatch, null); + outputBatch.reset(); + } + int startBatchIndex = outputBatch.size; + int count = Math.min(currentCount, outputBatch.DEFAULT_SIZE - startBatchIndex); + + // Race down the longs array and pull long key out of each entry and store into + // the output batch. Since this is a single key, we know there are no null keys. + for (int i = startBatchIndex; i < startBatchIndex + count; i++) { + vector[i] = longs[longKeyIndex]; + longKeyIndex += longsEntrySize; + } + + outputVectorAggregates(longsIndex, startBatchIndex, count); + longsIndex += count * longsEntrySize; + + outputBatch.size += count; + currentCount -= count; + } + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongCountStarOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongCountStarOperator.java new file mode 100644 index 0000000..029a470 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongCountStarOperator.java @@ -0,0 +1,181 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.Collection; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; + +/* + * Specialized class for doing a vectorized group by that is lookup on multiple key columns (or a + * single non-long column) using a hash map. + */ +public class VectorGroupByLongCountStarOperator extends VectorGroupByLongCommonOperator { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByLongCountStarOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + private transient long allNullCount; + + private transient boolean zeroKeyPresent; + private transient long zeroKeyCount; + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByLongCountStarOperator() { + super(); + } + + public VectorGroupByLongCountStarOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + allNullCount = 0; + + return result; + } + + @Override + public void flushAndClear() throws HiveException { + flushVector(false); + clearHashTable(); + } + + @Override + public void process(Object row, int tag) throws HiveException { + + VectorizedRowBatch batch = (VectorizedRowBatch) row; + + batchCounter++; + + final int inputLogicalSize = batch.size; + + if (inputLogicalSize == 0) { + if (LOG.isDebugEnabled()) { + LOG.debug(CLASS_NAME + " batch #" + batchCounter + " empty"); + } + return; + } + + // Perform any key expressions. Results will go into scratch columns. + if (keyExpressions != null) { + for (VectorExpression ve : keyExpressions) { + ve.evaluate(batch); + } + } + + longKeySeries.processBatch(batch); + + int index = 0; + do { + int seriesCount = longKeySeries.currentSeriesCount; + + if (longKeySeries.getCurrentIsNull()) { + + // Single null long key is not represented in the hash table. + + allNullCount += seriesCount; + + atLeastAllNullKey = true; + + } else { + + long key = longKeySeries.currentValue; + + // The count is stored in the hash table's slot array. + + findOrCreateLongKeyCountStar(key, longKeySeries.currentHashCode, seriesCount); + + } + + index += seriesCount; + if (index >= inputLogicalSize) { + break; + } + longKeySeries.next(); + } while (true); + } + + /** + * Flush all of the keys and aggregations to the output. + */ + @Override + protected void flushVector(boolean flushAllNullKey) throws HiveException { + + // Keys come first in the output. + LongColumnVector longKeyColumnVector = (LongColumnVector) outputBatch.cols[0]; + + LongColumnVector countStarColumnVector = (LongColumnVector) outputBatch.cols[1]; + + // Handle NULL long key separately. + if (flushAllNullKey && atLeastAllNullKey) { + if (outputBatch.size == outputBatch.DEFAULT_SIZE) { + forward(outputBatch, null); + outputBatch.reset(); + } + longKeyColumnVector.noNulls = false; + longKeyColumnVector.isNull[outputBatch.size] = true; + countStarColumnVector.vector[outputBatch.size++] = allNullCount; + } + + long[] keyVector = longKeyColumnVector.vector; + long[] countVector = countStarColumnVector.vector; + + int keyCount = initLongCountStarIterator(); + while (keyCount > 0) { + if (outputBatch.size == outputBatch.DEFAULT_SIZE) { + forward(outputBatch, null); + outputBatch.reset(); + } + + int startBatchIndex = outputBatch.size; + int count = Math.min(keyCount, outputBatch.DEFAULT_SIZE - startBatchIndex); + + // Race down the slot table array and pull long key out of each entry and store into + // the output batch. + for (int i = startBatchIndex; i < startBatchIndex + count; i++) { + keyVector[i] = getLongCountStarKey(); + countVector[i] = getLongCountStarCount(); + } + outputBatch.size += count; + keyCount -= count; + } + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongOperator.java new file mode 100644 index 0000000..6afbd64 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/VectorGroupByLongOperator.java @@ -0,0 +1,138 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby; + +import java.util.Collection; +import java.util.concurrent.Future; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.hive.ql.exec.vector.VectorizationContext; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; +import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.ql.plan.OperatorDesc; + +/* + * Specialized class for doing a vectorized group by that is lookup on multiple key columns (or a + * single non-long column) using a hash map. + */ +public class VectorGroupByLongOperator extends VectorGroupByLongCommonOperator { + + private static final long serialVersionUID = 1L; + private static final String CLASS_NAME = VectorGroupByLongOperator.class.getName(); + private static final Log LOG = LogFactory.getLog(CLASS_NAME); + + // The above members are initialized by the constructor and must not be + // transient. + //--------------------------------------------------------------------------- + + //--------------------------------------------------------------------------- + // Pass-thru constructors. + // + + public VectorGroupByLongOperator() { + super(); + } + + public VectorGroupByLongOperator(VectorizationContext vContext, OperatorDesc conf) + throws HiveException { + super(vContext, conf); + } + + @Override + protected Collection> initializeOp(Configuration hconf) throws HiveException { + Collection> result = super.initializeOp(hconf); + + return result; + } + + @Override + public void process(Object row, int tag) throws HiveException { + + VectorizedRowBatch batch = (VectorizedRowBatch) row; + + batchCounter++; + + final int inputLogicalSize = batch.size; + + if (inputLogicalSize == 0) { + if (LOG.isDebugEnabled()) { + LOG.debug(CLASS_NAME + " batch #" + batchCounter + " empty"); + } + return; + } + + // Perform any key expressions. Results will go into scratch columns. + if (keyExpressions != null) { + for (VectorExpression ve : keyExpressions) { + ve.evaluate(batch); + } + } + + longKeySeries.processBatch(batch); + + int index = 0; + do { + int seriesCount = longKeySeries.currentSeriesCount; + + int longsAggregateIndex; + + if (longKeySeries.getCurrentIsNull()) { + + // Single null long key is not represented in the hash table. + // We put its storage in entry <0,0>. + + longsAggregateIndex = longsAggrBaseOffset; + + atLeastAllNullKey = true; + + } else { + + long key = longKeySeries.currentValue; + + // The method findOrCreateLongKey sets its results in the member variables: + // currentIsNewKey, currentStorageArrayNum, and currentLogicalIndex. + + findOrCreateLongKey(key, longKeySeries.currentHashCode); + + if (currentIsNewKey) { + + // We save the single long key in the entry as well as the slot table so when + // we are outputting we do not have to look at the slot table. We want to be able to + // just sequentially scan the storage entries in memory for good performance. + + longs[currentLongsIndex + longsKeyBaseOffset] = key; + } + longsAggregateIndex = currentLongsIndex + longsAggrBaseOffset; + + } + + aggregate(batch, index, seriesCount, + longs, longsAggregateIndex); + + index += seriesCount; + if (index >= inputLogicalSize) { + break; + } + longKeySeries.next(); + } while (true); + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggr.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggr.java new file mode 100644 index 0000000..5ffb57d --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggr.java @@ -0,0 +1,294 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import java.util.HashMap; +import java.util.Map; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hive.common.util.AnnotationUtils; + +/** + * This class is ... + * + */ +public abstract class VectorGroupByColAggr { + + // ORDER SENSITIVE --> Column aggregations does these basic aggregate operations in this exact + // order: + public enum BasicAggregation { + BASIC_MIN (0, 1 << 0, ColumnVector.Type.LONG), + BASIC_DOUBLE_MIN (1, 1 << 1, ColumnVector.Type.DOUBLE), + BASIC_MAX (2, 1 << 2, ColumnVector.Type.LONG), + BASIC_DOUBLE_MAX (3, 1 << 3, ColumnVector.Type.DOUBLE), + BASIC_COUNT (4, 1 << 4, ColumnVector.Type.LONG), + BASIC_SUM (5, 1 << 5, ColumnVector.Type.LONG), + BASIC_DOUBLE_SUM (6, 1 << 6, ColumnVector.Type.DOUBLE); + + public final int value; + public final int mask; + public final ColumnVector.Type columnVectorType; + + public static final BasicAggregation[] basicAggregationValues = BasicAggregation.values(); + + BasicAggregation(int value, int mask, ColumnVector.Type columnVectorType) { + this.value = value; + this.mask = mask; + this.columnVectorType = columnVectorType; + } + } + + protected int columnNum; + + public VectorGroupByColAggr(int columnNum) { + this.columnNum = columnNum; + } + + public int getColumnNum() { + return columnNum; + } + + public enum AggregateCombinationTypes { + LONG, + DOUBLE, + LONG_DOUBLE; + } + + public abstract AggregateCombinationTypes getAggregateCombinationTypes(); + + public int getLongAggrCount() { + + throw new RuntimeException("This variation not implemented"); + + } + + public int getDoubleAggrCount() { + + throw new RuntimeException("This variation not implemented"); + + } + + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + throw new RuntimeException("This variation not implemented"); + + } + + public boolean aggregateColumnLongDoubleAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex, + double[] doubles, int doublesIndex) { + + throw new RuntimeException("This variation not implemented"); + + } + + public boolean aggregateColumnDoubleAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, double[] doubles, int doublesIndex) { + + throw new RuntimeException("This variation not implemented"); + + } + + public static void addVariation(Map> map, + Class colAggrClass) { + + VectorGroupByColAggrAnnotation annotation = + AnnotationUtils.getAnnotation(colAggrClass, VectorGroupByColAggrAnnotation.class); + + int mask = 0; + for (BasicAggregation basicAgg : annotation.value()) { + mask |= (1 << basicAgg.value); + } + map.put(mask, colAggrClass); + } + + // **** LONG NON-KEY ***** + public static final Map> longNonKeyColAggrMap = + new HashMap>(); + static { + + // {MIN, MAX, COUNT, SUM, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinMaxCountSumDoubleSum.class); + + // {MIN, MAX, COUNT, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinMaxCountSum.class); + + // {MIN, MAX, COUNT, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinMaxCountDoubleSum.class); + + // {MIN, MAX, COUNT} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinMaxCount.class); + + // {MIN, COUNT, SUM, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinCountSumDoubleSum.class); + + // {MIN, COUNT, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinCountSum.class); + + // {MIN, COUNT, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinCountDoubleSum.class); + + // {MIN, COUNT} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinCount.class); + + // {MAX, COUNT, SUM, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMaxCountSumDoubleSum.class); + + // {MAX, COUNT, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMaxCountSum.class); + + // {MAX, COUNT, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMaxCountDoubleSum.class); + + // {MAX, COUNT} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMaxCount.class); + + // {COUNT, SUM, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongCountSumDoubleSum.class); + + // {COUNT, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongCountSum.class); + + // {COUNT, DOUBLE_SUM} + + // addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongCountDoubleSum.class); + + // {COUNT} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongCount.class); + + // *** NOTE ****: DOUBLE_SUM is always paired with COUNT. So, DOUBLE_SUM is not + // *** NOTE ****: represented below. + + // {MIN, MAX, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinMaxSum.class); + + // {MIN, MAX} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinMax.class); + + // {MIN, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMinSum.class); + + // {MIN} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMin.class); + + // {MAX, SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMaxSum.class); + + // {MAX} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongMax.class); + + // {SUM} + + addVariation(longNonKeyColAggrMap, VectorGroupByColAggrNonKeyLongSum.class); + + } + +/* + + // *** DOUBLE NON-KEY *** + public static final Map> doubleColAggrMap = + new HashMap>(); + static { + + // {DOUBLE_MIN, DOUBLE_MAX, COUNT, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinMaxCountSum.class); + + // {DOUBLE_MIN, DOUBLE_MAX, COUNT} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinMaxCount.class); + + // {DOUBLE_MIN, COUNT, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinCountSum.class); + + // {DOUBLE_MIN, COUNT} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinCount.class); + + // {DOUBLE_MAX, COUNT, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMaxCountSum.class); + + // {DOUBLE_MAX, COUNT} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMaxCount.class); + + // {COUNT, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleCountSum.class); + + // {COUNT} + + addVariation(doubleColAggrMap, VectorGroupByColAggCount.class); + + // {DOUBLE_MIN, DOUBLE_MAX, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinMaxSum.class); + + // {DOUBLE_MIN, DOUBLE_MAX} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinMax.class); + + // {DOUBLE_MIN, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMinSum.class); + + // {DOUBLE_MIN} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMin.class); + + // {DOUBLE_MAX, DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMaxSum.class); + + // {DOUBLE_MAX} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleMax.class); + + // {DOUBLE_SUM} + + addVariation(doubleColAggrMap, VectorGroupByColAggDoubleSum.class); + + } + */ +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrAnnotation.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrAnnotation.java new file mode 100644 index 0000000..e1ede36 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrAnnotation.java @@ -0,0 +1,31 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +@Retention(RetentionPolicy.RUNTIME) +public @interface VectorGroupByColAggrAnnotation { + + BasicAggregation[] value(); + +} diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongCount.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongCount.java new file mode 100644 index 0000000..da586e4 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongCount.java @@ -0,0 +1,213 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {COUNT} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_COUNT +}) +public class VectorGroupByColAggrNonKeyLongCount extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongCount(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 1; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + } + } + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + } + } + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongCountSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongCountSum.java new file mode 100644 index 0000000..5370223 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongCountSum.java @@ -0,0 +1,278 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {COUNT, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_COUNT, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongCountSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongCountSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 2; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long sum = vector[selected[logical]]; + + do { + logical++; + long value = vector[selected[logical]]; + sum += value; + } while (--count > 1); + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long sum = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + sum += value; + } + } + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long sum = vector[index]; + + do { + index++; + long value = vector[index]; + sum += value; + } while (--count > 1); + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long sum = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + sum += value; + } + } + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMax.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMax.java new file mode 100644 index 0000000..2775947 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMax.java @@ -0,0 +1,296 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MAX} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MAX +}) +public class VectorGroupByColAggrNonKeyLongMax extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMax(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 1; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long max = vector[selected[logical]]; + long sum = max; + + do { + logical++; + long value = vector[selected[logical]]; + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value > max) { + max = value; + } + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long max = vector[index]; + + do { + index++; + long value = vector[index]; + if (value > max) { + max = value; + } + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value > max) { + max = value; + } + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxCount.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxCount.java new file mode 100644 index 0000000..ffd33e8 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxCount.java @@ -0,0 +1,332 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MAX, COUNT} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MAX, + BasicAggregation.BASIC_COUNT +}) +public class VectorGroupByColAggrNonKeyLongMaxCount extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMaxCount(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 2; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long max = vector[selected[logical]]; + + do { + logical++; + long value = vector[selected[logical]]; + if (value > max) { + max = value; + } + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value > max) { + max = value; + } + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long max = vector[index]; + + do { + index++; + long value = vector[index]; + if (value > max) { + max = value; + } + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value > max) { + max = value; + } + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxCountSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxCountSum.java new file mode 100644 index 0000000..424e738 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxCountSum.java @@ -0,0 +1,365 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MAX, COUNT, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MAX, + BasicAggregation.BASIC_COUNT, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongMaxCountSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMaxCountSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 3; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long max = vector[selected[logical]]; + long sum = max; + + do { + logical++; + long value = vector[selected[logical]]; + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + long sum = max; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value > max) { + max = value; + } + sum += value; + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long max = vector[index]; + long sum = max; + + do { + index++; + long value = vector[index]; + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + long sum = max; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value > max) { + max = value; + } + sum += value; + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxSum.java new file mode 100644 index 0000000..2ec9430 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMaxSum.java @@ -0,0 +1,336 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MAX, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MAX, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongMaxSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMaxSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 2; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long max = vector[selected[logical]]; + long sum = max; + + do { + logical++; + long value = vector[selected[logical]]; + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + long sum = max; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value > max) { + max = value; + } + sum += value; + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MAX + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value > longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long max = vector[index]; + long sum = max; + + do { + index++; + long value = vector[index]; + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long max = vector[index]; + long sum = max; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value > max) { + max = value; + } + sum += value; + } + } + + // MAX + if (!hasValues) { + longs[longsIndex] = max; + } else { + if (max > longs[longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMin.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMin.java new file mode 100644 index 0000000..9f05c32 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMin.java @@ -0,0 +1,294 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN +}) +public class VectorGroupByColAggrNonKeyLongMin extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMin(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 1; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinCount.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinCount.java new file mode 100644 index 0000000..c9fd49a --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinCount.java @@ -0,0 +1,333 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, COUNT} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_COUNT +}) +public class VectorGroupByColAggrNonKeyLongMinCount extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinCount(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 2; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinCountSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinCountSum.java new file mode 100644 index 0000000..f751c43 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinCountSum.java @@ -0,0 +1,366 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, COUNT, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_COUNT, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongMinCountSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinCountSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 3; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + long sum = min; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + sum += value; + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + sum += value; + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + long sum = min; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + sum += value; + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + sum += value; + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMax.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMax.java new file mode 100644 index 0000000..0084b9c --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMax.java @@ -0,0 +1,332 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, MAX} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_MAX +}) +public class VectorGroupByColAggrNonKeyLongMinMax extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinMax(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 2; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + long max = min; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + long max = min; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxCount.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxCount.java new file mode 100644 index 0000000..10292d7 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxCount.java @@ -0,0 +1,377 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, MAX, COUNT} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_MAX, + BasicAggregation.BASIC_COUNT +}) +public class VectorGroupByColAggrNonKeyLongMinMaxCount extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinMaxCount(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 3; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + long max = min; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + long max = min; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxCountSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxCountSum.java new file mode 100644 index 0000000..d50dd74 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxCountSum.java @@ -0,0 +1,410 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, MAX, COUNT, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_MAX, + BasicAggregation.BASIC_COUNT, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongMinMaxCountSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinMaxCountSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 4; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + long max = min; + long sum = min; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++]++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + long max = min; + long sum = min; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += seriesCount; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + int nonNullCount = 1; + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + nonNullCount++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // COUNT + longs[longsIndex++] += nonNullCount; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxSum.java new file mode 100644 index 0000000..3abf051 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinMaxSum.java @@ -0,0 +1,381 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, MAX, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_MAX, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongMinMaxSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinMaxSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 3; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + long max = min; + long sum = min; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = value; + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + if (value > longs[++longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + long max = min; + long sum = min; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } while (--count > 1); + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long max = min; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + if (value > max) { + max = value; + } + sum += value; + } + } + + // MIN and MAX + if (!hasValues) { + longs[longsIndex++] = min; + longs[longsIndex] = max; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + if (max > longs[++longsIndex]) { + longs[longsIndex] = max; + } + } + longsIndex++; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinSum.java new file mode 100644 index 0000000..dc335ea --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongMinSum.java @@ -0,0 +1,337 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {MIN, SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_MIN, + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongMinSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongMinSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 2; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + + if (seriesCount == 1) { + + // Repeating Single Row. + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long min = vector[selected[logical]]; + long sum = min; + + do { + logical++; + long value = vector[selected[logical]]; + if (value < min) { + min = value; + } + sum += value; + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + sum += value; + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // MIN + if (!hasValues) { + longs[longsIndex] = value; + } else { + if (value < longs[longsIndex]) { + longs[longsIndex] = value; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long min = vector[index]; + long sum = min; + + do { + index++; + long value = vector[index]; + if (value < min) { + min = value; + } + sum += value; + } while (--count > 1); + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long min = vector[index]; + long sum = min; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + if (value < min) { + min = value; + } + sum += value; + } + } + + // MIN + if (!hasValues) { + longs[longsIndex] = min; + } else { + if (min < longs[longsIndex]) { + longs[longsIndex] = min; + } + } + longsIndex++; + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongSum.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongSum.java new file mode 100644 index 0000000..b9a6d8e --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/aggregation/VectorGroupByColAggrNonKeyLongSum.java @@ -0,0 +1,249 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.aggregation; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +import org.apache.hadoop.hive.ql.exec.vector.groupby.aggregation.VectorGroupByColAggr.BasicAggregation; + +/** + * + * This class handles the {SUM} aggregates for a non-Key LongColumnVector. + * + */ +@VectorGroupByColAggrAnnotation({ + BasicAggregation.BASIC_SUM +}) +public class VectorGroupByColAggrNonKeyLongSum extends VectorGroupByColAggr { + + public VectorGroupByColAggrNonKeyLongSum(int columnNum) { + super(columnNum); + } + + @Override + public AggregateCombinationTypes getAggregateCombinationTypes() { + return AggregateCombinationTypes.LONG; + } + + @Override + public int getLongAggrCount() { + return 1; + } + + @Override + public boolean aggregateColumnLongAggrs(VectorizedRowBatch batch, int startIndex, + int seriesCount, boolean hasValues, long[] longs, int longsIndex) { + + LongColumnVector colVector = (LongColumnVector) batch.cols[columnNum]; + + if (colVector.isRepeating) { + + // This batch's column happens to be repeating. + + if (colVector.noNulls || !colVector.isNull[0]) { + + // Repeating Column. + + long value = ((LongColumnVector) colVector).vector[0]; + + if (seriesCount == 1) { + + // Repeating Single Row. + + // SUM + longs[longsIndex++] += value; + + } else { + + // Repeating 2 or more in a series. + + // SUM + longs[longsIndex++] += seriesCount * value; + + } + return true; + } + } else if (batch.selectedInUse) { + + // Selected + + int[] selected = batch.selected; + + if (seriesCount == 1) { + + int batchIndex = selected[startIndex]; + + if (colVector.noNulls || !colVector.isNull[batchIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[batchIndex]; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int logical = startIndex; + long sum = vector[selected[logical]]; + + do { + logical++; + long value = vector[selected[logical]]; + sum += value; + } while (--count > 1); + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int logical = startIndex; + + // Outer loop looks for first non-NULL value. + do { + int index = selected[logical]; + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long sum = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + logical++; + index = selected[logical]; + if (!colVector.isNull[index]) { + long value = vector[index]; + sum += value; + } + } + + // SUM + longs[longsIndex] += sum; + + return true; + } + logical++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + + } else { + + // NOT Selected + + if (seriesCount == 1) { + + if (colVector.noNulls || !colVector.isNull[startIndex]) { + + // Single Row. + + long value = ((LongColumnVector) colVector).vector[startIndex]; + + // SUM + longs[longsIndex++] += value; + + return true; + } + } else { + + // 2 or more in a series. + + if (colVector.noNulls) { + + // Race through the non-NULL values. + + int count = seriesCount; + long vector[] = ((LongColumnVector) colVector).vector; + int index = startIndex; + long sum = vector[index]; + + do { + index++; + long value = vector[index]; + sum += value; + } while (--count > 1); + + // SUM + longs[longsIndex++] += sum; + + return true; + } else { + + // Individual NULL checking. + + boolean isNull[] = colVector.isNull; + + int count = seriesCount; + int index = startIndex; + + // Outer loop looks for first non-NULL value. + do { + if (!isNull[index]) { + + long vector[] = ((LongColumnVector) colVector).vector; + long sum = vector[index]; + + // Inner loop looks for more non-NULL values. + while (--count > 0) { + index++; + if (!colVector.isNull[index]) { + long value = vector[index]; + sum += value; + } + } + + // SUM + longs[longsIndex] += sum; + + return true; + } + index++; + } while (--count > 1); + + // We found no values this time -- return the old flag. + return hasValues; + } + } + } + + return hasValues; + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByKeySeries.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByKeySeries.java new file mode 100644 index 0000000..c40199e --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByKeySeries.java @@ -0,0 +1,40 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.keyseries; + +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +/** + * This class is ... + * + */ +public abstract class VectorGroupByKeySeries { + + public long currentHashCode; + public int currentSeriesCount; + + VectorGroupByKeySeries() { + } + + public abstract void processBatch(VectorizedRowBatch batch); + + public abstract boolean getCurrentIsNull(); + + public abstract void next(); +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByLongKeySeries.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByLongKeySeries.java new file mode 100644 index 0000000..0fe960e --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByLongKeySeries.java @@ -0,0 +1,206 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.keyseries; + +import java.util.Arrays; + +import org.apache.hadoop.hive.ql.exec.vector.LongColumnVector; +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; +import org.apache.hadoop.hive.ql.exec.vector.mapjoin.fast.VectorMapJoinFastLongHashUtil; + +/** + * This class is ... + * + */ +public class VectorGroupByLongKeySeries extends VectorGroupBySingleKeySeries { + + protected long[] values; + + public long currentValue; + + public VectorGroupByLongKeySeries(int columnNum) { + super(columnNum); + + values = new long[VectorizedRowBatch.DEFAULT_SIZE]; + } + + @Override + public void processBatch(VectorizedRowBatch batch) { + + LongColumnVector longColVector = (LongColumnVector) batch.cols[columnNum]; + + if (longColVector.isRepeating){ + seriesCounts[0] = batch.size; + if (longColVector.noNulls || !longColVector.isNull[0]) { + isNulls[0] = false; + long value = values[0] = longColVector.vector[0]; + hashCodes[0] = VectorMapJoinFastLongHashUtil.hashKey(value); + } else { + isNulls[0] = true; + } + count = 1; + } else { + long vector[] = longColVector.vector; + count = 0; + if (batch.selectedInUse) { + int[] selected = batch.selected; + if (longColVector.noNulls) { + + seriesCounts[0] = 1; + long prevKey = values[0] = vector[selected[0]]; + hashCodes[0] = VectorMapJoinFastLongHashUtil.hashKey(prevKey); + + for (int logical = 1; logical < batch.size; logical++) { + int index = selected[logical]; + long currentKey = vector[index]; + if (prevKey == currentKey) { + seriesCounts[count]++; + } else { + seriesCounts[++count] = 1; + values[count] = currentKey; + hashCodes[count] = VectorMapJoinFastLongHashUtil.hashKey(currentKey); + prevKey = currentKey; + } + } + Arrays.fill(isNulls, 0, ++count, false); + } else { + boolean[] isNull = longColVector.isNull; + + boolean prevKeyIsNull; + long prevKey; + seriesCounts[0] = 1; + int index = selected[0]; + if (isNull[index]) { + isNulls[0] = true; + prevKeyIsNull = true; + prevKey = values[0] = 0; // Give variable some value. + } else { + isNulls[0] = false; + prevKeyIsNull = false; + prevKey = values[0] = vector[index]; + hashCodes[0] = VectorMapJoinFastLongHashUtil.hashKey(prevKey); + } + + for (int logical = 1; logical < batch.size; logical++) { + index = selected[index]; + if (isNull[index]) { + if (prevKeyIsNull) { + seriesCounts[count]++; + } else { + seriesCounts[++count] = 1; + values[count] = 0; + isNulls[count] = true; + prevKeyIsNull = true; + } + } else { + long currentKey = vector[index]; + if (!prevKeyIsNull && prevKey == currentKey) { + seriesCounts[count]++; + } else { + seriesCounts[++count] = 1; + values[count] = currentKey; + isNulls[count] = false; + hashCodes[count] = VectorMapJoinFastLongHashUtil.hashKey(currentKey); + } + prevKeyIsNull = false; + prevKey = currentKey; + } + } + count++; + } + } else { + + // NOT selectedInUse + + if (longColVector.noNulls) { + + seriesCounts[0] = 1; + long prevKey = values[0] = vector[0]; + hashCodes[0] = VectorMapJoinFastLongHashUtil.hashKey(prevKey); + + for (int index = 1; index < batch.size; index++) { + long currentKey = vector[index]; + if (prevKey == currentKey) { + seriesCounts[count]++; + } else { + seriesCounts[++count] = 1; + values[count] = currentKey; + hashCodes[count] = VectorMapJoinFastLongHashUtil.hashKey(currentKey); + prevKey = currentKey; + } + } + Arrays.fill(isNulls, 0, ++count, false); + } else { + boolean[] isNull = longColVector.isNull; + + boolean prevKeyIsNull; + long prevKey; + seriesCounts[0] = 1; + if (isNull[0]) { + isNulls[0] = true; + prevKeyIsNull = true; + prevKey = values[0] = 0; // Give variable some value. + } else { + isNulls[0] = false; + prevKeyIsNull = false; + prevKey = values[0] = vector[0]; + hashCodes[0] = VectorMapJoinFastLongHashUtil.hashKey(prevKey); + } + + for (int index = 1; index < batch.size; index++) { + if (isNull[index]) { + if (prevKeyIsNull) { + seriesCounts[count]++; + } else { + seriesCounts[++count] = 1; + values[count] = 0; + isNulls[count] = true; + prevKeyIsNull = true; + } + } else { + long currentKey = vector[index]; + if (!prevKeyIsNull && prevKey == currentKey) { + seriesCounts[count]++; + } else { + seriesCounts[++count] = 1; + values[count] = currentKey; + isNulls[count] = false; + hashCodes[count] = VectorMapJoinFastLongHashUtil.hashKey(currentKey); + } + prevKeyIsNull = false; + prevKey = currentKey; + } + } + count++; + } + } + } + + if (initFirst()) { + currentValue = values[0]; + } else { + currentValue = 0; + } + } + + @Override + public void setNextValue(boolean currentIsNull) { + currentValue = (currentIsNull ? 0: values[position]); + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByLongMultiKeySeries.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByLongMultiKeySeries.java new file mode 100644 index 0000000..fc13f22 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByLongMultiKeySeries.java @@ -0,0 +1,96 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.keyseries; + +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +/** + * This class is ... + * + */ +public class VectorGroupByLongMultiKeySeries extends VectorGroupByMultiKeySeries { + + VectorGroupByLongKeySeries[] longKeys; + + private final long allNullMask; + + VectorGroupByLongMultiKeySeries(int[] longColumnNums) { + super(); + longKeys = new VectorGroupByLongKeySeries[longColumnNums.length]; + for (int i = 0; i < longColumnNums.length; i++) { + int longColumnNum = longColumnNums[i]; + longKeys[i++] = new VectorGroupByLongKeySeries(longColumnNum); + } + allNullMask = (1 << longColumnNums.length) - 1; + } + + @Override + public void processBatch(VectorizedRowBatch batch) { + + longKeys[0].processBatch(batch); + if (longKeys[0].getCurrentIsNull()) { + currentNullMask = (1 << 0); + currentHashCode = 0; + } else { + currentNullMask = 0; + currentHashCode = longKeys[0].currentHashCode; + } + currentSeriesCount = longKeys[0].currentSeriesCount; + for (int i = 1; i < longKeys.length; i++) { + VectorGroupByLongKeySeries longKey = longKeys[0]; + longKey.processBatch(batch); + if (longKey.getCurrentIsNull()) { + currentNullMask |= (1 << i); + } else { + currentHashCode ^= longKey.currentHashCode; + } + currentSeriesCount = Math.min(currentSeriesCount, longKey.currentSeriesCount); + } + } + + @Override + public boolean getCurrentIsNull() { + return (currentNullMask == allNullMask); + } + + public void next() { + + int seriesCount = currentSeriesCount; + + longKeys[0].advance(seriesCount); + if (longKeys[0].getCurrentIsNull()) { + currentNullMask = (1 << 0); + currentHashCode = 0; + } else { + currentNullMask = 0; + currentHashCode = longKeys[0].currentHashCode; + } + currentSeriesCount = longKeys[0].currentSeriesCount; + for (int i = 1; i < longKeys.length; i++) { + VectorGroupByLongKeySeries longKey = longKeys[0]; + longKey.advance(seriesCount); + if (longKey.getCurrentIsNull()) { + currentNullMask |= (1 << i); + } else { + currentHashCode ^= longKey.currentHashCode; + } + currentSeriesCount = Math.min(currentSeriesCount, longKey.currentSeriesCount); + } + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByMultiKeySeries.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByMultiKeySeries.java new file mode 100644 index 0000000..be882e9 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupByMultiKeySeries.java @@ -0,0 +1,32 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.keyseries; + +/** + * This class is ... + * + */ +public abstract class VectorGroupByMultiKeySeries extends VectorGroupByKeySeries { + + protected long currentNullMask; + + VectorGroupByMultiKeySeries() { + super(); + } +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupBySingleKeySeries.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupBySingleKeySeries.java new file mode 100644 index 0000000..34f9308 --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/groupby/keyseries/VectorGroupBySingleKeySeries.java @@ -0,0 +1,88 @@ +/** + * 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.hadoop.hive.ql.exec.vector.groupby.keyseries; + +import org.apache.hadoop.hive.ql.exec.vector.VectorizedRowBatch; + +/** + * This class is ... + * + */ +public abstract class VectorGroupBySingleKeySeries extends VectorGroupByKeySeries { + + protected final int columnNum; + + protected int count; + + protected final int[] seriesCounts; + protected final boolean[] isNulls; + protected final long[] hashCodes; + + protected int position; + + private boolean currentIsNull; + + VectorGroupBySingleKeySeries(int columnNum) { + super(); + this.columnNum = columnNum; + + count = 0; + + seriesCounts = new int[VectorizedRowBatch.DEFAULT_SIZE]; + isNulls = new boolean[VectorizedRowBatch.DEFAULT_SIZE]; + hashCodes = new long[VectorizedRowBatch.DEFAULT_SIZE]; + } + + @Override + public boolean getCurrentIsNull() { + return currentIsNull; + } + + protected boolean initFirst() { + currentIsNull = isNulls[0]; + currentHashCode = hashCodes[0]; + currentSeriesCount = seriesCounts[0]; + position = 0; + return !currentIsNull; + } + + // When used as a single key, whole series is consumed. + @Override + public void next() { + position++; + currentIsNull = isNulls[position]; + currentHashCode = (currentIsNull ? 0 : hashCodes[position]); + currentSeriesCount = seriesCounts[position]; + setNextValue(currentIsNull); + } + + public void advance(int seriesCount) { + + currentSeriesCount -= seriesCount; + if (currentSeriesCount == 0) { + position++; + currentIsNull = isNulls[position]; + currentHashCode = (currentIsNull ? 0 : hashCodes[position]); + currentSeriesCount = seriesCounts[position]; + setNextValue(currentIsNull); + } + } + + protected abstract void setNextValue(boolean currentIsNull); +} \ No newline at end of file diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java index 6e86d69..552e461 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java @@ -41,7 +41,6 @@ import org.apache.hadoop.hive.ql.exec.spark.SparkTask; import org.apache.hadoop.hive.ql.exec.tez.TezTask; import org.apache.hadoop.hive.ql.exec.vector.VectorExpressionDescriptor; -import org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator; import org.apache.hadoop.hive.ql.exec.vector.mapjoin.VectorMapJoinInnerBigOnlyLongOperator; import org.apache.hadoop.hive.ql.exec.vector.mapjoin.VectorMapJoinInnerBigOnlyMultiKeyOperator; import org.apache.hadoop.hive.ql.exec.vector.mapjoin.VectorMapJoinInnerBigOnlyStringOperator; @@ -54,6 +53,8 @@ import org.apache.hadoop.hive.ql.exec.vector.mapjoin.VectorMapJoinOuterLongOperator; import org.apache.hadoop.hive.ql.exec.vector.mapjoin.VectorMapJoinOuterMultiKeyOperator; import org.apache.hadoop.hive.ql.exec.vector.mapjoin.VectorMapJoinOuterStringOperator; +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector.Type; +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; import org.apache.hadoop.hive.ql.exec.vector.VectorMapJoinOperator; import org.apache.hadoop.hive.ql.exec.vector.VectorMapJoinOuterFilteredOperator; import org.apache.hadoop.hive.ql.exec.vector.VectorSMBMapJoinOperator; @@ -61,6 +62,8 @@ import org.apache.hadoop.hive.ql.exec.vector.VectorizationContextRegion; import org.apache.hadoop.hive.ql.exec.vector.VectorizedInputFormatInterface; import org.apache.hadoop.hive.ql.exec.vector.expressions.aggregates.VectorAggregateExpression; +import org.apache.hadoop.hive.ql.exec.vector.groupby.VectorGroupByLongCountStarOperator; +import org.apache.hadoop.hive.ql.exec.vector.groupby.VectorGroupByLongOperator; import org.apache.hadoop.hive.ql.lib.DefaultGraphWalker; import org.apache.hadoop.hive.ql.lib.DefaultRuleDispatcher; import org.apache.hadoop.hive.ql.lib.Dispatcher; @@ -92,6 +95,10 @@ import org.apache.hadoop.hive.ql.plan.SparkWork; import org.apache.hadoop.hive.ql.plan.TableScanDesc; import org.apache.hadoop.hive.ql.plan.TezWork; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.ColumnAggregationInfo; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.AggregationFunction; +import org.apache.hadoop.hive.ql.plan.VectorGroupByAggregrationInfo.AggregationFunctionInfo; import org.apache.hadoop.hive.ql.plan.VectorGroupByDesc; import org.apache.hadoop.hive.ql.plan.VectorMapJoinDesc; import org.apache.hadoop.hive.ql.plan.VectorMapJoinDesc.HashTableImplementationType; @@ -138,6 +145,7 @@ import org.apache.hadoop.hive.ql.udf.generic.*; import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; +import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector.Category; import org.apache.hadoop.hive.serde2.objectinspector.StructField; import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector; import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo; @@ -1298,15 +1306,15 @@ private boolean validateAggregationIsPrimitive(VectorAggregateExpression vectorA return (outputObjInspector.getCategory() == ObjectInspector.Category.PRIMITIVE); } - private boolean validateAggregationDesc(AggregationDesc aggDesc, boolean isReduceMergePartial, + private boolean validateAggregationDesc(AggregationDesc aggrDesc, boolean isReduceMergePartial, boolean hasKeys) { - String udfName = aggDesc.getGenericUDAFName().toLowerCase(); + String udfName = aggrDesc.getGenericUDAFName().toLowerCase(); if (!supportedAggregationUdfs.contains(udfName)) { LOG.info("Cannot vectorize groupby aggregate expression: UDF " + udfName + " not supported"); return false; } - if (aggDesc.getParameters() != null && !validateExprNodeDesc(aggDesc.getParameters())) { + if (aggrDesc.getParameters() != null && !validateExprNodeDesc(aggrDesc.getParameters())) { LOG.info("Cannot vectorize groupby aggregate expression: UDF parameters not supported"); return false; } @@ -1315,7 +1323,7 @@ private boolean validateAggregationDesc(AggregationDesc aggDesc, boolean isReduc VectorizationContext vc = new ValidatorVectorizationContext(); VectorAggregateExpression vectorAggrExpr; try { - vectorAggrExpr = vc.getAggregatorExpression(aggDesc, isReduceMergePartial); + vectorAggrExpr = vc.getAggregatorExpression(aggrDesc, isReduceMergePartial); } catch (Exception e) { // We should have already attempted to vectorize in validateAggregationDesc. LOG.info("Vectorization of aggreation should have succeeded ", e); @@ -1561,9 +1569,6 @@ private boolean isBigTableOnlyResults(MapJoinDesc desc) { break; } - vectorOp = OperatorFactory.getVectorOperator(opClass, op.getConf(), vContext); - LOG.info("Vectorizer vectorizeOperator map join class " + vectorOp.getClass().getSimpleName()); - boolean minMaxEnabled = HiveConf.getBoolVar(hiveConf, HiveConf.ConfVars.HIVE_VECTORIZATION_MAPJOIN_NATIVE_MINMAX_ENABLED); @@ -1572,6 +1577,10 @@ private boolean isBigTableOnlyResults(MapJoinDesc desc) { vectorDesc.setHashTableKind(hashTableKind); vectorDesc.setHashTableKeyType(hashTableKeyType); vectorDesc.setMinMaxEnabled(minMaxEnabled); + + vectorOp = OperatorFactory.getVectorOperator(opClass, op.getConf(), vContext); + LOG.info("Vectorizer vectorizeOperator map join class " + vectorOp.getClass().getSimpleName()); + return vectorOp; } @@ -1636,6 +1645,228 @@ private boolean canSpecializeMapJoin(Operator op, MapJoi return specialize; } + private Operator specializeGroupByOperator( + Operator op, VectorizationContext vContext, GroupByDesc desc, + VectorGroupByAggregrationInfo aggrInfo) throws HiveException { + + Operator vectorOp = null; + Class> opClass = null; + + boolean isOnlyCountStar = aggrInfo.getHasCountStar() && !aggrInfo.getHasNonCountStar(); + + ArrayList keyExprs = desc.getKeys(); + ArrayList aggrs = desc.getAggregators(); + + // UNDONE: For now, only LONG. + VectorGroupByDesc.HashTableKeyType hashTableKeyType = VectorGroupByDesc.HashTableKeyType.LONG; + + if (!isOnlyCountStar) { + switch (hashTableKeyType) { + case LONG: + opClass = VectorGroupByLongOperator.class; + break; + // case STRING: + // opClass = VectorGroupByStringOperator.class; + // break; + // case MULTI_KEY: + // opClass = VectorGroupByMultiKeyOperator.class; + // break; + default: + throw new HiveException("Unknown hash table key type " + hashTableKeyType); + } + } else { + switch (hashTableKeyType) { + case LONG: + opClass = VectorGroupByLongCountStarOperator.class; + break; + // case STRING: + // opClass = VectorGroupByStringOperator.class; + // break; + // case MULTI_KEY: + // opClass = VectorGroupByMultiKeyOperator.class; + // break; + default: + throw new HiveException("Unknown hash table key type " + hashTableKeyType); + } + } + + VectorGroupByDesc vectorDesc = desc.getVectorDesc(); + vectorDesc.setIsOnlyCountStar(isOnlyCountStar); + vectorDesc.setHashTableKeyType(hashTableKeyType); + vectorDesc.setAggregationInfo(aggrInfo); + + // UNDONE: For now we are not handling AVG yet. + vectorDesc.setVectorOutput(true); + + vectorOp = OperatorFactory.getVectorOperator(opClass, op.getConf(), vContext); + LOG.info("Vectorizer vectorizeOperator group by class " + vectorOp.getClass().getSimpleName()); + + return vectorOp; + } + + // + // Currently, only these aggregations are supported: + // COUNT(*) or COUNT(column), or + // MIN, MAX, SUM supported for Hive integer data types (i.e. LongColumnVector). + // + private boolean canSpecializeAggregationFunction(AggregationDesc aggrDesc, + HashMap columnAggregationMap, AggregationFunctionInfo aggrFuncInfo) + throws HiveException { + + String aggregationFunctionName = aggrDesc.getGenericUDAFName().toLowerCase(); + AggregationFunction aggregationFunction = + AggregationFunction.nameToAggregationFunction.get(aggregationFunctionName); + if (aggregationFunction == null) { + return false; + } + + // UNDONE: Not ready for AVG yet. + if (aggregationFunction == AggregationFunction.AVG_FUNC) { + return false; + } + + ArrayList paramDescList = aggrDesc.getParameters(); + int paramCount = paramDescList.size(); + if (paramCount == 0) { + if (aggregationFunction != AggregationFunction.COUNT_FUNC) { + return false; + } + // COUNT(*) has no associated column information. + aggrFuncInfo.set(aggregationFunction, null); + return true; + } else if (paramCount != 1) { + return false; + } + + // For now, restrict data type to longs and doubles. + ExprNodeColumnDesc inputColumnExpr = (ExprNodeColumnDesc) paramDescList.get(0); + TypeInfo typeInfo = inputColumnExpr.getTypeInfo(); + if (typeInfo.getCategory() != Category.PRIMITIVE) { + return false; + } + Type columnVectorType = VectorizationContext.getColumnVectorTypeFromTypeInfo(typeInfo); + + // UNDONE: For now, restrict to LONG. + if (columnVectorType != ColumnVector.Type.LONG) { + return false; + } + + String columnName = inputColumnExpr.getColumn(); + + ColumnAggregationInfo columnAggrInfo; + if (columnAggregationMap.containsKey(columnName)) { + columnAggrInfo = columnAggregationMap.get(columnName); + } else { + columnAggrInfo = new ColumnAggregationInfo(columnVectorType); + columnAggregationMap.put(columnName, columnAggrInfo); + } + columnAggrInfo.addFunction(aggregationFunction); + + aggrFuncInfo.set(aggregationFunction, columnAggrInfo); + + return true; + } + + private boolean canSpecializeGroupBy(GroupByDesc desc, + boolean isTez, VectorGroupByAggregrationInfo aggrInfo) throws HiveException { + + boolean isMergePartial = (desc.getMode() != GroupByDesc.Mode.HASH); + if (isMergePartial) { + return false; + } + + ArrayList keyExprs = desc.getKeys(); + boolean hasKeys = (keyExprs.size() > 0); + if (!hasKeys) { + return false; + } + + HashMap columnAggregationMap = + new HashMap(); + + // Add the keys to the map. + int keyNum = 0; + for (ExprNodeDesc keyExpr : keyExprs) { + ExprNodeColumnDesc keyColumnExpr = (ExprNodeColumnDesc) keyExpr; + String columnName = keyColumnExpr.getColumn(); + ColumnVector.Type columnVectorType = + VectorizationContext.getColumnVectorTypeFromTypeInfo(keyColumnExpr.getTypeInfo()); + + // UNDONE: For now, restrict to LONG. + if (columnVectorType != ColumnVector.Type.LONG) { + return false; + } + ColumnAggregationInfo columnAggrInfo = new ColumnAggregationInfo(keyNum++, columnVectorType); + columnAggregationMap.put(columnName, columnAggrInfo); + } + + ArrayList aggrDescs = desc.getAggregators(); + + ArrayList aggrFuncInfoList = new ArrayList(); + for (AggregationDesc aggrDesc : aggrDescs) { + AggregationFunctionInfo aggrFuncInfo = new AggregationFunctionInfo(); + if (!canSpecializeAggregationFunction(aggrDesc, columnAggregationMap, aggrFuncInfo)) { + return false; + } + aggrFuncInfoList.add(aggrFuncInfo); + } + + // What is the overall COUNT(*) picture? + + boolean hasNonCountStar = false; + boolean hasCountStar = false; + for (AggregationFunctionInfo aggrFuncInfo : aggrFuncInfoList) { + ColumnAggregationInfo columnAggrInfo = aggrFuncInfo.getColumnAggregationInfo(); + if (columnAggrInfo == null) { + // COUNT(*) + hasCountStar = true; + continue; + } + + // Other aggregation -- can't specialize to COUNT(*) only. + hasNonCountStar = true; + + boolean[] aggregationFunctionsPresent = columnAggrInfo.getAggregationFunctionsPresent(); + if (columnAggrInfo.getIsKey()) { + + // Aggregation on a key has trivial cases that can be computed at hash table flush time. + + for (AggregationFunction aggrFunc : AggregationFunction.values()) { + if (aggregationFunctionsPresent[aggrFunc.getValue()]) { + switch (aggrFunc) { + case MIN_FUNC: + case MAX_FUNC: + // Trivial copy key when key non-NULL. + break; + case COUNT_FUNC: + // Use COUNT(*) count when key non-NULL. + hasCountStar = true; + break; + case SUM_FUNC: + // Use COUNT(*) multiplied by key when key non-NULL. + hasCountStar = true; + break; + default: + throw new RuntimeException("Aggregation function " + aggrFunc.name() + " not expected"); + } + } + } + } else { + + // Non-Key column. + + } + } + + AggregationFunctionInfo[] aggrFuncInfos = aggrFuncInfoList.toArray(new AggregationFunctionInfo[0]); + aggrInfo.setAggregationFunctionInfos(aggrFuncInfos); + aggrInfo.setColumnAggregationMap(columnAggregationMap); + aggrInfo.setHasNonCountStar(hasNonCountStar); + aggrInfo.setHasCountStar(hasCountStar); + + return true; + } + Operator vectorizeOperator(Operator op, VectorizationContext vContext, boolean isTez) throws HiveException { Operator vectorOp = null; @@ -1668,15 +1899,27 @@ private boolean canSpecializeMapJoin(Operator op, MapJoi } else { - // TEMPORARY Until Native Vector Map Join with Hybrid passes tests... - // HiveConf.setBoolVar(physicalContext.getConf(), - // HiveConf.ConfVars.HIVEUSEHYBRIDGRACEHASHJOIN, false); - vectorOp = specializeMapJoinOperator(op, vContext, desc); } } break; case GROUPBY: + { + VectorGroupByAggregrationInfo aggrInfo = new VectorGroupByAggregrationInfo(); + GroupByDesc desc = (GroupByDesc) op.getConf(); + boolean specialize = canSpecializeGroupBy(desc, isTez, aggrInfo); + + if (!specialize) { + + vectorOp = OperatorFactory.getVectorOperator(op.getConf(), vContext); + + } else { + + vectorOp = specializeGroupByOperator(op, vContext, desc, aggrInfo); + + } + } + break; case FILTER: case SELECT: case FILESINK: diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByAggregrationInfo.java ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByAggregrationInfo.java new file mode 100644 index 0000000..72fac3e --- /dev/null +++ ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByAggregrationInfo.java @@ -0,0 +1,209 @@ +/** + * 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.hadoop.hive.ql.plan; + +import java.util.HashMap; +import java.util.Map; + +import org.apache.hadoop.hive.ql.exec.vector.ColumnVector; + +/** + * VectorGroupByAggregrationInfo. + * + * A convenience data structure that has information needed to vectorize group by. + * + * It is created by the Vectorizer when it is determining whether it can specialize so the + * information doesn't have to be recreated again and agains by the VectorGroupByOperator's + * constructors and later during execution. + */ +public class VectorGroupByAggregrationInfo { + + private static long serialVersionUID = 1L; + + // The aggregation functions we currently support. + public enum AggregationFunction { + MIN_FUNC (0, "min", false), + MAX_FUNC (1, "max", false), + COUNT_FUNC (2, "count", false), + SUM_FUNC (3, "sum", false), + AVG_FUNC (4, "avg", true); + + private final int value; + private final String name; + private final boolean isComplex; + + public static final AggregationFunction[] aggregationFunctionValues = + AggregationFunction.values(); + + AggregationFunction(int val, String name, boolean isComplex) { + this.value = val; + this.name = name; + this.isComplex = isComplex; + } + + public int getValue() { + return value; + } + public boolean getIsComplex() { + return isComplex; + } + + public static final Map nameToAggregationFunction = + new HashMap(); + static { + for (AggregationFunction aggrFunc : values()) { + nameToAggregationFunction.put(aggrFunc.name, aggrFunc); + } + } + } + + /** + * Information on the aggregation(s) being done on a particular column. + * + * In vectorized group by, we can do one or more aggregations on a column in one pass during + * execution. + */ + public static class ColumnAggregationInfo { + + // Aggregation on a key can be trivial or easy, so we remember this information. + private final boolean isKey; + private final int keyNum; + + private final ColumnVector.Type columnVectorType; + + // Indicates which aggregation function(s) are being applied to this column. + private boolean[] aggregationFunctionsPresent; + + private ColumnAggregationInfo(boolean isKey, int keyNum, ColumnVector.Type columnVectorType) { + this.isKey = isKey; + this.keyNum = keyNum; + this.columnVectorType = columnVectorType; + + aggregationFunctionsPresent = new boolean[AggregationFunction.aggregationFunctionValues.length]; + } + + public ColumnAggregationInfo(int keyNum, ColumnVector.Type columnVectorType) { + this(true, keyNum, columnVectorType); + } + + public ColumnAggregationInfo(ColumnVector.Type columnVectorType) { + this(false, -1, columnVectorType); + } + + public boolean getIsKey() { + return isKey; + } + + public int getKeyNum() { + return keyNum; + } + + public ColumnVector.Type getColumnVectorType() { + return columnVectorType; + } + + public void addFunction(AggregationFunction aggregationFunction) { + aggregationFunctionsPresent[aggregationFunction.value] = true; + } + + public boolean[] getAggregationFunctionsPresent() { + return aggregationFunctionsPresent; + } + } + + /** + * Information on each aggregation function being performed. + * + * It is the aggregation function output plus a reference to a column, which may be shared by + * other aggregation function outputs. + * + * If the column reference is null, it is COUNT(*). + */ + public static class AggregationFunctionInfo { + + private AggregationFunction aggregationFunction; + + private ColumnAggregationInfo ColumnAggregationInfo; + + public AggregationFunctionInfo() { + this.aggregationFunction = null; + this.ColumnAggregationInfo = null; + } + + public void set(AggregationFunction aggregationFunction, + ColumnAggregationInfo ColumnAggregationInfo) { + this.aggregationFunction = aggregationFunction; + this.ColumnAggregationInfo = ColumnAggregationInfo; + } + + public AggregationFunction getAggregationFunction() { + return aggregationFunction; + } + + public ColumnAggregationInfo getColumnAggregationInfo() { + return ColumnAggregationInfo; + } + } + + + private boolean hasNonCountStar; + private boolean hasCountStar; + + private AggregationFunctionInfo[] aggregationFunctionInfos; + private HashMap columnAggregationMap; + + public VectorGroupByAggregrationInfo() { + hasNonCountStar = false; + hasCountStar = false; + aggregationFunctionInfos = null; + columnAggregationMap = null; + } + + public AggregationFunctionInfo[] getAggregationFunctionInfos() { + return aggregationFunctionInfos; + } + + public void setAggregationFunctionInfos(AggregationFunctionInfo[] aggregationFunctionInfos) { + this.aggregationFunctionInfos = aggregationFunctionInfos; + } + + public HashMap getColumnAggregationMap() { + return columnAggregationMap; + } + + public void setColumnAggregationMap(HashMap columnAggregationMap) { + this.columnAggregationMap = columnAggregationMap; + } + + public boolean getHasNonCountStar() { + return hasNonCountStar; + } + + public void setHasNonCountStar(boolean hasNonCountStar) { + this.hasNonCountStar = hasNonCountStar; + } + + public boolean getHasCountStar() { + return hasCountStar; + } + + public void setHasCountStar(boolean hasCountStar) { + this.hasCountStar = hasCountStar; + } +} diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByDesc.java ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByDesc.java index 7e791f2..abf6f57 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByDesc.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/VectorGroupByDesc.java @@ -18,6 +18,8 @@ package org.apache.hadoop.hive.ql.plan; +import org.apache.hadoop.hive.ql.plan.VectorMapJoinDesc.HashTableKeyType; + /** * VectorGroupByDesc. * @@ -30,13 +32,29 @@ private static long serialVersionUID = 1L; + public static enum HashTableKeyType { + NONE, + LONG, + STRING, + MULTI_KEY + } + private boolean isReduceMergePartial; private boolean isVectorOutput; + private HashTableKeyType hashTableKeyType; + + private boolean isOnlyCountStar; + + private VectorGroupByAggregrationInfo aggregationInfo; + public VectorGroupByDesc() { - this.isReduceMergePartial = false; - this.isVectorOutput = false; + isReduceMergePartial = false; + isVectorOutput = false; + hashTableKeyType = HashTableKeyType.NONE; + isOnlyCountStar = false; + aggregationInfo = null; } public boolean isReduceMergePartial() { @@ -54,4 +72,28 @@ public boolean isVectorOutput() { public void setVectorOutput(boolean isVectorOutput) { this.isVectorOutput = isVectorOutput; } + + public HashTableKeyType hashTableKeyType() { + return hashTableKeyType; + } + + public void setHashTableKeyType(HashTableKeyType hashTableKeyType) { + this.hashTableKeyType = hashTableKeyType; + } + + public boolean isOnlyCountStar() { + return isOnlyCountStar; + } + + public void setIsOnlyCountStar(boolean isOnlyCountStar) { + this.isOnlyCountStar = isOnlyCountStar; + } + + public void setAggregationInfo(VectorGroupByAggregrationInfo aggregationInfo) { + this.aggregationInfo = aggregationInfo; + } + + public VectorGroupByAggregrationInfo getAggregationInfo() { + return aggregationInfo; + } } diff --git ql/src/test/queries/clientpositive/vector_groupby1.q ql/src/test/queries/clientpositive/vector_groupby1.q new file mode 100644 index 0000000..bb8c76b --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby1.q @@ -0,0 +1,46 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE; + +LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k; + +create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC; + +INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k; + +explain +select b, count(*) from vectortab2korc group by b; + +select b, count(*) from vectortab2korc group by b; diff --git ql/src/test/queries/clientpositive/vector_groupby2.q ql/src/test/queries/clientpositive/vector_groupby2.q new file mode 100644 index 0000000..b94ce10 --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby2.q @@ -0,0 +1,46 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE; + +LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k; + +create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC; + +INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k; + +explain +select b, max(i) from vectortab2korc group by b; + +select b, max(i) from vectortab2korc group by b; diff --git ql/src/test/queries/clientpositive/vector_groupby3.q ql/src/test/queries/clientpositive/vector_groupby3.q new file mode 100644 index 0000000..d446961 --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby3.q @@ -0,0 +1,13 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +CREATE TABLE orc_table_1(a INT, b INT) STORED AS ORC; + +insert into table orc_table_1 values(12, 1),(5, 1), (9, 2),(12, 1); + +explain +select b, max(a) from orc_table_1 group by b; + +select b, max(a) from orc_table_1 group by b; \ No newline at end of file diff --git ql/src/test/queries/clientpositive/vector_groupby4.q ql/src/test/queries/clientpositive/vector_groupby4.q new file mode 100644 index 0000000..8c97817 --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby4.q @@ -0,0 +1,46 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE; + +LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k; + +create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC; + +INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k; + +explain +select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b; + +select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b; diff --git ql/src/test/queries/clientpositive/vector_groupby5.q ql/src/test/queries/clientpositive/vector_groupby5.q new file mode 100644 index 0000000..40a117b --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby5.q @@ -0,0 +1,46 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE; + +LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k; + +create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC; + +INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k; + +explain +select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b; + +select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b; diff --git ql/src/test/queries/clientpositive/vector_groupby6.q ql/src/test/queries/clientpositive/vector_groupby6.q new file mode 100644 index 0000000..ce88abd --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby6.q @@ -0,0 +1,46 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE; + +LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k; + +create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC; + +INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k; + +explain +select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b; + +select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b; diff --git ql/src/test/queries/clientpositive/vector_groupby7.q ql/src/test/queries/clientpositive/vector_groupby7.q new file mode 100644 index 0000000..ffc94c5 --- /dev/null +++ ql/src/test/queries/clientpositive/vector_groupby7.q @@ -0,0 +1,46 @@ +set hive.explain.user=false; +SET hive.vectorized.execution.enabled=true; + +-- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE; + +LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k; + +create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC; + +INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k; + +explain +select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b; + +select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b; diff --git ql/src/test/results/clientpositive/tez/vector_groupby1.q.out ql/src/test/results/clientpositive/tez/vector_groupby1.q.out new file mode 100644 index 0000000..ade18e1 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby1.q.out @@ -0,0 +1,2029 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, count(*) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, count(*) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint) + outputColumnNames: _col0 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: count() + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: bigint) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, count(*) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, count(*) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 1 +-6919476845891313664 1 +-6920172215209426944 1 +-6921654334727036928 1 +-6933565857643814912 1 +-6934304742087655424 1 +-6935038507792801792 1 +-6935548339131138048 1 +-6938706403992854528 1 +-6941777546186579968 1 +-6947955278050181120 1 +-6951350560260784128 1 +-6957946688477274112 1 +-6960947572095770624 1 +-6962271229404348416 1 +-6962292590214234112 1 +-6968771079156654080 1 +-6968892545529896960 1 +-6970396058557005824 1 +-6974654664348033024 1 +-6975459232300236800 1 +-6986178228432322560 1 +-6988811476286873600 1 +-6988970700649168896 1 +-6992217501957169152 1 +-6997233584896229376 1 +-7000925438663041024 1 +-7003696402314215424 1 +-7011425384222244864 1 +-7017212700635545600 1 +-7020852530219171840 1 +-7030489936116252672 1 +-7035132060308643840 1 +-7036607470351654912 1 +-7037375807670501376 1 +-7037638331316469760 1 +-7038455462786334720 1 +-7040248820505149440 1 +-7041362811802148864 1 +-7042183597114081280 1 +-7046180371529351168 1 +-7049618574399692800 1 +-7052619594823221248 1 +-7055619148037554176 1 +-7055760785575665664 1 +-7057750467944931328 1 +-7058986555327307776 1 +-7063777488249085952 1 +-7078068944081002496 1 +-7079898537463537664 1 +-7081500255163727872 1 +-7083646746411720704 1 +-7085247548404178944 1 +-7093825013581979648 1 +-7094189393339678720 1 +-7094827141662539776 1 +-7104310188119834624 1 +-7106210529681350656 1 +-7109790267244814336 1 +-7115054815375073280 1 +-7120456708338688000 1 +-7127548949860818944 1 +-7138415011665043456 1 +-7139677575412686848 1 +-7140008543769042944 1 +-7144791190333546496 1 +-7145585429014888448 1 +-7147490721376591872 1 +-7152177800841502720 1 +-7155539549555105792 1 +-7158472098920390656 1 +-7159700138947862528 1 +-7161165959057334272 1 +-7162299524557471744 1 +-7172594404186693632 1 +-7185369278665605120 1 +-7192529627893858304 1 +-7194281951646187520 1 +-7195217207163166720 1 +-7198372044947275776 1 +-7199983995864711168 1 +-7201085131997011968 1 +-7209060152494817280 1 +-7213775605408178176 1 +-7220731681653604352 1 +-7221474017515347968 1 +-7228589258642194432 1 +-7240213957902663680 1 +-7242345057866285056 1 +-7245872320493322240 1 +-7246123871306244096 1 +-7255010240787030016 1 +-7255686273677328384 1 +-7262049693594943488 1 +-7262384251828518912 1 +-7262798781688651776 1 +-7263060340185194496 1 +-7265998318110711808 1 +-7266719102957125632 1 +-7270034223527993344 1 +-7273590251991162880 1 +-7273694358642851840 1 +-7276111129363046400 1 +-7287583262310350848 1 +-7292078334519894016 1 +-7296096276653391872 1 +-7303847963918393344 1 +-7319315187617587200 1 +-7326863346317598720 1 +-7328087811698909184 1 +-7329767178250018816 1 +-7329807949048193024 1 +-7330203470474985472 1 +-7330413050756235264 1 +-7333278178640953344 1 +-7333362172439035904 1 +-7340231535789727744 1 +-7344146703223496704 1 +-7344947507044466688 1 +-7345562788132315136 1 +-7356685674003021824 1 +-7357888618985873408 1 +-7362189611124563968 1 +-7366430883634929664 1 +-7378096180613840896 1 +-7380731416973295616 1 +-7395343938785738752 1 +-7395553021620731904 1 +-7399631791131074560 1 +-7404052043914526720 1 +-7404057145074712576 1 +-7409317158045442048 1 +-7409653086454030336 1 +-7412431471807283200 1 +-7413317118463164416 1 +-7419068456205385728 1 +-7420448501073051648 1 +-7425160895830573056 1 +-7429331808102899712 1 +-7433265617153343488 1 +-7442593976514420736 1 +-7444070205513138176 1 +-7451660755269853184 1 +-7453525026342617088 1 +-7455898404374921216 1 +-7456869587112255488 1 +-7461750143936897024 1 +-7464270453557993472 1 +-7469660864676585472 1 +-7470307155642245120 1 +-7476082621253402624 1 +-7483435388852559872 1 +-7488345684795342848 1 +-7488415863027367936 1 +-7494411162675691520 1 +-7496839341561954304 1 +-7497303453253402624 1 +-7500200359698907136 1 +-7501803640821456896 1 +-7506254246954500096 1 +-7507424948896415744 1 +-7507578199583694848 1 +-7510418793070075904 1 +-7511202710200885248 1 +-7511952204985049088 1 +-7512289590991544320 1 +-7512297136103800832 1 +-7515996202498473984 1 +-7524170566881329152 1 +-7526793959592140800 1 +-7528526815026692096 1 +-7532751268425261056 1 +-7535857766791577600 1 +-7535958203887706112 1 +-7536330682873937920 1 +-7540104552219860992 1 +-7541860097718902784 1 +-7542857121910046720 1 +-7547245548870025216 1 +-7547432761381339136 1 +-7551394356730339328 1 +-7557017910095650816 1 +-7558524160894427136 1 +-7571293705217687552 1 +-7571957778022178816 1 +-7572262898020278272 1 +-7572962089372991488 1 +-7576194692683563008 1 +-7593363318079610880 1 +-7594824008626372608 1 +-7598782894648565760 1 +-7600138468036386816 1 +-7603467428164009984 1 +-7603569103205916672 1 +-7610137349734883328 1 +-7611584069753552896 1 +-7612455481940246528 1 +-7612466483992051712 1 +-7616522969329262592 1 +-7617860842651017216 1 +-7623047151287754752 1 +-7623359796281999360 1 +-7623405558242500608 1 +-7624057992767782912 1 +-7629401308029976576 1 +-7637494527844343808 1 +-7637755520917741568 1 +-7642381493746483200 1 +-7647020450676146176 1 +-7661192563533062144 1 +-7661250850555633664 1 +-7663293054873812992 1 +-7665186441284968448 1 +-7668388017287020544 1 +-7669169138124275712 1 +-7673901622181953536 1 +-7679894005808693248 1 +-7686220526274502656 1 +-7687052294777208832 1 +-7692192232238678016 1 +-7695491171376291840 1 +-7700203302632210432 1 +-7703540456272994304 1 +-7707242953271500800 1 +-7707867749256445952 1 +-7708932208121225216 1 +-7709958788604936192 1 +-7712425776235274240 1 +-7720966287634112512 1 +-7739424919198187520 1 +-7744462446680375296 1 +-7751265769984491520 1 +-7751427073017544704 1 +-7753051494275432448 1 +-7759238919361888256 1 +-7759425383684849664 1 +-7772064021830574080 1 +-7773957003968675840 1 +-7777884099756122112 1 +-7778829032042790912 1 +-7779270198785875968 1 +-7782344916178796544 1 +-7784419454650843136 1 +-7792903881635938304 1 +-7793447076762345472 1 +-7797149520019062784 1 +-7797151404935618560 1 +-7800879252150779904 1 +-7802538500225777664 1 +-7804116532814151680 1 +-7805985795815342080 1 +-7811060170911375360 1 +-7818454479651135488 1 +-7819437864839495680 1 +-7822452149325094912 1 +-7824788571789279232 1 +-7827420207675105280 1 +-7831320202242228224 1 +-7831595638727565312 1 +-7833618000492109824 1 +-7835907977757245440 1 +-7838598833900584960 1 +-7840338174858199040 1 +-7845896959112658944 1 +-7848043121524228096 1 +-7849504559236210688 1 +-7858505678035951616 1 +-7866079955473989632 1 +-7867219225874571264 1 +-7868306678534193152 1 +-7873753603299540992 1 +-7875953567586451456 1 +-7877598807023386624 1 +-7878145001776152576 1 +-7879864376629567488 1 +-7881262505761710080 1 +-7881351200983613440 1 +-7883252982752665600 1 +-7884460946615984128 1 +-7888051992910274560 1 +-7892780594910871552 1 +-7893577088764174336 1 +-7894382303337832448 1 +-7895991410072928256 1 +-7902517224300036096 1 +-7903158849011843072 1 +-7904188195431661568 1 +-7907355742053883904 1 +-7910019233726242816 1 +-7911421221625077760 1 +-7915999634274369536 1 +-7916510129632296960 1 +-7928062266382778368 1 +-7928440849566146560 1 +-7939634346485858304 1 +-7949309059286163456 1 +-7949445503604604928 1 +-7953426740065312768 1 +-7964801953178091520 1 +-7966960765508280320 1 +-7978782649203228672 1 +-7989766326847807488 1 +-7998947380180819968 1 +-8007017894942638080 1 +-8013397854633648128 1 +-8016589197379289088 1 +-8017791189288869888 1 +-8018511948141748224 1 +-8021859935185928192 1 +-8022573309127000064 1 +-8023708819947323392 1 +-8028275725610909696 1 +-8028910243475038208 1 +-8030058711611629568 1 +-8034414142083170304 1 +-8046189486447017984 1 +-8046238369820344320 1 +-8047774491688255488 1 +-8051395538179063808 1 +-8051587217208967168 1 +-8051871680800120832 1 +-8054581198284668928 1 +-8067243114610532352 1 +-8070535484085895168 1 +-8076479329071955968 1 +-8082793390939193344 1 +-8084716955963252736 1 +-8086577583338061824 1 +-8088337436168830976 1 +-8099313480512716800 1 +-8103788088118018048 1 +-8104684579106914304 1 +-8108693586698706944 1 +-8115963579415650304 1 +-8117838333114212352 1 +-8122639684164501504 1 +-8127494999848919040 1 +-8131997716860526592 1 +-8136227554401107968 1 +-8140349174954893312 1 +-8142667274351345664 1 +-8147405381260345344 1 +-8158011642485825536 1 +-8161047750470279168 1 +-8172827216441573376 1 +-8182421179156905984 1 +-8191825921746305024 1 +-8194062064124362752 1 +-8203008052020879360 1 +-8203075743525806080 1 +-8205148279289085952 1 +-8214462866994339840 1 +-8219876839318716416 1 +-8232763638546694144 1 +-8240034910581153792 1 +-8240684139569233920 1 +-8243487285852766208 1 +-8244116388227104768 1 +-8244657976255889408 1 +-8260340354454503424 1 +-8269917980278980608 1 +-8270479187688816640 1 +-8275337702906757120 1 +-8280276629934981120 1 +-8293833565967810560 1 +-8297230235506343936 1 +-8300526097982226432 1 +-8300764106868350976 1 +-8302817097848307712 1 +-8317591428117274624 1 +-8318886086186213376 1 +-8322751250650218496 1 +-8330233444291084288 1 +-8335810316927213568 1 +-8340523561480437760 1 +-8345065519816695808 1 +-8347088645602050048 1 +-8357136656913686528 1 +-8358130693961195520 1 +-8359839265974165504 1 +-8368269352975982592 1 +-8368487814665895936 1 +-8369487968903897088 1 +-8379109122834997248 1 +-8379964450833367040 1 +-8384695077413412864 1 +-8387347109404286976 1 +-8387536830476820480 1 +-8395998375405912064 1 +-8400045653258444800 1 +-8411282676082565120 1 +-8418913260807217152 1 +-8425998949410889728 1 +-8426531414463545344 1 +-8430283518005846016 1 +-8430370933326536704 1 +-8431492599012163584 1 +-8438554249514491904 1 +-8445801063348281344 1 +-8453491903284994048 1 +-8454143651040444416 1 +-8465978403747037184 1 +-8469607298426437632 1 +-8471480409335513088 1 +-8485389240529354752 1 +-8488247955875618816 1 +-8490382417169408000 1 +-8494118409594650624 1 +-8503342882470019072 1 +-8503573595507761152 1 +-8507279516485566464 1 +-8509547439040757760 1 +-8518060755719585792 1 +-8518258741831680000 1 +-8521578237232529408 1 +-8522878384019169280 1 +-8523434203900674048 1 +-8525212657458348032 1 +-8535957064499879936 1 +-8536369662934401024 1 +-8543982423727128576 1 +-8544299740525461504 1 +-8545239748068941824 1 +-8546758906409312256 1 +-8552393882631389184 1 +-8555709701170552832 1 +-8559008501282832384 1 +-8559252110266564608 1 +-8562524688907485184 1 +-8566856504746352640 1 +-8566940231897874432 1 +-8570933074545745920 1 +-8572823448513445888 1 +-8572949572756774912 1 +-8581765103969312768 1 +-8581979259158929408 1 +-8584520406368493568 1 +-8585134536083660800 1 +-8585966098173870080 1 +-8593419958317056000 1 +-8603817012434198528 1 +-8604758220106014720 1 +-8607195685207408640 1 +-8615168537390571520 1 +-8619303037130301440 1 +-8623238306523824128 1 +-8623965248051789824 1 +-8632237187473088512 1 +-8649711322250362880 1 +-8651641150831362048 1 +-8654433008222797824 1 +-8654797319350927360 1 +-8658387566611996672 1 +-8659643752269242368 1 +-8659692318743314432 1 +-8660149447361404928 1 +-8664374244449050624 1 +-8664806103426252800 1 +-8665218198816497664 1 +-8665764757143658496 1 +-8675661101615489024 1 +-8675892979328212992 1 +-8683802826440105984 1 +-8688153842294595584 1 +-8689606130068611072 1 +-8694818694700048384 1 +-8696162322976997376 1 +-8703026916864802816 1 +-8704234107608203264 1 +-8705403811649355776 1 +-8710298418608619520 1 +-8714995808835444736 1 +-8719510423723155456 1 +-8730803262481580032 1 +-8731068123910987776 1 +-8746702976270385152 1 +-8754966081778565120 1 +-8754992450211692544 1 +-8756989568739835904 1 +-8760655406971863040 1 +-8763062627136864256 1 +-8768744394742235136 1 +-8782213262837530624 1 +-8783777723063099392 1 +-8789178184387641344 1 +-8797972842900307968 1 +-8807361476639629312 1 +-8813211231120031744 1 +-8831091081349758976 1 +-8832750849949892608 1 +-8833019327569510400 1 +-8835408234247168000 1 +-8836899523028312064 1 +-8843859708698583040 1 +-8844949406948671488 1 +-8845239510002753536 1 +-8852770376039219200 1 +-8853553406533894144 1 +-8856151919723003904 1 +-8856821118526734336 1 +-8857335871148171264 1 +-8858063395050110976 1 +-8859107121649893376 1 +-8866442231663067136 1 +-8870186814744420352 1 +-8870673219965001728 1 +-8875546987176206336 1 +-8877053610728161280 1 +-8877431933441327104 1 +-8879742387365429248 1 +-8881446757271846912 1 +-8887058200926093312 1 +-8892963883085578240 1 +-8896045754034978816 1 +-8914039133569400832 1 +-8916987977485312000 1 +-8922409715403112448 1 +-8923529803981905920 1 +-8927968289860370432 1 +-8930307926221807616 1 +-8938849835283677184 1 +-8940944155843461120 1 +-8941201923743703040 1 +-8946656952763777024 1 +-8948335470186373120 1 +-8959796625322680320 1 +-8961059046745669632 1 +-8962547695651323904 1 +-8965578088652095488 1 +-8989473881707921408 1 +-8990843030306717696 1 +-8992599250893979648 1 +-8996954350906294272 1 +-9002912355472736256 1 +-9004892183139811328 1 +-9008631121684832256 1 +-9012093603044245504 1 +-9013952631912325120 1 +-9014145341570203648 1 +-9022154842129547264 1 +-9032650742739836928 1 +-9049720998034137088 1 +-9051477157204770816 1 +-9058029636530003968 1 +-9066993118333706240 1 +-9071565764086521856 1 +-9075302542655684608 1 +-9075486079396069376 1 +-9078662294976061440 1 +-9079801920509001728 1 +-9080568167841226752 1 +-9080956291212132352 1 +-9084940280061485056 1 +-9088239683374350336 1 +-9091113592821972992 1 +-9095689235523264512 1 +-9101953184875757568 1 +-9102482277760983040 1 +-9105358806324035584 1 +-9105701280936501248 1 +-9109392978217484288 1 +-9117959922369060864 1 +-9126793997498957824 1 +-9136398397785948160 1 +-9142610685888192512 1 +-9145593811310010368 1 +-9148197394287779840 1 +-9149719074367946752 1 +-9157613004431998976 1 +-9175038118837149696 1 +-9175279464813223936 1 +-9178166810751909888 1 +-9187662685618348032 1 +-9189155542884474880 1 +-9203804401302323200 1 +-9203942396257984512 1 +-9206329156028112896 1 +-9210275791460499456 1 +-9213132862973829120 1 +-9215144824304721920 1 +-9218875542187065344 1 +-9219066990552760320 1 +1021 1 +1030 1 +1032 1 +1039 1 +1046 1 +1048 1 +1053 1 +1055 1 +1058 1 +1065 1 +1066 1 +1074 1 +1075 3 +108 1 +1086 1 +1093 1 +1094 1 +1095 1 +1099 1 +1115 1 +112 1 +1127 1 +1128 1 +1132 1 +1134 1 +1141 1 +1142 1 +1145 1 +1153 1 +1157 1 +1158 1 +1165 2 +1168 1 +1177 1 +1187 1 +1189 1 +1198 1 +120 1 +1201 1 +1217 1 +1234 1 +1243 1 +1247 1 +1252 1 +1261 1 +1270 1 +1280 1 +1282 1 +1286 1 +1287 1 +1290 1 +1291 1 +1299 1 +130 1 +1307 1 +1312 1 +1316 1 +1321 1 +1337 1 +1341 1 +1342 1 +1343 1 +1345 1 +1346 1 +135 1 +1366 1 +1368 2 +1371 2 +138 1 +1386 1 +1398 1 +1409 1 +1422 1 +1423 1 +1436 1 +1439 1 +1447 1 +1450 1 +1454 1 +1458 1 +1462 1 +1466 1 +1470 1 +1477 1 +1481 2 +1489 1 +1493 1 +1495 1 +1501 1 +1506 1 +1508 1 +1509 2 +1518 1 +1520 1 +1521 1 +1524 1 +1530 1 +1537 2 +154 2 +1541 1 +1542 1 +1545 1 +1556 1 +1559 1 +1561 1 +1566 1 +1604 1 +1606 1 +1608 1 +1613 1 +1614 1 +1620 1 +1638 1 +1641 1 +1643 1 +1648 1 +1651 1 +1667 1 +1671 1 +1674 1 +1676 1 +1678 1 +168 1 +1681 1 +169 1 +1693 1 +1701 2 +1704 1 +1719 2 +1726 1 +1728 1 +1745 1 +1751 1 +1752 1 +1769 1 +1774 1 +1775 1 +1777 2 +1780 1 +1781 1 +1785 1 +1786 1 +1788 1 +1789 1 +1791 1 +1796 1 +1806 1 +181 1 +1811 1 +1813 1 +1826 1 +1827 1 +1835 1 +1837 1 +1845 1 +1846 1 +1856 2 +1862 1 +1863 1 +1864 1 +1866 1 +187 1 +1870 1 +188 1 +1880 1 +1890 1 +1892 1 +1899 1 +19 2 +1906 1 +1910 1 +1914 2 +1926 1 +1937 1 +1940 1 +1941 1 +1948 3 +1955 1 +1965 1 +1972 1 +1981 1 +1983 1 +1987 1 +1990 1 +1995 1 +1999 1 +2001 1 +2002 1 +2004 1 +2009 1 +2011 1 +2013 1 +2016 1 +2017 1 +2020 2 +2025 1 +2026 1 +2029 1 +203 1 +204 1 +2046 1 +2056 1 +2067 1 +2072 1 +2073 1 +2085 1 +2089 1 +2092 1 +2105 1 +2106 1 +2108 1 +213 2 +2131 1 +2138 1 +2140 1 +2144 1 +2155 1 +2177 1 +2179 1 +2180 1 +2183 1 +2186 1 +2187 1 +2189 1 +2193 2 +2194 1 +22 1 +2201 1 +2205 1 +2214 1 +2217 1 +2218 1 +2223 1 +2227 1 +2229 1 +2232 1 +2241 1 +2244 1 +2255 1 +2262 1 +2264 1 +2270 1 +2274 1 +2277 1 +2279 1 +228 1 +2283 1 +2285 2 +2295 1 +2306 1 +2320 1 +2323 1 +2325 2 +2335 1 +2341 1 +2348 1 +2358 1 +236 1 +2373 1 +238 1 +2386 1 +2393 2 +2398 1 +2400 1 +2410 1 +2412 2 +2420 1 +2426 1 +2434 1 +244 1 +2461 1 +2463 3 +2465 1 +2469 1 +2475 1 +2476 1 +2485 2 +2487 1 +2492 1 +2494 1 +2502 1 +2506 1 +2509 1 +2512 1 +2514 1 +2515 1 +2517 1 +2524 1 +2533 1 +2539 1 +2540 1 +255 1 +2551 1 +2553 1 +2560 2 +2563 1 +2565 1 +2569 1 +2579 1 +2580 1 +2587 1 +259 1 +2599 1 +2607 1 +2608 1 +2619 2 +2625 1 +2626 1 +263 2 +2637 1 +2647 1 +2649 1 +2662 1 +2663 1 +2675 1 +268 2 +2680 1 +2682 1 +2688 1 +2689 1 +2692 1 +2700 1 +2712 1 +2714 1 +2715 2 +2719 1 +2724 1 +2725 1 +2735 1 +2745 1 +275 1 +2752 1 +2762 1 +2772 1 +2776 1 +2786 2 +279 1 +2790 1 +2791 1 +2803 3 +2805 1 +281 1 +2810 1 +2811 1 +2816 1 +2821 1 +2824 1 +2835 1 +2842 1 +2843 2 +2846 1 +2847 1 +2848 1 +2850 1 +2855 2 +2862 1 +2878 1 +2886 1 +289 1 +2897 2 +2900 1 +2903 1 +2905 1 +2911 1 +2915 1 +2919 1 +2933 2 +2938 1 +294 1 +2941 1 +2942 1 +296 2 +2962 1 +2968 2 +2971 1 +2977 1 +2979 1 +2984 1 +2986 1 +2988 1 +2991 1 +3002 1 +3006 1 +301 1 +302 1 +3021 2 +3024 1 +3029 1 +3031 1 +3036 1 +3043 1 +3054 1 +3055 1 +3058 1 +3059 1 +3060 2 +3067 1 +3071 1 +3073 1 +3079 2 +3083 1 +3084 1 +3089 1 +3094 1 +3103 1 +311 1 +3111 1 +3118 1 +3119 1 +3144 1 +3147 1 +3159 2 +3163 1 +3174 1 +3183 1 +3190 1 +3197 1 +3199 1 +320 1 +3203 1 +3206 1 +3208 1 +3212 1 +3213 1 +3231 1 +3232 1 +3235 1 +3244 1 +3245 1 +3248 1 +3249 1 +3253 1 +3255 1 +3263 1 +3286 1 +3300 1 +3307 1 +3322 1 +3333 1 +3352 1 +336 1 +3365 1 +3366 1 +3397 1 +34 1 +3401 1 +3407 1 +3409 1 +341 1 +3418 2 +342 1 +3421 1 +3430 1 +3443 1 +3446 1 +345 1 +3456 1 +346 2 +3460 1 +3462 3 +3467 2 +347 1 +3472 1 +3478 1 +3493 1 +350 1 +3507 1 +3510 1 +3512 1 +3533 1 +3534 1 +3541 1 +3542 1 +355 1 +3554 1 +3555 2 +3563 1 +3566 1 +3567 1 +3568 1 +3579 1 +3588 2 +3599 1 +3606 1 +3608 1 +3609 1 +361 1 +3613 1 +3622 2 +3625 1 +3630 1 +3637 1 +364 1 +3648 1 +3663 1 +3664 1 +367 1 +3672 1 +3673 1 +3677 1 +3680 1 +3682 1 +3690 1 +3691 1 +3701 1 +3702 1 +3703 1 +3707 1 +3722 1 +3724 1 +3725 2 +3728 2 +3739 1 +3747 1 +3749 1 +375 1 +3755 1 +3763 1 +3764 1 +3769 1 +3770 2 +378 1 +3781 2 +3789 1 +379 1 +3810 1 +3812 1 +3823 1 +3824 1 +383 2 +3830 1 +3835 1 +3841 1 +3848 1 +3858 1 +3860 1 +3866 2 +3874 1 +3879 1 +388 1 +3887 1 +3901 1 +3904 1 +3907 1 +391 1 +3910 1 +3911 1 +3913 1 +392 1 +3932 1 +3940 1 +3941 1 +3945 1 +3946 1 +3949 1 +3958 1 +3960 1 +3961 1 +3962 1 +3965 1 +3974 2 +3980 1 +3990 1 +4018 1 +4020 1 +4024 1 +4030 1 +4037 1 +4051 1 +4054 1 +4056 1 +4075 1 +4078 1 +4088 1 +41 1 +412 2 +417 1 +425 1 +443 1 +454 1 +455 1 +462 1 +470 1 +471 1 +481 1 +482 1 +485 1 +489 1 +49 1 +490 1 +491 1 +5 1 +500 1 +501 2 +504 1 +522 1 +523 1 +524 1 +530 1 +535 1 +579 1 +583 1 +584 1 +586 1 +587 1 +590 1 +597 1 +601 1 +612 1 +615 1 +618 1 +65 1 +650 1 +658 1 +66 1 +661 2 +663 1 +664 1 +677 1 +68 1 +681 1 +687 1 +688 1 +690 1 +691 1 +6923604860394528768 1 +6924820982050758656 1 +6926925215281774592 1 +6927260280037097472 1 +6928080429732536320 1 +6933001829416034304 1 +6933451028794925056 1 +6933731240564056064 1 +6934570741217755136 1 +694 1 +6947488599548215296 1 +695 1 +6960137166475911168 1 +6962726713896484864 1 +6963217546192322560 1 +6964585306125008896 1 +6967631925774639104 1 +6969599299897163776 1 +6974475559697768448 1 +6982145326341423104 1 +6987889924212203520 1 +6991316084916879360 1 +6996686091335884800 1 +7006803044329021440 1 +7013693841855774720 1 +7014537632150224896 1 +7017956982081404928 1 +7022349041913978880 1 +7027529814236192768 1 +7031339012080549888 1 +7039820685967343616 1 +7045967493826387968 1 +7049773031131283456 1 +7052226236896256000 1 +7054271419461812224 1 +7054938591408996352 1 +7060236714847412224 1 +7061498706968428544 1 +7061809776248545280 1 +7062382339142156288 1 +7062605127422894080 1 +7065344324692443136 1 +7068517339681259520 1 +7069729473166090240 1 +707 1 +7077311975029555200 1 +7078641038157643776 1 +7080269176324218880 1 +7084659344078970880 1 +7086206629592252416 1 +7091300332052062208 1 +7099005292698550272 1 +71 1 +7107604675626008576 1 +7125231541858205696 1 +7128222874437238784 1 +7130159794259353600 1 +7130306447560826880 1 +7149417430082027520 1 +7153922334283776000 1 +7157247449513484288 1 +7164349895861829632 1 +7165364563962191872 1 +7166263463731421184 1 +7175638927948562432 1 +7186401810812059648 1 +7195454019231834112 1 +7198687580227043328 1 +7199539820886958080 1 +7204802700490858496 1 +7210160489915236352 1 +7212016545671348224 1 +7212090742612467712 1 +7217123582035116032 1 +7220131672176058368 1 +7220581538170413056 1 +7223569671814987776 1 +7226360892091416576 1 +7229607057201127424 1 +723 1 +7231399302953377792 1 +7232273749940838400 1 +7235109456886816768 1 +7237310132329488384 1 +7238339720750948352 1 +724 1 +7242751359672631296 1 +7249443195032985600 1 +7250237407877382144 1 +7254710367022645248 1 +7255302164215013376 1 +7259955893466931200 1 +7260908278294560768 1 +7265141874315517952 1 +7266437490436341760 1 +7271786885641666560 1 +7271887863395459072 1 +7274777328897802240 1 +7291432593139507200 1 +7295502697317097472 1 +7295926343524163584 1 +7296164580491075584 1 +7299197687217856512 1 +73 1 +7304839835188609024 1 +7308289763456000000 1 +7309156463509061632 1 +7310869618402910208 1 +7319711402123149312 1 +7333512171174223872 1 +7339426767877390336 1 +7343171468838567936 1 +7344029858387820544 1 +7345991518378442752 1 +7347732772348870656 1 +7348598907182800896 1 +735 1 +7354813692542304256 1 +7359004378440146944 1 +736 1 +7368920486374989824 1 +7370078518278397952 1 +7370803940448305152 1 +7375521127126089728 1 +7376467688511455232 1 +7378993334503694336 1 +738 1 +7381659098423926784 1 +7384150968511315968 1 +7386087924003676160 1 +7391208370547269632 1 +7393308503950548992 1 +7394967727502467072 1 +7401968422230032384 1 +7410096605330227200 1 +7410872053689794560 1 +7411793502161182720 1 +7412924364686458880 1 +7414865343000322048 1 +7418271723644403712 1 +743 1 +7432428551399669760 1 +7432998950057975808 1 +7436133434239229952 1 +7440265908266827776 1 +7450416810848313344 1 +7452756603516190720 1 +7454442625055145984 1 +7454632396542074880 1 +7461153404961128448 1 +7471208109437304832 1 +7473537548003352576 1 +7486884806277611520 1 +7487338208419823616 1 +7487538600082554880 1 +7490717730239250432 1 +7491898395977523200 1 +7492436934952574976 1 +7497276415392407552 1 +7497306924248834048 1 +7500716020874674176 1 +7514552840617558016 1 +7517159036469575680 1 +7524958388842078208 1 +7528074274555305984 1 +7528211148397944832 1 +7534042483076857856 1 +7534145866886782976 1 +7534549597202194432 1 +7545689659010949120 1 +7548958830580563968 1 +7549858023389003776 1 +7555301305375858688 1 +7566273236152721408 1 +7569249672628789248 1 +7570474972934488064 1 +7573530789362262016 1 +7575087487730196480 1 +7581052107944361984 1 +7581614118458335232 1 +7584007864107778048 1 +7592440105065308160 1 +7593521922173419520 1 +7596563216912211968 1 +7599019810193211392 1 +7608447395949109248 1 +7614435638888210432 1 +7620183559667081216 1 +7621013099259527168 1 +7625728883085025280 1 +7626715182847090688 1 +763 1 +7637152193832886272 1 +7647481735646363648 1 +7648729477297987584 1 +7652123583449161728 1 +7659279803863146496 1 +7662037650719850496 1 +7675009476762918912 1 +7678790769408172032 1 +7682327310082531328 1 +7686992843032010752 1 +7689489436826804224 1 +7690986322714066944 1 +7691062622443044864 1 +7696737688942567424 1 +7697541332524376064 1 +7700734109530767360 1 +7701723309715685376 1 +7705445437881278464 1 +7710447533880614912 1 +7718825401976684544 1 +7720187583697502208 1 +7731443941834678272 1 +7735566678126616576 1 +774 1 +7741854854673367040 1 +7746402369011277824 1 +7747874976739016704 1 +7748799008146366464 1 +7752740515534422016 1 +7753359568986636288 1 +7753882935005880320 1 +7761834341179375616 1 +7762823913046556672 1 +7765456790394871808 1 +7768984605670604800 1 +7775034125776363520 1 +7778936842502275072 1 +7779486624537370624 1 +7779735136559579136 1 +7782245855193874432 1 +7784169796350730240 1 +7784489776013295616 1 +779 1 +7790728456522784768 1 +7792036342592348160 1 +7794244032613703680 1 +78 1 +780 1 +7800332581637259264 1 +7801697837312884736 1 +7818464507324121088 1 +782 1 +7823874904139849728 1 +784 1 +7843804446688264192 1 +7844258063629852672 1 +7845953007588401152 1 +7857878068300898304 1 +7868367829080506368 1 +7870277756614623232 1 +7871189141676998656 1 +7871554728617025536 1 +7874764415950176256 1 +7885697257930588160 1 +7888238729321496576 1 +789 1 +7892026679115554816 1 +7892281003266408448 1 +7898670840507031552 1 +7909645665163804672 1 +7917494645725765632 1 +7919597361814577152 1 +7921639119138070528 1 +7922443154272395264 1 +7926898770090491904 1 +7933040277013962752 1 +7936149988210212864 1 +7944741547145502720 1 +7947544013461512192 1 +7948803266578161664 1 +7955126053367119872 1 +7961515985722605568 1 +7961909238130270208 1 +797 1 +7983789401706094592 1 +7989119273552158720 1 +7989160253372817408 1 +7997694023324975104 1 +7998357471114969088 1 +7998687089080467456 1 +80 1 +8000440057238052864 1 +8002769767000145920 1 +8004633750273925120 1 +8011181697250631680 1 +8011602724663336960 1 +8014986215157530624 1 +8017403886247927808 1 +803 1 +8045070943673671680 1 +8048726769133592576 1 +8059284960252731392 1 +8069531888205086720 1 +8071961599867387904 1 +8073733016154431488 1 +8079573715140485120 1 +808 1 +8087737899452432384 1 +809 1 +8091421389575282688 1 +8099215208813903872 1 +8100036735858401280 1 +8109381965028548608 1 +8111757081791733760 1 +8113585123802529792 1 +8116738401948377088 1 +812 1 +8120593157178228736 1 +8129551357032259584 1 +8135164922674872320 1 +8142241016679735296 1 +8143462899383345152 1 +8144552446127972352 1 +8145745969573666816 1 +8145750910080745472 1 +8146288732715196416 1 +8146492373537660928 1 +8148211378319933440 1 +815 1 +8150115791664340992 1 +8156018594610790400 1 +8156782979767238656 1 +8160569434550403072 1 +8160662610166194176 1 +8163948965373386752 1 +8168742078705262592 1 +8169878743136043008 1 +8171188598958407680 1 +8183233196086214656 1 +8184799300477943808 1 +8190539859890601984 1 +8190967051000659968 1 +8192304692696383488 1 +8195103847607967744 1 +8199513544090730496 1 +820 2 +8201303040648052736 1 +8201491077550874624 1 +8208354137450766336 1 +8210813831744118784 1 +8213810702473183232 1 +8219326436390821888 1 +8220104397160169472 1 +8221561626658881536 1 +8222714144797368320 1 +8223732800007864320 1 +823 1 +8230371298967609344 1 +8235179243092090880 1 +8244041599171862528 1 +8254763178969915392 1 +8268875586442256384 1 +8269730157217062912 1 +8272001752345690112 1 +8279056098670198784 1 +8282648443538710528 1 +8283099811330506752 1 +8286706213485297664 1 +8287522765741301760 1 +8290014929764040704 1 +8290944180915871744 1 +8294315622451740672 1 +8295110846998233088 1 +83 1 +8302473563519950848 1 +8316336224427483136 1 +8323460620425330688 1 +8325227661920133120 1 +8332670681629106176 1 +8333523087360901120 1 +8337549596011102208 1 +8345435427356090368 1 +835 1 +8351163199364390912 1 +8362046808797306880 1 +8365058996333953024 1 +8367680396909404160 1 +8368012468775608320 1 +837 1 +8371939471056470016 1 +8372408423196270592 1 +8372588378498777088 1 +8374321007870836736 1 +8376440110255243264 1 +8383159090746204160 1 +8388363436324085760 1 +8391407951622815744 1 +8391785334471589888 1 +8396433451610652672 1 +8398862954249560064 1 +8407869317250220032 1 +8410599906334097408 1 +8411494452500930560 1 +8415171956168417280 1 +8416121695917498368 1 +8417381121663746048 1 +8419958579638157312 1 +8424515140664360960 1 +8435912708683087872 1 +845 1 +8451612303224520704 1 +8454154705460666368 1 +8455496814886002688 1 +8457906374051020800 1 +8461498293348065280 1 +8463868417649524736 1 +8467976965865799680 1 +8470141334513098752 1 +8472429318602268672 1 +8473699639908261888 1 +8487573502287478784 1 +8489584373231919104 1 +8489735221193138176 1 +85 1 +8501910015960735744 1 +8508401924853850112 1 +8509508263705477120 1 +8514851182589771776 1 +8514979402185596928 1 +8515682078777081856 1 +8518454006987948032 1 +8519937082746634240 1 +8523972434954510336 1 +8524940073536954368 1 +8525336514806317056 1 +8525894870444638208 1 +8532016240026279936 1 +8536948829863198720 1 +8540237852367446016 1 +8543177193114779648 1 +8547243497773457408 1 +8551446856960942080 1 +8553195689344991232 1 +8554899472487596032 1 +8555933456197828608 1 +8555948987770511360 1 +8557218322962644992 1 +8558000156325707776 1 +8560526613401714688 1 +8569030475428511744 1 +8570983266408103936 1 +8571268359622172672 1 +8573305425181941760 1 +8577096957495025664 1 +8579974641030365184 1 +8583916402383601664 1 +8613562211893919744 1 +8625937019655200768 1 +8631515095562887168 1 +8637720762289659904 1 +8639254009546055680 1 +8641221723991433216 1 +8643198489997254656 1 +8644602243484803072 1 +8649296591032172544 1 +8652485812846567424 1 +8656571350884048896 1 +8660248367767076864 1 +8665969966920990720 1 +8666178591503564800 1 +8677632093825916928 1 +8677794924343164928 1 +868 1 +8682955459667951616 1 +8687042963221159936 1 +8688483860094599168 1 +8693036785094565888 1 +8697823501349609472 1 +8698055291501543424 1 +8708232769657815040 1 +8708845895460577280 1 +871 1 +8714829359200747520 1 +8716401555586727936 1 +8720504651219001344 1 +8723248113030782976 1 +873 1 +8731960288562044928 1 +8734584858442498048 1 +8736061027343859712 1 +874 1 +8752150411997356032 1 +8759089349412847616 1 +8759184090543857664 1 +8760285623204290560 1 +8761174805938331648 1 +8769199243315814400 1 +8773222500321361920 1 +8775009214012456960 1 +8779073705407963136 1 +8779711700787298304 1 +878 1 +8780196485890555904 1 +8782900615468302336 1 +8783241818558193664 1 +8785153741735616512 1 +8792059919353348096 1 +8793387410919038976 1 +8795069490394882048 1 +8806507556248731648 1 +8808467247666241536 1 +8811693967537774592 1 +8815398225009967104 1 +8817665768680906752 1 +8822384228057604096 1 +8825059717746376704 1 +8829545979081744384 1 +883 1 +8836228556823977984 1 +8837420822750314496 1 +8849475396952514560 1 +8850055384477401088 1 +8853989376829833216 1 +8854495099223375872 1 +8854677881758162944 1 +8854715632851345408 1 +8856674723376668672 1 +8868529429494071296 1 +8871707618793996288 1 +8875745082589929472 1 +888 1 +8895174927321243648 1 +8896237972875370496 1 +8897901899039473664 1 +8899122608190930944 1 +8900180888218329088 1 +8900351886974279680 1 +8900545829211299840 1 +8905330479248064512 1 +8910706980937261056 1 +8920344895701393408 1 +8920533610804609024 1 +8927691194719174656 1 +8928133990107881472 1 +8935252708196999168 1 +8936639033158410240 1 +8939431770838810624 1 +8945004737083555840 1 +8945302550165004288 1 +8962097525980225536 1 +8972161729142095872 1 +8979012655944220672 1 +898 2 +8983857919580209152 1 +8983912573761167360 1 +8984935029383389184 1 +8987827141270880256 1 +8991071342495531008 1 +8991442360387584000 1 +8994608999945125888 1 +8995562121346260992 1 +8996824426131390464 1 +9000633029632499712 1 +9001907486943993856 1 +9005866015985713152 1 +9016280522993975296 1 +9020143715350814720 1 +9023663198045544448 1 +9030480306789818368 1 +9038087402564657152 1 +9040958359122640896 1 +9043089884440068096 1 +9048002942653710336 1 +9048297564833079296 1 +9050032047355125760 1 +9053187076403060736 1 +9054887854393950208 1 +9062227900376203264 1 +9064847977742032896 1 +9067985867711291392 1 +9073672806863790080 1 +9075404705968840704 1 +9078604269481148416 1 +908 1 +9083076230151864320 1 +9083704659251798016 1 +9084402694981533696 1 +9085381906890203136 1 +9085434340468473856 1 +9086905513121890304 1 +9089435102788009984 1 +9091082386452684800 1 +9091085792947666944 1 +9094945190752903168 1 +9096395849845194752 1 +91 1 +9104574294205636608 1 +9107991000536498176 1 +9112400579327483904 1 +9114850402293882880 1 +9116137265342169088 1 +9117063974299148288 1 +9119046173224370176 1 +9123116008004288512 1 +913 1 +9131533983989358592 1 +9132009829414584320 1 +9136234417125007360 1 +9136548192574529536 1 +9139805788041134080 1 +914 1 +9148071980848742400 1 +9149216169284091904 1 +9165199002069458944 1 +9169248521377374208 1 +917 1 +9174894805640142848 1 +918 1 +9180098147855769600 1 +9182828596851990528 1 +9185458640237641728 1 +9185952983951343616 1 +9188173682239275008 1 +919 1 +9190466190353661952 1 +9191943992860327936 1 +9194388393453060096 1 +9199741683232399360 1 +9207107990561972224 1 +9207927479837319168 1 +9209153648361848832 1 +921 1 +9211455920344088576 1 +922 1 +923 1 +927 1 +928 1 +939 1 +94 1 +945 1 +947 1 +950 2 +958 1 +961 1 +965 1 +967 1 +976 1 +979 1 +982 1 +987 1 +997 1 +999 1 +NULL 83 diff --git ql/src/test/results/clientpositive/tez/vector_groupby2.q.out ql/src/test/results/clientpositive/tez/vector_groupby2.q.out new file mode 100644 index 0000000..9105e36 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby2.q.out @@ -0,0 +1,2029 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(i) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), i (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(i) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 -603273425 +-6919476845891313664 710856472 +-6920172215209426944 -764412063 +-6921654334727036928 -1066775085 +-6933565857643814912 581259902 +-6934304742087655424 955171928 +-6935038507792801792 174310705 +-6935548339131138048 -1062159435 +-6938706403992854528 980732494 +-6941777546186579968 121663320 +-6947955278050181120 641695802 +-6951350560260784128 1342923026 +-6957946688477274112 1505168716 +-6960947572095770624 1136976809 +-6962271229404348416 1106995930 +-6962292590214234112 -1147471772 +-6968771079156654080 -939348081 +-6968892545529896960 470993066 +-6970396058557005824 2140632003 +-6974654664348033024 -968377273 +-6975459232300236800 1151752586 +-6986178228432322560 -1369253050 +-6988811476286873600 -1968097621 +-6988970700649168896 -1230459100 +-6992217501957169152 1472487454 +-6997233584896229376 -76654979 +-7000925438663041024 596045726 +-7003696402314215424 -1458382451 +-7011425384222244864 NULL +-7017212700635545600 304860245 +-7020852530219171840 824836988 +-7030489936116252672 1115197541 +-7035132060308643840 NULL +-7036607470351654912 -1933192293 +-7037375807670501376 -1168823523 +-7037638331316469760 14573904 +-7038455462786334720 524317972 +-7040248820505149440 196581473 +-7041362811802148864 -455114104 +-7042183597114081280 658636280 +-7046180371529351168 -117723745 +-7049618574399692800 -978892011 +-7052619594823221248 -1117358187 +-7055619148037554176 -838656526 +-7055760785575665664 759899363 +-7057750467944931328 -71449585 +-7058986555327307776 1942004879 +-7063777488249085952 -507250351 +-7078068944081002496 2013178181 +-7079898537463537664 -1205034356 +-7081500255163727872 -1969751342 +-7083646746411720704 780938234 +-7085247548404178944 1640192895 +-7093825013581979648 -628790799 +-7094189393339678720 1796486238 +-7094827141662539776 -632803945 +-7104310188119834624 -1928197479 +-7106210529681350656 1718167702 +-7109790267244814336 -291577538 +-7115054815375073280 NULL +-7120456708338688000 1751468853 +-7127548949860818944 260463232 +-7138415011665043456 -1345391395 +-7139677575412686848 -1556127172 +-7140008543769042944 -1938290238 +-7144791190333546496 -876122064 +-7145585429014888448 -817093900 +-7147490721376591872 1759741857 +-7152177800841502720 -37773326 +-7155539549555105792 -345542922 +-7158472098920390656 -71305062 +-7159700138947862528 -76430653 +-7161165959057334272 1352649032 +-7162299524557471744 1813010930 +-7172594404186693632 -1949359208 +-7185369278665605120 -374337252 +-7192529627893858304 -45439614 +-7194281951646187520 -797889292 +-7195217207163166720 -1977762695 +-7198372044947275776 -1424770359 +-7199983995864711168 -1870912732 +-7201085131997011968 -1356601829 +-7209060152494817280 -2071851852 +-7213775605408178176 1222935237 +-7220731681653604352 -851663638 +-7221474017515347968 -1421860505 +-7228589258642194432 1958701268 +-7240213957902663680 -841634659 +-7242345057866285056 548375173 +-7245872320493322240 -134686276 +-7246123871306244096 1686537335 +-7255010240787030016 1373871781 +-7255686273677328384 2100839074 +-7262049693594943488 1295073553 +-7262384251828518912 1647411522 +-7262798781688651776 -423190290 +-7263060340185194496 1590744669 +-7265998318110711808 1437057145 +-7266719102957125632 960187615 +-7270034223527993344 -1984079412 +-7273590251991162880 994798486 +-7273694358642851840 2009890220 +-7276111129363046400 -1462604138 +-7287583262310350848 -1108723753 +-7292078334519894016 -785261879 +-7296096276653391872 160290374 +-7303847963918393344 -1769423338 +-7319315187617587200 -235238928 +-7326863346317598720 958866509 +-7328087811698909184 -1017629298 +-7329767178250018816 -448060992 +-7329807949048193024 -369183838 +-7330203470474985472 -1065248998 +-7330413050756235264 -2024003241 +-7333278178640953344 1393506704 +-7333362172439035904 -835002549 +-7340231535789727744 526502851 +-7344146703223496704 789871166 +-7344947507044466688 -340951385 +-7345562788132315136 1750433588 +-7356685674003021824 1319589591 +-7357888618985873408 NULL +-7362189611124563968 -496915240 +-7366430883634929664 1592153312 +-7378096180613840896 218917585 +-7380731416973295616 -1114208576 +-7395343938785738752 830944953 +-7395553021620731904 1056997296 +-7399631791131074560 -932921363 +-7404052043914526720 -1349876582 +-7404057145074712576 56316391 +-7409317158045442048 -1463884101 +-7409653086454030336 -624029057 +-7412431471807283200 622925063 +-7413317118463164416 -507015439 +-7419068456205385728 -4393552 +-7420448501073051648 -1155174991 +-7425160895830573056 -765102534 +-7429331808102899712 -1057522129 +-7433265617153343488 NULL +-7442593976514420736 1851805558 +-7444070205513138176 -520725912 +-7451660755269853184 1338047392 +-7453525026342617088 1505665168 +-7455898404374921216 1544482684 +-7456869587112255488 -224865887 +-7461750143936897024 -1343425152 +-7464270453557993472 -1439293109 +-7469660864676585472 85774760 +-7470307155642245120 1137950964 +-7476082621253402624 1083855659 +-7483435388852559872 -914329027 +-7488345684795342848 -1668736016 +-7488415863027367936 1286367391 +-7494411162675691520 1595326878 +-7496839341561954304 868714547 +-7497303453253402624 1415647436 +-7500200359698907136 -423074450 +-7501803640821456896 1809795770 +-7506254246954500096 -511198293 +-7507424948896415744 -828522499 +-7507578199583694848 -1784633305 +-7510418793070075904 975932228 +-7511202710200885248 -2042647152 +-7511952204985049088 -1351437382 +-7512289590991544320 1409872356 +-7512297136103800832 -1180153422 +-7515996202498473984 344989592 +-7524170566881329152 -1908696083 +-7526793959592140800 -570632618 +-7528526815026692096 2125479431 +-7532751268425261056 1752520642 +-7535857766791577600 1846184880 +-7535958203887706112 656636097 +-7536330682873937920 -1289501869 +-7540104552219860992 1081187102 +-7541860097718902784 -625788713 +-7542857121910046720 1495575878 +-7547245548870025216 1784291853 +-7547432761381339136 434679307 +-7551394356730339328 1179528290 +-7557017910095650816 195281533 +-7558524160894427136 375106978 +-7571293705217687552 1240875512 +-7571957778022178816 1042184256 +-7572262898020278272 -1875699183 +-7572962089372991488 -841268868 +-7576194692683563008 2080249726 +-7593363318079610880 -1811563127 +-7594824008626372608 824743780 +-7598782894648565760 -983874694 +-7600138468036386816 -722294882 +-7603467428164009984 -619311578 +-7603569103205916672 390124976 +-7610137349734883328 683320224 +-7611584069753552896 -1765795567 +-7612455481940246528 NULL +-7612466483992051712 -1969235238 +-7616522969329262592 1924741890 +-7617860842651017216 386741352 +-7623047151287754752 -1050029724 +-7623359796281999360 1829544791 +-7623405558242500608 283322761 +-7624057992767782912 -1218581850 +-7629401308029976576 -1655030261 +-7637494527844343808 2005560498 +-7637755520917741568 648935848 +-7642381493746483200 583458404 +-7647020450676146176 609917172 +-7661192563533062144 -1319753324 +-7661250850555633664 -693249555 +-7663293054873812992 -1478812842 +-7665186441284968448 791096295 +-7668388017287020544 NULL +-7669169138124275712 -1484033125 +-7673901622181953536 1141303816 +-7679894005808693248 -306214368 +-7686220526274502656 -892839693 +-7687052294777208832 -1989778424 +-7692192232238678016 745725681 +-7695491171376291840 1225312439 +-7700203302632210432 1805308672 +-7703540456272994304 1312270193 +-7707242953271500800 1568180994 +-7707867749256445952 -596963345 +-7708932208121225216 307333276 +-7709958788604936192 595836061 +-7712425776235274240 -1432316859 +-7720966287634112512 NULL +-7739424919198187520 712625264 +-7744462446680375296 2029657999 +-7751265769984491520 700341242 +-7751427073017544704 615619268 +-7753051494275432448 -1599905147 +-7759238919361888256 -2065287410 +-7759425383684849664 -938762477 +-7772064021830574080 -1201785350 +-7773957003968675840 270090617 +-7777884099756122112 914583645 +-7778829032042790912 -807242371 +-7779270198785875968 -1242677422 +-7782344916178796544 -1213081886 +-7784419454650843136 -1210907929 +-7792903881635938304 -191899537 +-7793447076762345472 1196151988 +-7797149520019062784 -1262842192 +-7797151404935618560 -507955215 +-7800879252150779904 1352739140 +-7802538500225777664 215759857 +-7804116532814151680 -1146649990 +-7805985795815342080 -2076886223 +-7811060170911375360 1513689502 +-7818454479651135488 -559270035 +-7819437864839495680 -370093295 +-7822452149325094912 60847311 +-7824788571789279232 -1406691044 +-7827420207675105280 -36682325 +-7831320202242228224 -1726479726 +-7831595638727565312 1626884085 +-7833618000492109824 589546540 +-7835907977757245440 -87470856 +-7838598833900584960 1028204648 +-7840338174858199040 -300717684 +-7845896959112658944 -1688105985 +-7848043121524228096 1667594394 +-7849504559236210688 -2052386812 +-7858505678035951616 NULL +-7866079955473989632 196980893 +-7867219225874571264 -1078579367 +-7868306678534193152 -2144138362 +-7873753603299540992 -971698865 +-7875953567586451456 816439627 +-7877598807023386624 340384179 +-7878145001776152576 -1489628668 +-7879864376629567488 -472303419 +-7881262505761710080 -103219371 +-7881351200983613440 720703232 +-7883252982752665600 1136548971 +-7884460946615984128 1772349172 +-7888051992910274560 1818213677 +-7892780594910871552 -779743333 +-7893577088764174336 268888160 +-7894382303337832448 1832650234 +-7895991410072928256 1467284000 +-7902517224300036096 -950738312 +-7903158849011843072 -217930632 +-7904188195431661568 -442839889 +-7907355742053883904 794783516 +-7910019233726242816 -1259611508 +-7911421221625077760 476704350 +-7915999634274369536 1814570016 +-7916510129632296960 -2136052026 +-7928062266382778368 152654715 +-7928440849566146560 -800975421 +-7939634346485858304 1012843193 +-7949309059286163456 88774647 +-7949445503604604928 1695098246 +-7953426740065312768 22308780 +-7964801953178091520 661659208 +-7966960765508280320 -884109192 +-7978782649203228672 491016124 +-7989766326847807488 -1731820254 +-7998947380180819968 -136514115 +-8007017894942638080 1219616145 +-8013397854633648128 -1391183008 +-8016589197379289088 -1721763321 +-8017791189288869888 -2057666812 +-8018511948141748224 661380540 +-8021859935185928192 1420099773 +-8022573309127000064 1194243726 +-8023708819947323392 198539698 +-8028275725610909696 -1937640350 +-8028910243475038208 873035819 +-8030058711611629568 -752222556 +-8034414142083170304 -267130580 +-8046189486447017984 925032386 +-8046238369820344320 819069589 +-8047774491688255488 -1339495001 +-8051395538179063808 -469749219 +-8051587217208967168 51376784 +-8051871680800120832 NULL +-8054581198284668928 1395450272 +-8067243114610532352 214068706 +-8070535484085895168 829101712 +-8076479329071955968 2017314998 +-8082793390939193344 -1878838836 +-8084716955963252736 -1609864597 +-8086577583338061824 -340462064 +-8088337436168830976 2124297747 +-8099313480512716800 -392713245 +-8103788088118018048 -533227056 +-8104684579106914304 -1091003492 +-8108693586698706944 -896261100 +-8115963579415650304 -951728053 +-8117838333114212352 -1642207005 +-8122639684164501504 1425456189 +-8127494999848919040 1701817607 +-8131997716860526592 -457341338 +-8136227554401107968 127917714 +-8140349174954893312 NULL +-8142667274351345664 453613037 +-8147405381260345344 659397992 +-8158011642485825536 NULL +-8161047750470279168 -621365995 +-8172827216441573376 -113253627 +-8182421179156905984 -1892816721 +-8191825921746305024 703111607 +-8194062064124362752 1482983157 +-8203008052020879360 -1127100849 +-8203075743525806080 -626484313 +-8205148279289085952 768198315 +-8214462866994339840 NULL +-8219876839318716416 1452244326 +-8232763638546694144 -514010922 +-8240034910581153792 -665623523 +-8240684139569233920 -1721368386 +-8243487285852766208 1153811197 +-8244116388227104768 1893512909 +-8244657976255889408 688547276 +-8260340354454503424 1456367662 +-8269917980278980608 -1700451326 +-8270479187688816640 1519993904 +-8275337702906757120 210003006 +-8280276629934981120 -588160623 +-8293833565967810560 -1464514590 +-8297230235506343936 283618733 +-8300526097982226432 1314531900 +-8300764106868350976 -1196101029 +-8302817097848307712 -1021859098 +-8317591428117274624 -670925379 +-8318886086186213376 1033609549 +-8322751250650218496 -1212524805 +-8330233444291084288 -409404534 +-8335810316927213568 -1562552002 +-8340523561480437760 39723411 +-8345065519816695808 654939016 +-8347088645602050048 76299337 +-8357136656913686528 1517915751 +-8358130693961195520 -122391516 +-8359839265974165504 1572563948 +-8368269352975982592 NULL +-8368487814665895936 156101201 +-8369487968903897088 -194270271 +-8379109122834997248 1566607834 +-8379964450833367040 -181122344 +-8384695077413412864 -1818456584 +-8387347109404286976 -2011708220 +-8387536830476820480 -1703620970 +-8395998375405912064 -1141801925 +-8400045653258444800 1523657918 +-8411282676082565120 253621570 +-8418913260807217152 -41864614 +-8425998949410889728 -656478771 +-8426531414463545344 1701761102 +-8430283518005846016 -16094879 +-8430370933326536704 NULL +-8431492599012163584 -1131684944 +-8438554249514491904 232405034 +-8445801063348281344 -1247325089 +-8453491903284994048 1524010024 +-8454143651040444416 516479816 +-8465978403747037184 1347876055 +-8469607298426437632 374283948 +-8471480409335513088 1891680787 +-8485389240529354752 -1528033060 +-8488247955875618816 1802498539 +-8490382417169408000 987917448 +-8494118409594650624 631207613 +-8503342882470019072 1367179645 +-8503573595507761152 2068018858 +-8507279516485566464 631711489 +-8509547439040757760 -1749415887 +-8518060755719585792 -1100641049 +-8518258741831680000 -809805200 +-8521578237232529408 -373034494 +-8522878384019169280 633813435 +-8523434203900674048 -590374062 +-8525212657458348032 -1280919769 +-8535957064499879936 -99205196 +-8536369662934401024 447426619 +-8543982423727128576 -607667405 +-8544299740525461504 -846450672 +-8545239748068941824 -897586947 +-8546758906409312256 -1236536142 +-8552393882631389184 1920863389 +-8555709701170552832 -1364322216 +-8559008501282832384 895945459 +-8559252110266564608 259204652 +-8562524688907485184 1775355987 +-8566856504746352640 2018442973 +-8566940231897874432 -1409508377 +-8570933074545745920 -749042352 +-8572823448513445888 -101960322 +-8572949572756774912 1787826883 +-8581765103969312768 -890374552 +-8581979259158929408 -674478103 +-8584520406368493568 -19116270 +-8585134536083660800 -1196808950 +-8585966098173870080 318631333 +-8593419958317056000 6266567 +-8603817012434198528 1114521964 +-8604758220106014720 -1798573685 +-8607195685207408640 -1111937842 +-8615168537390571520 1469775272 +-8619303037130301440 -2074079977 +-8623238306523824128 -1442424087 +-8623965248051789824 1637295757 +-8632237187473088512 NULL +-8649711322250362880 -500921094 +-8651641150831362048 -1533934649 +-8654433008222797824 -1728171376 +-8654797319350927360 895763504 +-8658387566611996672 NULL +-8659643752269242368 1204834275 +-8659692318743314432 25400543 +-8660149447361404928 1317690178 +-8664374244449050624 1059212450 +-8664806103426252800 964810954 +-8665218198816497664 -1031592590 +-8665764757143658496 -45460011 +-8675661101615489024 -1918651448 +-8675892979328212992 1478365409 +-8683802826440105984 -1344287228 +-8688153842294595584 -1741895392 +-8689606130068611072 488559595 +-8694818694700048384 94220511 +-8696162322976997376 1228837108 +-8703026916864802816 -397683105 +-8704234107608203264 -1318045616 +-8705403811649355776 206121314 +-8710298418608619520 -1817938378 +-8714995808835444736 206454818 +-8719510423723155456 -327648289 +-8730803262481580032 NULL +-8731068123910987776 -1434562279 +-8746702976270385152 1767359228 +-8754966081778565120 -125419186 +-8754992450211692544 1785455842 +-8756989568739835904 -158420748 +-8760655406971863040 -1249011023 +-8763062627136864256 -454598288 +-8768744394742235136 -726879427 +-8782213262837530624 1565313938 +-8783777723063099392 877053605 +-8789178184387641344 -1045771991 +-8797972842900307968 284646137 +-8807361476639629312 NULL +-8813211231120031744 1575300276 +-8831091081349758976 -1832606512 +-8832750849949892608 -66010816 +-8833019327569510400 -189393743 +-8835408234247168000 -938112972 +-8836899523028312064 397255100 +-8843859708698583040 2008211296 +-8844949406948671488 315973457 +-8845239510002753536 -1358159222 +-8852770376039219200 311478497 +-8853553406533894144 -1820436871 +-8856151919723003904 -575513309 +-8856821118526734336 618321042 +-8857335871148171264 1061043704 +-8858063395050110976 -1117019030 +-8859107121649893376 -37876543 +-8866442231663067136 -1079633326 +-8870186814744420352 NULL +-8870673219965001728 -1620148746 +-8875546987176206336 414645489 +-8877053610728161280 706823078 +-8877431933441327104 1650676897 +-8879742387365429248 1912175355 +-8881446757271846912 1224662770 +-8887058200926093312 -191704948 +-8892963883085578240 -2087815643 +-8896045754034978816 1392980712 +-8914039133569400832 1332042427 +-8916987977485312000 -839176151 +-8922409715403112448 -536315467 +-8923529803981905920 1148500740 +-8927968289860370432 1033836308 +-8930307926221807616 -966979668 +-8938849835283677184 1318606691 +-8940944155843461120 -858439361 +-8941201923743703040 NULL +-8946656952763777024 -759911896 +-8948335470186373120 -1078397698 +-8959796625322680320 1318956413 +-8961059046745669632 1783034168 +-8962547695651323904 1091736925 +-8965578088652095488 -1216166764 +-8989473881707921408 1310360849 +-8990843030306717696 -311437801 +-8992599250893979648 1677494300 +-8996954350906294272 -1769037737 +-9002912355472736256 -561932449 +-9004892183139811328 -1949698319 +-9008631121684832256 704038411 +-9012093603044245504 538766635 +-9013952631912325120 -1052493316 +-9014145341570203648 273256071 +-9022154842129547264 1130043800 +-9032650742739836928 1102561039 +-9049720998034137088 1747664003 +-9051477157204770816 -1648991909 +-9058029636530003968 -1197602595 +-9066993118333706240 -425196209 +-9071565764086521856 2058640744 +-9075302542655684608 -295186284 +-9075486079396069376 -1805915233 +-9078662294976061440 -235819331 +-9079801920509001728 -705887590 +-9080568167841226752 906074599 +-9080956291212132352 1330219997 +-9084940280061485056 128430191 +-9088239683374350336 -18917438 +-9091113592821972992 1861276585 +-9095689235523264512 1687784247 +-9101953184875757568 -1918847735 +-9102482277760983040 742866312 +-9105358806324035584 1679381813 +-9105701280936501248 1109664665 +-9109392978217484288 407098216 +-9117959922369060864 936133387 +-9126793997498957824 770574055 +-9136398397785948160 376076075 +-9142610685888192512 -387395264 +-9145593811310010368 -202409329 +-9148197394287779840 -1568536214 +-9149719074367946752 234452496 +-9157613004431998976 1362740312 +-9175038118837149696 -1701492480 +-9175279464813223936 2080412555 +-9178166810751909888 -1407817977 +-9187662685618348032 NULL +-9189155542884474880 -1955545912 +-9203804401302323200 -671853199 +-9203942396257984512 -1625800024 +-9206329156028112896 2084666529 +-9210275791460499456 601376532 +-9213132862973829120 -1216206795 +-9215144824304721920 -399643110 +-9218875542187065344 785382955 +-9219066990552760320 2090044777 +1021 -1884780525 +1030 -300429552 +1032 -1914210382 +1039 914062370 +1046 -990781312 +1048 -249150336 +1053 -1369302744 +1055 371383749 +1058 -1497098905 +1065 1194089079 +1066 1767019352 +1074 161210995 +1075 2144365072 +108 -835107230 +1086 -1341627565 +1093 NULL +1094 -359194591 +1095 291866793 +1099 1390704286 +1115 -144862954 +112 -2147071655 +1127 -423378447 +1128 -932525608 +1132 239078089 +1134 187718349 +1141 -540820650 +1142 1184001017 +1145 669484010 +1153 1646811064 +1157 590719541 +1158 990246086 +1165 1153089364 +1168 NULL +1177 1182595271 +1187 69110370 +1189 215508794 +1198 -1857500489 +120 29680001 +1201 945911081 +1217 -1802746460 +1234 -1921909135 +1243 1938788165 +1247 -866304147 +1252 30036142 +1261 -343173797 +1270 1969239701 +1280 991397535 +1282 -1140071443 +1286 -480058682 +1287 -1362178985 +1290 177837042 +1291 1398486099 +1299 765656980 +130 -2081501748 +1307 882331889 +1312 742059797 +1316 997193329 +1321 731241198 +1337 -1948257321 +1341 492120544 +1342 1203482872 +1343 -217785690 +1345 -600315936 +1346 -158233823 +135 198017473 +1366 748358417 +1368 1650573576 +1371 821316302 +138 843282593 +1386 2081152819 +1398 955267058 +1409 865013617 +1422 -1402821064 +1423 631954352 +1436 1765173148 +1439 531459992 +1447 NULL +1450 740883263 +1454 NULL +1458 -1001529082 +1462 287239980 +1466 574069547 +1470 1406029775 +1477 -707228984 +1481 1022707418 +1489 766737781 +1493 557053197 +1495 -1222897252 +1501 1081920048 +1506 1893632113 +1508 1632769786 +1509 1920662116 +1518 824235855 +1520 NULL +1521 -993029335 +1524 -1851280202 +1530 1934970004 +1537 278601840 +154 998793176 +1541 -1430903652 +1542 NULL +1545 564366133 +1556 -1202975006 +1559 -206177972 +1561 NULL +1566 747122546 +1604 -2077771325 +1606 -1901806083 +1608 142722637 +1613 -1422780798 +1614 -296195507 +1620 -1989378509 +1638 92777932 +1641 NULL +1643 1346627771 +1648 -496870819 +1651 -1575588203 +1667 -499533481 +1671 1504919241 +1674 1488440165 +1676 -393723522 +1678 -1104268719 +168 -53587991 +1681 929751599 +169 -1759354458 +1693 -1545572711 +1701 1404346934 +1704 -605370177 +1719 1008698636 +1726 NULL +1728 626251612 +1745 368170021 +1751 -667383951 +1752 -1538978853 +1769 805672638 +1774 -1974777102 +1775 1928365430 +1777 1061638369 +1780 -71433796 +1781 NULL +1785 -524189419 +1786 -1009249550 +1788 -997463353 +1789 -1098379914 +1791 -1900369503 +1796 -1625062942 +1806 -40284975 +181 1742536084 +1811 -922200749 +1813 -738157651 +1826 505902480 +1827 -956668825 +1835 1768399622 +1837 290921475 +1845 -909024258 +1846 418182899 +1856 44009986 +1862 674547678 +1863 -1017027298 +1864 NULL +1866 -400501472 +187 2133950868 +1870 25644069 +188 316438994 +1880 1293876597 +1890 -1660344634 +1892 596595603 +1899 734267314 +19 -436386350 +1906 1070989126 +1910 1978200605 +1914 -1146055387 +1926 -490337498 +1937 -987995271 +1940 950997304 +1941 -54793232 +1948 735732067 +1955 -316678117 +1965 1173098061 +1972 -1404921781 +1981 -980869630 +1983 -1954890941 +1987 65956045 +1990 1050809633 +1995 1012230484 +1999 -9958400 +2001 217476429 +2002 1535954353 +2004 1464703053 +2009 -1471147786 +2011 33234633 +2013 1142098316 +2016 135341845 +2017 44628821 +2020 37730738 +2025 989475408 +2026 -1454941039 +2029 546555204 +203 2070969353 +204 2018249426 +2046 363981930 +2056 1941527322 +2067 NULL +2072 -1652600376 +2073 -856843296 +2085 -1179668872 +2089 945683736 +2092 1678261510 +2105 1550112473 +2106 1597303154 +2108 977292235 +213 -361944328 +2131 -464804906 +2138 -1048181367 +2140 -1319686435 +2144 117620760 +2155 1126157283 +2177 -1960344717 +2179 1394370866 +2180 -120704505 +2183 -1947868215 +2186 -1655396452 +2187 -906986958 +2189 NULL +2193 -598552521 +2194 -853967587 +22 176792505 +2201 1425362689 +2205 2013376408 +2214 1602631923 +2217 479566810 +2218 NULL +2223 1605596441 +2227 1054864168 +2229 516843026 +2232 277582670 +2241 810157660 +2244 -1699049982 +2255 -1561738723 +2262 1283898734 +2264 -425103007 +2270 -1429346144 +2274 -1676261015 +2277 -1447263708 +2279 -1412187081 +228 167432368 +2283 530274409 +2285 1533817551 +2295 -1914072976 +2306 -604362582 +2320 -1919939921 +2323 -2028355450 +2325 1645067708 +2335 1281277970 +2341 1951869763 +2348 -40407627 +2358 -370798230 +236 514833409 +2373 -1602792666 +238 713031549 +2386 930008274 +2393 1852725744 +2398 1489169773 +2400 663222148 +2410 NULL +2412 -887663189 +2420 480849725 +2426 62293025 +2434 1621606222 +244 860708524 +2461 -1668974292 +2463 2031604236 +2465 -1819075185 +2469 524808 +2475 -1116100266 +2476 -1210261177 +2485 1594107168 +2487 NULL +2492 -270683864 +2494 -1830870295 +2502 -336625622 +2506 776606164 +2509 693331761 +2512 -1164833898 +2514 407233168 +2515 -601946913 +2517 198624903 +2524 -1081766449 +2533 672266669 +2539 1090344463 +2540 1103878879 +255 -1106469823 +2551 -1762037754 +2553 1112783661 +2560 -1493282775 +2563 -1141652793 +2565 -1302592941 +2569 -837503491 +2579 1640445482 +2580 1933545427 +2587 -1125605439 +259 -922875124 +2599 -1903090602 +2607 NULL +2608 335359004 +2619 1895751360 +2625 -1897998366 +2626 1620529246 +263 1807358029 +2637 1522208504 +2647 92834720 +2649 659343542 +2662 209430502 +2663 43983130 +2675 1305668933 +268 860658464 +2680 825977391 +2682 -675125724 +2688 -1249134513 +2689 -1343327 +2692 NULL +2700 -123529324 +2712 -901778330 +2714 1284956108 +2715 1569269522 +2719 1516149502 +2724 922373046 +2725 257821327 +2735 1307148254 +2745 1134416796 +275 1517488324 +2752 962091264 +2762 314232856 +2772 1835749815 +2776 -1801684055 +2786 343362793 +279 -1709246310 +2790 686081268 +2791 -714594143 +2803 923980398 +2805 -295751373 +281 -42151403 +2810 1844415080 +2811 -170643477 +2816 -912429611 +2821 829055499 +2824 -1679120527 +2835 144428297 +2842 889772203 +2843 -887790938 +2846 -121162464 +2847 1634441052 +2848 -985817478 +2850 1618123796 +2855 1756592797 +2862 1956887369 +2878 -906545548 +2886 84231802 +289 -1144976744 +2897 1211873318 +2900 2114363167 +2903 1552351592 +2905 -1232183416 +2911 1483580941 +2915 -470798506 +2919 1002132158 +2933 -1484787952 +2938 -2032576637 +294 -1817096156 +2941 -1862095575 +2942 1638471881 +296 597657990 +2962 1042237722 +2968 1556919269 +2971 -373541958 +2977 -2007662579 +2979 131031898 +2984 1440427914 +2986 -933324607 +2988 492639283 +2991 NULL +3002 -1538558250 +3006 1328225044 +301 -1924909143 +302 -1730740504 +3021 177294487 +3024 -891543038 +3029 -1198036877 +3031 NULL +3036 -449333854 +3043 692666133 +3054 -973128166 +3055 -1198465530 +3058 -1144920802 +3059 1386071996 +3060 818313200 +3067 1256676429 +3071 1129173487 +3073 722737062 +3079 -882028850 +3083 -385247581 +3084 1333148555 +3089 584084934 +3094 1335803002 +3103 -1622653291 +311 -1850492820 +3111 -1299159155 +3118 NULL +3119 673904922 +3144 -758231588 +3147 1102069050 +3159 1127080164 +3163 26270580 +3174 -1871446009 +3183 1363459426 +3190 297577612 +3197 976870621 +3199 -2086352100 +320 1198172036 +3203 -491377296 +3206 -733756717 +3208 -211669740 +3212 900992177 +3213 -1171326281 +3231 -817383093 +3232 1434588588 +3235 -287400633 +3244 1303632852 +3245 1385883394 +3248 1202720813 +3249 206942178 +3253 -1218871391 +3255 -1212433954 +3263 -419335927 +3286 -1078214868 +3300 1743696703 +3307 -1128317466 +3322 -1544877665 +3333 -462541618 +3352 -1621814212 +336 1376818328 +3365 1712411993 +3366 -606214770 +3397 -2066134281 +34 1969650228 +3401 -2138343289 +3407 NULL +3409 -337586880 +341 278643258 +3418 786565385 +342 -884796655 +3421 -1878572820 +3430 -395499919 +3443 -1006768637 +3446 440393309 +345 NULL +3456 NULL +346 -938756287 +3460 1204325852 +3462 511836073 +3467 596802082 +347 -414207254 +3472 868717604 +3478 1772545157 +3493 -890552359 +350 330302407 +3507 2032271149 +3510 197056787 +3512 636901402 +3533 1076088102 +3534 NULL +3541 -996953616 +3542 459269456 +355 1258721737 +3554 48554395 +3555 458190500 +3563 1332181668 +3566 -519978947 +3567 410340192 +3568 NULL +3579 -1426893312 +3588 850625480 +3599 2069258195 +3606 -1032306832 +3608 773730574 +3609 -1380191654 +361 -434747475 +3613 1191238870 +3622 2057486961 +3625 -1656822229 +3630 693876030 +3637 929560791 +364 1336365018 +3648 1142481557 +3663 -886741158 +3664 -186600427 +367 -1324624386 +3672 1825828852 +3673 -362603422 +3677 470575409 +3680 1124269631 +3682 -1718163874 +3690 1500437122 +3691 -664111469 +3701 760466914 +3702 -1423467446 +3703 1796950944 +3707 1377359511 +3722 -1322736153 +3724 1625751062 +3725 1911834442 +3728 -800799595 +3739 -192181579 +3747 1001732850 +3749 1027147837 +375 -1754347372 +3755 -7929246 +3763 -679230165 +3764 -2027812975 +3769 -1431196400 +3770 -1627366321 +378 -1270523286 +3781 141492068 +3789 -139448716 +379 1625699061 +3810 -1043413503 +3812 -870900240 +3823 1563120121 +3824 1372224352 +383 1063524922 +3830 1443426396 +3835 133276416 +3841 -901079162 +3848 1436480682 +3858 1925283040 +3860 -423945469 +3866 436093771 +3874 -1603071732 +3879 461680901 +388 -66112513 +3887 476919973 +3901 -1909635960 +3904 1473503196 +3907 -373038706 +391 1107258026 +3910 NULL +3911 -1283465451 +3913 1506907734 +392 1664736741 +3932 2145269593 +3940 923353533 +3941 -734921821 +3945 -1758125445 +3946 523289079 +3949 1797164732 +3958 65172363 +3960 1509573831 +3961 -1955647385 +3962 NULL +3965 771827308 +3974 670667262 +3980 -564495517 +3990 -1392487784 +4018 -396852483 +4020 -1447140800 +4024 -202035134 +4030 -216495498 +4037 1003667927 +4051 1052255272 +4054 1998185704 +4056 -1516259168 +4075 NULL +4078 727802564 +4088 947846543 +41 -203911033 +412 2144454927 +417 152891873 +425 1336194583 +443 596242714 +454 -1227085134 +455 1159353899 +462 1677444379 +470 -181523892 +471 -207899360 +481 536235636 +482 765084282 +485 874824958 +489 -928013434 +49 1673218677 +490 1229172951 +491 -201554470 +5 -1063673827 +500 1216016081 +501 715333063 +504 851975276 +522 -853606287 +523 149701884 +524 -1326025787 +530 -1851680302 +535 888896424 +579 -1804244259 +583 -1554325042 +584 -2017279089 +586 -310343273 +587 1485934602 +590 -186764959 +597 1577999613 +601 -592568201 +612 1131663263 +615 2097519027 +618 -412333994 +65 919363072 +650 1222217404 +658 -1254129998 +66 2013444562 +661 1045719941 +663 -1261099087 +664 899810881 +677 -1038565721 +68 879290165 +681 -893863493 +687 1888675011 +688 NULL +690 -1112062809 +691 -1156193121 +6923604860394528768 -1095938490 +6924820982050758656 -1709117770 +6926925215281774592 987734049 +6927260280037097472 1668094749 +6928080429732536320 1300798829 +6933001829416034304 2089198703 +6933451028794925056 1776456512 +6933731240564056064 780859673 +6934570741217755136 491758252 +694 -2015780444 +6947488599548215296 1141595012 +695 -521886983 +6960137166475911168 -558456218 +6962726713896484864 2051470532 +6963217546192322560 -1340213051 +6964585306125008896 2146312499 +6967631925774639104 373031319 +6969599299897163776 -2042831105 +6974475559697768448 1493555718 +6982145326341423104 -941433219 +6987889924212203520 -2053551539 +6991316084916879360 -1345085327 +6996686091335884800 -1738775004 +7006803044329021440 1614297403 +7013693841855774720 656187584 +7014537632150224896 -44426049 +7017956982081404928 -828724467 +7022349041913978880 -1096013673 +7027529814236192768 -1988508336 +7031339012080549888 1182390248 +7039820685967343616 -483740394 +7045967493826387968 -1669227632 +7049773031131283456 814544198 +7052226236896256000 1119976718 +7054271419461812224 -1266138408 +7054938591408996352 -352146259 +7060236714847412224 -1858443953 +7061498706968428544 -290558484 +7061809776248545280 -469870330 +7062382339142156288 536876888 +7062605127422894080 -1614194712 +7065344324692443136 -1881263242 +7068517339681259520 -1871209811 +7069729473166090240 NULL +707 1343581455 +7077311975029555200 1103797891 +7078641038157643776 NULL +7080269176324218880 -337073639 +7084659344078970880 963854010 +7086206629592252416 -1106685577 +7091300332052062208 NULL +7099005292698550272 917891418 +71 -20639382 +7107604675626008576 1949494660 +7125231541858205696 -2111312205 +7128222874437238784 -283378057 +7130159794259353600 -837506172 +7130306447560826880 77063155 +7149417430082027520 -1352545619 +7153922334283776000 NULL +7157247449513484288 -36038293 +7164349895861829632 -1153978907 +7165364563962191872 -1272838092 +7166263463731421184 -1838281337 +7175638927948562432 596280431 +7186401810812059648 1430614653 +7195454019231834112 -1419573027 +7198687580227043328 563507584 +7199539820886958080 NULL +7204802700490858496 -1719427168 +7210160489915236352 -1353470095 +7212016545671348224 1309976380 +7212090742612467712 -1067083033 +7217123582035116032 -90029636 +7220131672176058368 1017953606 +7220581538170413056 615661052 +7223569671814987776 -1004204053 +7226360892091416576 -935723237 +7229607057201127424 -1818380492 +723 1616782308 +7231399302953377792 1990792684 +7232273749940838400 -1231821948 +7235109456886816768 -2098078720 +7237310132329488384 -1061859761 +7238339720750948352 -1770229099 +724 -616724730 +7242751359672631296 -2016985611 +7249443195032985600 -51612681 +7250237407877382144 -772236518 +7254710367022645248 1911809937 +7255302164215013376 1281159709 +7259955893466931200 NULL +7260908278294560768 826519029 +7265141874315517952 -571587579 +7266437490436341760 177391521 +7271786885641666560 936752497 +7271887863395459072 -94709066 +7274777328897802240 482977302 +7291432593139507200 1570238232 +7295502697317097472 210728566 +7295926343524163584 1182646662 +7296164580491075584 1412102605 +7299197687217856512 172075892 +73 488014426 +7304839835188609024 1961954939 +7308289763456000000 -1423477356 +7309156463509061632 1304431147 +7310869618402910208 -359943425 +7319711402123149312 1036391201 +7333512171174223872 -332125121 +7339426767877390336 538268118 +7343171468838567936 879289168 +7344029858387820544 -1669848306 +7345991518378442752 849859032 +7347732772348870656 -1800413845 +7348598907182800896 -1940205653 +735 115111911 +7354813692542304256 1426152053 +7359004378440146944 1082837515 +736 -1183469360 +7368920486374989824 -1822850051 +7370078518278397952 -215703544 +7370803940448305152 -533281137 +7375521127126089728 -688296901 +7376467688511455232 -348628614 +7378993334503694336 1870464222 +738 -453739759 +7381659098423926784 867587289 +7384150968511315968 1447462863 +7386087924003676160 2038381675 +7391208370547269632 -743680989 +7393308503950548992 -849551464 +7394967727502467072 -1983567458 +7401968422230032384 -504529358 +7410096605330227200 1987336880 +7410872053689794560 -916344293 +7411793502161182720 -177025818 +7412924364686458880 1817671655 +7414865343000322048 -829717122 +7418271723644403712 1202593021 +743 1004241194 +7432428551399669760 -805288503 +7432998950057975808 -434656160 +7436133434239229952 203688965 +7440265908266827776 -1425942083 +7450416810848313344 1393262450 +7452756603516190720 -2009569943 +7454442625055145984 -267554590 +7454632396542074880 859140926 +7461153404961128448 -23865350 +7471208109437304832 -1603374745 +7473537548003352576 -1439424023 +7486884806277611520 1516236846 +7487338208419823616 1974939899 +7487538600082554880 2068538934 +7490717730239250432 -1829691116 +7491898395977523200 1265528735 +7492436934952574976 NULL +7497276415392407552 1543611951 +7497306924248834048 550594651 +7500716020874674176 -1953605752 +7514552840617558016 334208532 +7517159036469575680 -1437126017 +7524958388842078208 -664856187 +7528074274555305984 550186724 +7528211148397944832 -512198016 +7534042483076857856 1645753684 +7534145866886782976 -532755480 +7534549597202194432 2044130430 +7545689659010949120 -1380678829 +7548958830580563968 1836499981 +7549858023389003776 NULL +7555301305375858688 1916363472 +7566273236152721408 881673558 +7569249672628789248 -1952235832 +7570474972934488064 -432218419 +7573530789362262016 NULL +7575087487730196480 1421779455 +7581052107944361984 1493152791 +7581614118458335232 -1129489281 +7584007864107778048 1410516523 +7592440105065308160 NULL +7593521922173419520 1260480653 +7596563216912211968 605946758 +7599019810193211392 -2112149052 +7608447395949109248 882762933 +7614435638888210432 735600165 +7620183559667081216 -1967660827 +7621013099259527168 -553349593 +7625728883085025280 -1699044525 +7626715182847090688 1905812339 +763 -1933374662 +7637152193832886272 1880017800 +7647481735646363648 1164895226 +7648729477297987584 NULL +7652123583449161728 472901914 +7659279803863146496 1541249928 +7662037650719850496 -175727228 +7675009476762918912 522895626 +7678790769408172032 -1313618168 +7682327310082531328 879500678 +7686992843032010752 -897622427 +7689489436826804224 -909127123 +7690986322714066944 -2124994385 +7691062622443044864 1516165279 +7696737688942567424 -269702086 +7697541332524376064 -1070951602 +7700734109530767360 194754262 +7701723309715685376 -1831957182 +7705445437881278464 527598540 +7710447533880614912 -583908704 +7718825401976684544 -1226425562 +7720187583697502208 -1366059787 +7731443941834678272 -1092872261 +7735566678126616576 1626868156 +774 449788961 +7741854854673367040 -1743938290 +7746402369011277824 -1735287250 +7747874976739016704 315055746 +7748799008146366464 -540401598 +7752740515534422016 1851654062 +7753359568986636288 -816661030 +7753882935005880320 1190302173 +7761834341179375616 1273877405 +7762823913046556672 1198701102 +7765456790394871808 1074488452 +7768984605670604800 NULL +7775034125776363520 -1628799508 +7778936842502275072 -1702587308 +7779486624537370624 -1998652546 +7779735136559579136 -1228063838 +7782245855193874432 618991041 +7784169796350730240 -958165276 +7784489776013295616 -158848747 +779 -1939362279 +7790728456522784768 1575091509 +7792036342592348160 -538812082 +7794244032613703680 1301426600 +78 95356298 +780 -737624128 +7800332581637259264 592011541 +7801697837312884736 -116484575 +7818464507324121088 -2119724898 +782 -1552053883 +7823874904139849728 344239980 +784 44595790 +7843804446688264192 -397951021 +7844258063629852672 972835688 +7845953007588401152 NULL +7857878068300898304 977624089 +7868367829080506368 658008867 +7870277756614623232 985634256 +7871189141676998656 1363568842 +7871554728617025536 -309571354 +7874764415950176256 2127682701 +7885697257930588160 1992977592 +7888238729321496576 978044705 +789 NULL +7892026679115554816 626941809 +7892281003266408448 -371779520 +7898670840507031552 776459017 +7909645665163804672 -1289665817 +7917494645725765632 2076370203 +7919597361814577152 2125311222 +7921639119138070528 -1030565036 +7922443154272395264 -1333770335 +7926898770090491904 1582537271 +7933040277013962752 -1061222139 +7936149988210212864 1769324649 +7944741547145502720 372099650 +7947544013461512192 -1184620079 +7948803266578161664 1766517223 +7955126053367119872 1447438548 +7961515985722605568 866084887 +7961909238130270208 -1138530007 +797 996831203 +7983789401706094592 230954385 +7989119273552158720 NULL +7989160253372817408 1848935036 +7997694023324975104 -1826997220 +7998357471114969088 346562088 +7998687089080467456 NULL +80 NULL +8000440057238052864 1251556414 +8002769767000145920 1668446119 +8004633750273925120 -1754203978 +8011181697250631680 1773417290 +8011602724663336960 667283966 +8014986215157530624 -799249885 +8017403886247927808 -1491722659 +803 -2096425960 +8045070943673671680 435407142 +8048726769133592576 -406264741 +8059284960252731392 -251576563 +8069531888205086720 1978171687 +8071961599867387904 52667480 +8073733016154431488 1815882183 +8079573715140485120 503752931 +808 -1836166334 +8087737899452432384 -2137168636 +809 -682333536 +8091421389575282688 NULL +8099215208813903872 492968645 +8100036735858401280 -146961490 +8109381965028548608 2022944702 +8111757081791733760 -234758376 +8113585123802529792 129675822 +8116738401948377088 1914993018 +812 -954480325 +8120593157178228736 -1379039356 +8129551357032259584 323817967 +8135164922674872320 -1459528251 +8142241016679735296 -163859725 +8143462899383345152 644934949 +8144552446127972352 2083836439 +8145745969573666816 467753905 +8145750910080745472 1275228381 +8146288732715196416 -728015067 +8146492373537660928 1316369941 +8148211378319933440 NULL +815 1910930064 +8150115791664340992 793047956 +8156018594610790400 1384071499 +8156782979767238656 -1651993300 +8160569434550403072 -1808960215 +8160662610166194176 -310584775 +8163948965373386752 1968813171 +8168742078705262592 -303747347 +8169878743136043008 1765874562 +8171188598958407680 1996235654 +8183233196086214656 1450881368 +8184799300477943808 -579916775 +8190539859890601984 1418228573 +8190967051000659968 604460005 +8192304692696383488 494570380 +8195103847607967744 15020431 +8199513544090730496 758926227 +820 746904285 +8201303040648052736 -774406989 +8201491077550874624 1677197847 +8208354137450766336 1377144283 +8210813831744118784 139661585 +8213810702473183232 587797446 +8219326436390821888 2064448036 +8220104397160169472 -1274158260 +8221561626658881536 -1626062014 +8222714144797368320 -318380015 +8223732800007864320 -599396052 +823 1660088606 +8230371298967609344 1660278264 +8235179243092090880 187893585 +8244041599171862528 402173272 +8254763178969915392 658850444 +8268875586442256384 1271280812 +8269730157217062912 127051381 +8272001752345690112 3999930 +8279056098670198784 2133492883 +8282648443538710528 -402441123 +8283099811330506752 737149747 +8286706213485297664 -916495008 +8287522765741301760 -1817564067 +8290014929764040704 -1424027104 +8290944180915871744 684561551 +8294315622451740672 -43858652 +8295110846998233088 -1945738830 +83 -684022323 +8302473563519950848 -1524081566 +8316336224427483136 345556325 +8323460620425330688 -1524554771 +8325227661920133120 -178568841 +8332670681629106176 -314935936 +8333523087360901120 -442732016 +8337549596011102208 904604938 +8345435427356090368 323919214 +835 -1054609414 +8351163199364390912 391186487 +8362046808797306880 89366322 +8365058996333953024 -2043805661 +8367680396909404160 -1269216718 +8368012468775608320 -1665164127 +837 170870820 +8371939471056470016 826143442 +8372408423196270592 564349193 +8372588378498777088 1321678350 +8374321007870836736 -329336519 +8376440110255243264 1665724041 +8383159090746204160 605141554 +8388363436324085760 -707108808 +8391407951622815744 NULL +8391785334471589888 -630900418 +8396433451610652672 -180280420 +8398862954249560064 669871113 +8407869317250220032 -1240912824 +8410599906334097408 -1606567895 +8411494452500930560 -1568646283 +8415171956168417280 541118710 +8416121695917498368 63706286 +8417381121663746048 1458051497 +8419958579638157312 -99916247 +8424515140664360960 1847210729 +8435912708683087872 -2081809883 +845 -1026746699 +8451612303224520704 -971203543 +8454154705460666368 -1421396891 +8455496814886002688 107680423 +8457906374051020800 106847364 +8461498293348065280 1636364987 +8463868417649524736 -1643714866 +8467976965865799680 916057807 +8470141334513098752 NULL +8472429318602268672 -308225568 +8473699639908261888 -591879497 +8487573502287478784 1895282160 +8489584373231919104 1416850873 +8489735221193138176 -1124028213 +85 -913906252 +8501910015960735744 1579460630 +8508401924853850112 -1578387726 +8509508263705477120 1107757211 +8514851182589771776 415234946 +8514979402185596928 1902676205 +8515682078777081856 -1026458834 +8518454006987948032 -379174037 +8519937082746634240 -1745449855 +8523972434954510336 2134433675 +8524940073536954368 476858779 +8525336514806317056 350802495 +8525894870444638208 1216287232 +8532016240026279936 -1726585032 +8536948829863198720 1723691683 +8540237852367446016 398960205 +8543177193114779648 2048533360 +8547243497773457408 -534991774 +8551446856960942080 -1312782341 +8553195689344991232 566646177 +8554899472487596032 -491882534 +8555933456197828608 NULL +8555948987770511360 107941738 +8557218322962644992 -1210550573 +8558000156325707776 -370901197 +8560526613401714688 1592467112 +8569030475428511744 1743671220 +8570983266408103936 950545385 +8571268359622172672 1187495452 +8573305425181941760 1583280136 +8577096957495025664 NULL +8579974641030365184 -1545388906 +8583916402383601664 -733239404 +8613562211893919744 -1109134719 +8625937019655200768 272086526 +8631515095562887168 -1244527286 +8637720762289659904 1669519977 +8639254009546055680 477584560 +8641221723991433216 -1531040609 +8643198489997254656 -1079086534 +8644602243484803072 -1218592418 +8649296591032172544 -1744964279 +8652485812846567424 1372705672 +8656571350884048896 NULL +8660248367767076864 1520375588 +8665969966920990720 1372982791 +8666178591503564800 -1565785026 +8677632093825916928 2040926345 +8677794924343164928 115470151 +868 -2133145181 +8682955459667951616 2009215103 +8687042963221159936 -870624802 +8688483860094599168 -273937943 +8693036785094565888 2090496825 +8697823501349609472 922553769 +8698055291501543424 -1755088362 +8708232769657815040 6526476 +8708845895460577280 1860113703 +871 915505006 +8714829359200747520 672919099 +8716401555586727936 -789126455 +8720504651219001344 825677248 +8723248113030782976 144499388 +873 842283345 +8731960288562044928 869288953 +8734584858442498048 -946830673 +8736061027343859712 -1974972123 +874 58313734 +8752150411997356032 -1502924486 +8759089349412847616 1972940844 +8759184090543857664 435426302 +8760285623204290560 -573787626 +8761174805938331648 1205391962 +8769199243315814400 2100377172 +8773222500321361920 217823040 +8775009214012456960 -213198503 +8779073705407963136 -1979314577 +8779711700787298304 -859535015 +878 290601612 +8780196485890555904 -607285491 +8782900615468302336 -1411407810 +8783241818558193664 -714270951 +8785153741735616512 1028092807 +8792059919353348096 -745678338 +8793387410919038976 -1058166020 +8795069490394882048 1366402722 +8806507556248731648 1190554937 +8808467247666241536 -1706867123 +8811693967537774592 1731764471 +8815398225009967104 -1701502632 +8817665768680906752 1550375386 +8822384228057604096 -1371840597 +8825059717746376704 872554087 +8829545979081744384 NULL +883 -1554130090 +8836228556823977984 1499399891 +8837420822750314496 2052773366 +8849475396952514560 718692886 +8850055384477401088 1503176016 +8853989376829833216 -1505397109 +8854495099223375872 2065408093 +8854677881758162944 1883400319 +8854715632851345408 1301997393 +8856674723376668672 -4943292 +8868529429494071296 1830870769 +8871707618793996288 -677778959 +8875745082589929472 -1460613213 +888 1012696613 +8895174927321243648 -522450861 +8896237972875370496 1540680149 +8897901899039473664 -535056977 +8899122608190930944 -2146432765 +8900180888218329088 -1058356124 +8900351886974279680 1000106109 +8900545829211299840 352214248 +8905330479248064512 NULL +8910706980937261056 1166237779 +8920344895701393408 -1126628450 +8920533610804609024 1739911574 +8927691194719174656 -917062754 +8928133990107881472 -1511162508 +8935252708196999168 1603612975 +8936639033158410240 -1305139473 +8939431770838810624 -934008333 +8945004737083555840 252169185 +8945302550165004288 1117805438 +8962097525980225536 -329695030 +8972161729142095872 1709983738 +8979012655944220672 -120692484 +898 338805871 +8983857919580209152 1273798925 +8983912573761167360 NULL +8984935029383389184 -1565671389 +8987827141270880256 -1024500955 +8991071342495531008 -574475259 +8991442360387584000 2081243058 +8994608999945125888 -839512271 +8995562121346260992 -618505946 +8996824426131390464 -214166042 +9000633029632499712 -641062448 +9001907486943993856 -1974257754 +9005866015985713152 652118640 +9016280522993975296 388707554 +9020143715350814720 NULL +9023663198045544448 1145627305 +9030480306789818368 -758973175 +9038087402564657152 NULL +9040958359122640896 -1635301453 +9043089884440068096 -1527024213 +9048002942653710336 -1079231269 +9048297564833079296 -1534307678 +9050032047355125760 -1240048334 +9053187076403060736 1075444504 +9054887854393950208 -1517536924 +9062227900376203264 1260101584 +9064847977742032896 -1849091666 +9067985867711291392 43672187 +9073672806863790080 -2144241640 +9075404705968840704 712816880 +9078604269481148416 -298221893 +908 266601601 +9083076230151864320 2111462911 +9083704659251798016 -1359838019 +9084402694981533696 NULL +9085381906890203136 -240529113 +9085434340468473856 76381404 +9086905513121890304 1796013407 +9089435102788009984 2102440065 +9091082386452684800 748185058 +9091085792947666944 254921167 +9094945190752903168 2126491387 +9096395849845194752 100270148 +91 -1288198020 +9104574294205636608 1257621270 +9107991000536498176 -847235873 +9112400579327483904 1111985530 +9114850402293882880 1571267481 +9116137265342169088 -236700442 +9117063974299148288 -297664578 +9119046173224370176 1604076720 +9123116008004288512 1882932986 +913 1845797092 +9131533983989358592 -1234163924 +9132009829414584320 -1856034030 +9136234417125007360 NULL +9136548192574529536 1121512594 +9139805788041134080 881396599 +914 -1257859205 +9148071980848742400 1370723240 +9149216169284091904 -694520014 +9165199002069458944 430686478 +9169248521377374208 1566958573 +917 -2076460151 +9174894805640142848 1336842978 +918 1359437295 +9180098147855769600 1950882901 +9182828596851990528 -1012329052 +9185458640237641728 -1011125931 +9185952983951343616 889733679 +9188173682239275008 -1248781172 +919 -357680544 +9190466190353661952 1918230406 +9191943992860327936 -595769210 +9194388393453060096 1002519329 +9199741683232399360 -1096771844 +9207107990561972224 -765190882 +9207927479837319168 2066707767 +9209153648361848832 471464395 +921 1238986437 +9211455920344088576 166320811 +922 932774185 +923 -1506324615 +927 1044196568 +928 413090363 +939 -982238309 +94 NULL +945 219415594 +947 -896274896 +950 -1541281934 +958 NULL +961 1805139501 +965 1336951982 +967 -1240208945 +976 -1563676282 +979 1022214896 +982 -835198551 +987 1807877618 +997 -742707249 +999 -346607939 +NULL 2142592987 diff --git ql/src/test/results/clientpositive/tez/vector_groupby3.q.out ql/src/test/results/clientpositive/tez/vector_groupby3.q.out new file mode 100644 index 0000000..38f99f1 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby3.q.out @@ -0,0 +1,94 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +CREATE TABLE orc_table_1(a INT, b INT) STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@orc_table_1 +POSTHOOK: query: -- SORT_QUERY_RESULTS + +CREATE TABLE orc_table_1(a INT, b INT) STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@orc_table_1 +PREHOOK: query: insert into table orc_table_1 values(12, 1),(5, 1), (9, 2),(12, 1) +PREHOOK: type: QUERY +PREHOOK: Input: default@values__tmp__table__1 +PREHOOK: Output: default@orc_table_1 +POSTHOOK: query: insert into table orc_table_1 values(12, 1),(5, 1), (9, 2),(12, 1) +POSTHOOK: type: QUERY +POSTHOOK: Input: default@values__tmp__table__1 +POSTHOOK: Output: default@orc_table_1 +POSTHOOK: Lineage: orc_table_1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +POSTHOOK: Lineage: orc_table_1.b EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +PREHOOK: query: explain +select b, max(a) from orc_table_1 group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(a) from orc_table_1 group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: orc_table_1 + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: int), a (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1) + keys: _col0 (type: int) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + keys: KEY._col0 (type: int) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2 Data size: 16 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 2 Data size: 16 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(a) from orc_table_1 group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@orc_table_1 +#### A masked pattern was here #### +POSTHOOK: query: select b, max(a) from orc_table_1 group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@orc_table_1 +#### A masked pattern was here #### +1 12 +2 9 diff --git ql/src/test/results/clientpositive/tez/vector_groupby4.q.out ql/src/test/results/clientpositive/tez/vector_groupby4.q.out new file mode 100644 index 0000000..8d058f0 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby4.q.out @@ -0,0 +1,2029 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), i (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1), min(_col1), sum(_col1), count(_col1) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: bigint), _col4 (type: bigint) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), min(VALUE._col1), sum(VALUE._col2), count(VALUE._col3) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 -603273425 -603273425 -603273425 1 +-6919476845891313664 710856472 710856472 710856472 1 +-6920172215209426944 -764412063 -764412063 -764412063 1 +-6921654334727036928 -1066775085 -1066775085 -1066775085 1 +-6933565857643814912 581259902 581259902 581259902 1 +-6934304742087655424 955171928 955171928 955171928 1 +-6935038507792801792 174310705 174310705 174310705 1 +-6935548339131138048 -1062159435 -1062159435 -1062159435 1 +-6938706403992854528 980732494 980732494 980732494 1 +-6941777546186579968 121663320 121663320 121663320 1 +-6947955278050181120 641695802 641695802 641695802 1 +-6951350560260784128 1342923026 1342923026 1342923026 1 +-6957946688477274112 1505168716 1505168716 1505168716 1 +-6960947572095770624 1136976809 1136976809 1136976809 1 +-6962271229404348416 1106995930 1106995930 1106995930 1 +-6962292590214234112 -1147471772 -1147471772 -1147471772 1 +-6968771079156654080 -939348081 -939348081 -939348081 1 +-6968892545529896960 470993066 470993066 470993066 1 +-6970396058557005824 2140632003 2140632003 2140632003 1 +-6974654664348033024 -968377273 -968377273 -968377273 1 +-6975459232300236800 1151752586 1151752586 1151752586 1 +-6986178228432322560 -1369253050 -1369253050 -1369253050 1 +-6988811476286873600 -1968097621 -1968097621 -1968097621 1 +-6988970700649168896 -1230459100 -1230459100 -1230459100 1 +-6992217501957169152 1472487454 1472487454 1472487454 1 +-6997233584896229376 -76654979 -76654979 -76654979 1 +-7000925438663041024 596045726 596045726 596045726 1 +-7003696402314215424 -1458382451 -1458382451 -1458382451 1 +-7011425384222244864 NULL NULL NULL 0 +-7017212700635545600 304860245 304860245 304860245 1 +-7020852530219171840 824836988 824836988 824836988 1 +-7030489936116252672 1115197541 1115197541 1115197541 1 +-7035132060308643840 NULL NULL NULL 0 +-7036607470351654912 -1933192293 -1933192293 -1933192293 1 +-7037375807670501376 -1168823523 -1168823523 -1168823523 1 +-7037638331316469760 14573904 14573904 14573904 1 +-7038455462786334720 524317972 524317972 524317972 1 +-7040248820505149440 196581473 196581473 196581473 1 +-7041362811802148864 -455114104 -455114104 -455114104 1 +-7042183597114081280 658636280 658636280 658636280 1 +-7046180371529351168 -117723745 -117723745 -117723745 1 +-7049618574399692800 -978892011 -978892011 -978892011 1 +-7052619594823221248 -1117358187 -1117358187 -1117358187 1 +-7055619148037554176 -838656526 -838656526 -838656526 1 +-7055760785575665664 759899363 759899363 759899363 1 +-7057750467944931328 -71449585 -71449585 -71449585 1 +-7058986555327307776 1942004879 1942004879 1942004879 1 +-7063777488249085952 -507250351 -507250351 -507250351 1 +-7078068944081002496 2013178181 2013178181 2013178181 1 +-7079898537463537664 -1205034356 -1205034356 -1205034356 1 +-7081500255163727872 -1969751342 -1969751342 -1969751342 1 +-7083646746411720704 780938234 780938234 780938234 1 +-7085247548404178944 1640192895 1640192895 1640192895 1 +-7093825013581979648 -628790799 -628790799 -628790799 1 +-7094189393339678720 1796486238 1796486238 1796486238 1 +-7094827141662539776 -632803945 -632803945 -632803945 1 +-7104310188119834624 -1928197479 -1928197479 -1928197479 1 +-7106210529681350656 1718167702 1718167702 1718167702 1 +-7109790267244814336 -291577538 -291577538 -291577538 1 +-7115054815375073280 NULL NULL NULL 0 +-7120456708338688000 1751468853 1751468853 1751468853 1 +-7127548949860818944 260463232 260463232 260463232 1 +-7138415011665043456 -1345391395 -1345391395 -1345391395 1 +-7139677575412686848 -1556127172 -1556127172 -1556127172 1 +-7140008543769042944 -1938290238 -1938290238 -1938290238 1 +-7144791190333546496 -876122064 -876122064 -876122064 1 +-7145585429014888448 -817093900 -817093900 -817093900 1 +-7147490721376591872 1759741857 1759741857 1759741857 1 +-7152177800841502720 -37773326 -37773326 -37773326 1 +-7155539549555105792 -345542922 -345542922 -345542922 1 +-7158472098920390656 -71305062 -71305062 -71305062 1 +-7159700138947862528 -76430653 -76430653 -76430653 1 +-7161165959057334272 1352649032 1352649032 1352649032 1 +-7162299524557471744 1813010930 1813010930 1813010930 1 +-7172594404186693632 -1949359208 -1949359208 -1949359208 1 +-7185369278665605120 -374337252 -374337252 -374337252 1 +-7192529627893858304 -45439614 -45439614 -45439614 1 +-7194281951646187520 -797889292 -797889292 -797889292 1 +-7195217207163166720 -1977762695 -1977762695 -1977762695 1 +-7198372044947275776 -1424770359 -1424770359 -1424770359 1 +-7199983995864711168 -1870912732 -1870912732 -1870912732 1 +-7201085131997011968 -1356601829 -1356601829 -1356601829 1 +-7209060152494817280 -2071851852 -2071851852 -2071851852 1 +-7213775605408178176 1222935237 1222935237 1222935237 1 +-7220731681653604352 -851663638 -851663638 -851663638 1 +-7221474017515347968 -1421860505 -1421860505 -1421860505 1 +-7228589258642194432 1958701268 1958701268 1958701268 1 +-7240213957902663680 -841634659 -841634659 -841634659 1 +-7242345057866285056 548375173 548375173 548375173 1 +-7245872320493322240 -134686276 -134686276 -134686276 1 +-7246123871306244096 1686537335 1686537335 1686537335 1 +-7255010240787030016 1373871781 1373871781 1373871781 1 +-7255686273677328384 2100839074 2100839074 2100839074 1 +-7262049693594943488 1295073553 1295073553 1295073553 1 +-7262384251828518912 1647411522 1647411522 1647411522 1 +-7262798781688651776 -423190290 -423190290 -423190290 1 +-7263060340185194496 1590744669 1590744669 1590744669 1 +-7265998318110711808 1437057145 1437057145 1437057145 1 +-7266719102957125632 960187615 960187615 960187615 1 +-7270034223527993344 -1984079412 -1984079412 -1984079412 1 +-7273590251991162880 994798486 994798486 994798486 1 +-7273694358642851840 2009890220 2009890220 2009890220 1 +-7276111129363046400 -1462604138 -1462604138 -1462604138 1 +-7287583262310350848 -1108723753 -1108723753 -1108723753 1 +-7292078334519894016 -785261879 -785261879 -785261879 1 +-7296096276653391872 160290374 160290374 160290374 1 +-7303847963918393344 -1769423338 -1769423338 -1769423338 1 +-7319315187617587200 -235238928 -235238928 -235238928 1 +-7326863346317598720 958866509 958866509 958866509 1 +-7328087811698909184 -1017629298 -1017629298 -1017629298 1 +-7329767178250018816 -448060992 -448060992 -448060992 1 +-7329807949048193024 -369183838 -369183838 -369183838 1 +-7330203470474985472 -1065248998 -1065248998 -1065248998 1 +-7330413050756235264 -2024003241 -2024003241 -2024003241 1 +-7333278178640953344 1393506704 1393506704 1393506704 1 +-7333362172439035904 -835002549 -835002549 -835002549 1 +-7340231535789727744 526502851 526502851 526502851 1 +-7344146703223496704 789871166 789871166 789871166 1 +-7344947507044466688 -340951385 -340951385 -340951385 1 +-7345562788132315136 1750433588 1750433588 1750433588 1 +-7356685674003021824 1319589591 1319589591 1319589591 1 +-7357888618985873408 NULL NULL NULL 0 +-7362189611124563968 -496915240 -496915240 -496915240 1 +-7366430883634929664 1592153312 1592153312 1592153312 1 +-7378096180613840896 218917585 218917585 218917585 1 +-7380731416973295616 -1114208576 -1114208576 -1114208576 1 +-7395343938785738752 830944953 830944953 830944953 1 +-7395553021620731904 1056997296 1056997296 1056997296 1 +-7399631791131074560 -932921363 -932921363 -932921363 1 +-7404052043914526720 -1349876582 -1349876582 -1349876582 1 +-7404057145074712576 56316391 56316391 56316391 1 +-7409317158045442048 -1463884101 -1463884101 -1463884101 1 +-7409653086454030336 -624029057 -624029057 -624029057 1 +-7412431471807283200 622925063 622925063 622925063 1 +-7413317118463164416 -507015439 -507015439 -507015439 1 +-7419068456205385728 -4393552 -4393552 -4393552 1 +-7420448501073051648 -1155174991 -1155174991 -1155174991 1 +-7425160895830573056 -765102534 -765102534 -765102534 1 +-7429331808102899712 -1057522129 -1057522129 -1057522129 1 +-7433265617153343488 NULL NULL NULL 0 +-7442593976514420736 1851805558 1851805558 1851805558 1 +-7444070205513138176 -520725912 -520725912 -520725912 1 +-7451660755269853184 1338047392 1338047392 1338047392 1 +-7453525026342617088 1505665168 1505665168 1505665168 1 +-7455898404374921216 1544482684 1544482684 1544482684 1 +-7456869587112255488 -224865887 -224865887 -224865887 1 +-7461750143936897024 -1343425152 -1343425152 -1343425152 1 +-7464270453557993472 -1439293109 -1439293109 -1439293109 1 +-7469660864676585472 85774760 85774760 85774760 1 +-7470307155642245120 1137950964 1137950964 1137950964 1 +-7476082621253402624 1083855659 1083855659 1083855659 1 +-7483435388852559872 -914329027 -914329027 -914329027 1 +-7488345684795342848 -1668736016 -1668736016 -1668736016 1 +-7488415863027367936 1286367391 1286367391 1286367391 1 +-7494411162675691520 1595326878 1595326878 1595326878 1 +-7496839341561954304 868714547 868714547 868714547 1 +-7497303453253402624 1415647436 1415647436 1415647436 1 +-7500200359698907136 -423074450 -423074450 -423074450 1 +-7501803640821456896 1809795770 1809795770 1809795770 1 +-7506254246954500096 -511198293 -511198293 -511198293 1 +-7507424948896415744 -828522499 -828522499 -828522499 1 +-7507578199583694848 -1784633305 -1784633305 -1784633305 1 +-7510418793070075904 975932228 975932228 975932228 1 +-7511202710200885248 -2042647152 -2042647152 -2042647152 1 +-7511952204985049088 -1351437382 -1351437382 -1351437382 1 +-7512289590991544320 1409872356 1409872356 1409872356 1 +-7512297136103800832 -1180153422 -1180153422 -1180153422 1 +-7515996202498473984 344989592 344989592 344989592 1 +-7524170566881329152 -1908696083 -1908696083 -1908696083 1 +-7526793959592140800 -570632618 -570632618 -570632618 1 +-7528526815026692096 2125479431 2125479431 2125479431 1 +-7532751268425261056 1752520642 1752520642 1752520642 1 +-7535857766791577600 1846184880 1846184880 1846184880 1 +-7535958203887706112 656636097 656636097 656636097 1 +-7536330682873937920 -1289501869 -1289501869 -1289501869 1 +-7540104552219860992 1081187102 1081187102 1081187102 1 +-7541860097718902784 -625788713 -625788713 -625788713 1 +-7542857121910046720 1495575878 1495575878 1495575878 1 +-7547245548870025216 1784291853 1784291853 1784291853 1 +-7547432761381339136 434679307 434679307 434679307 1 +-7551394356730339328 1179528290 1179528290 1179528290 1 +-7557017910095650816 195281533 195281533 195281533 1 +-7558524160894427136 375106978 375106978 375106978 1 +-7571293705217687552 1240875512 1240875512 1240875512 1 +-7571957778022178816 1042184256 1042184256 1042184256 1 +-7572262898020278272 -1875699183 -1875699183 -1875699183 1 +-7572962089372991488 -841268868 -841268868 -841268868 1 +-7576194692683563008 2080249726 2080249726 2080249726 1 +-7593363318079610880 -1811563127 -1811563127 -1811563127 1 +-7594824008626372608 824743780 824743780 824743780 1 +-7598782894648565760 -983874694 -983874694 -983874694 1 +-7600138468036386816 -722294882 -722294882 -722294882 1 +-7603467428164009984 -619311578 -619311578 -619311578 1 +-7603569103205916672 390124976 390124976 390124976 1 +-7610137349734883328 683320224 683320224 683320224 1 +-7611584069753552896 -1765795567 -1765795567 -1765795567 1 +-7612455481940246528 NULL NULL NULL 0 +-7612466483992051712 -1969235238 -1969235238 -1969235238 1 +-7616522969329262592 1924741890 1924741890 1924741890 1 +-7617860842651017216 386741352 386741352 386741352 1 +-7623047151287754752 -1050029724 -1050029724 -1050029724 1 +-7623359796281999360 1829544791 1829544791 1829544791 1 +-7623405558242500608 283322761 283322761 283322761 1 +-7624057992767782912 -1218581850 -1218581850 -1218581850 1 +-7629401308029976576 -1655030261 -1655030261 -1655030261 1 +-7637494527844343808 2005560498 2005560498 2005560498 1 +-7637755520917741568 648935848 648935848 648935848 1 +-7642381493746483200 583458404 583458404 583458404 1 +-7647020450676146176 609917172 609917172 609917172 1 +-7661192563533062144 -1319753324 -1319753324 -1319753324 1 +-7661250850555633664 -693249555 -693249555 -693249555 1 +-7663293054873812992 -1478812842 -1478812842 -1478812842 1 +-7665186441284968448 791096295 791096295 791096295 1 +-7668388017287020544 NULL NULL NULL 0 +-7669169138124275712 -1484033125 -1484033125 -1484033125 1 +-7673901622181953536 1141303816 1141303816 1141303816 1 +-7679894005808693248 -306214368 -306214368 -306214368 1 +-7686220526274502656 -892839693 -892839693 -892839693 1 +-7687052294777208832 -1989778424 -1989778424 -1989778424 1 +-7692192232238678016 745725681 745725681 745725681 1 +-7695491171376291840 1225312439 1225312439 1225312439 1 +-7700203302632210432 1805308672 1805308672 1805308672 1 +-7703540456272994304 1312270193 1312270193 1312270193 1 +-7707242953271500800 1568180994 1568180994 1568180994 1 +-7707867749256445952 -596963345 -596963345 -596963345 1 +-7708932208121225216 307333276 307333276 307333276 1 +-7709958788604936192 595836061 595836061 595836061 1 +-7712425776235274240 -1432316859 -1432316859 -1432316859 1 +-7720966287634112512 NULL NULL NULL 0 +-7739424919198187520 712625264 712625264 712625264 1 +-7744462446680375296 2029657999 2029657999 2029657999 1 +-7751265769984491520 700341242 700341242 700341242 1 +-7751427073017544704 615619268 615619268 615619268 1 +-7753051494275432448 -1599905147 -1599905147 -1599905147 1 +-7759238919361888256 -2065287410 -2065287410 -2065287410 1 +-7759425383684849664 -938762477 -938762477 -938762477 1 +-7772064021830574080 -1201785350 -1201785350 -1201785350 1 +-7773957003968675840 270090617 270090617 270090617 1 +-7777884099756122112 914583645 914583645 914583645 1 +-7778829032042790912 -807242371 -807242371 -807242371 1 +-7779270198785875968 -1242677422 -1242677422 -1242677422 1 +-7782344916178796544 -1213081886 -1213081886 -1213081886 1 +-7784419454650843136 -1210907929 -1210907929 -1210907929 1 +-7792903881635938304 -191899537 -191899537 -191899537 1 +-7793447076762345472 1196151988 1196151988 1196151988 1 +-7797149520019062784 -1262842192 -1262842192 -1262842192 1 +-7797151404935618560 -507955215 -507955215 -507955215 1 +-7800879252150779904 1352739140 1352739140 1352739140 1 +-7802538500225777664 215759857 215759857 215759857 1 +-7804116532814151680 -1146649990 -1146649990 -1146649990 1 +-7805985795815342080 -2076886223 -2076886223 -2076886223 1 +-7811060170911375360 1513689502 1513689502 1513689502 1 +-7818454479651135488 -559270035 -559270035 -559270035 1 +-7819437864839495680 -370093295 -370093295 -370093295 1 +-7822452149325094912 60847311 60847311 60847311 1 +-7824788571789279232 -1406691044 -1406691044 -1406691044 1 +-7827420207675105280 -36682325 -36682325 -36682325 1 +-7831320202242228224 -1726479726 -1726479726 -1726479726 1 +-7831595638727565312 1626884085 1626884085 1626884085 1 +-7833618000492109824 589546540 589546540 589546540 1 +-7835907977757245440 -87470856 -87470856 -87470856 1 +-7838598833900584960 1028204648 1028204648 1028204648 1 +-7840338174858199040 -300717684 -300717684 -300717684 1 +-7845896959112658944 -1688105985 -1688105985 -1688105985 1 +-7848043121524228096 1667594394 1667594394 1667594394 1 +-7849504559236210688 -2052386812 -2052386812 -2052386812 1 +-7858505678035951616 NULL NULL NULL 0 +-7866079955473989632 196980893 196980893 196980893 1 +-7867219225874571264 -1078579367 -1078579367 -1078579367 1 +-7868306678534193152 -2144138362 -2144138362 -2144138362 1 +-7873753603299540992 -971698865 -971698865 -971698865 1 +-7875953567586451456 816439627 816439627 816439627 1 +-7877598807023386624 340384179 340384179 340384179 1 +-7878145001776152576 -1489628668 -1489628668 -1489628668 1 +-7879864376629567488 -472303419 -472303419 -472303419 1 +-7881262505761710080 -103219371 -103219371 -103219371 1 +-7881351200983613440 720703232 720703232 720703232 1 +-7883252982752665600 1136548971 1136548971 1136548971 1 +-7884460946615984128 1772349172 1772349172 1772349172 1 +-7888051992910274560 1818213677 1818213677 1818213677 1 +-7892780594910871552 -779743333 -779743333 -779743333 1 +-7893577088764174336 268888160 268888160 268888160 1 +-7894382303337832448 1832650234 1832650234 1832650234 1 +-7895991410072928256 1467284000 1467284000 1467284000 1 +-7902517224300036096 -950738312 -950738312 -950738312 1 +-7903158849011843072 -217930632 -217930632 -217930632 1 +-7904188195431661568 -442839889 -442839889 -442839889 1 +-7907355742053883904 794783516 794783516 794783516 1 +-7910019233726242816 -1259611508 -1259611508 -1259611508 1 +-7911421221625077760 476704350 476704350 476704350 1 +-7915999634274369536 1814570016 1814570016 1814570016 1 +-7916510129632296960 -2136052026 -2136052026 -2136052026 1 +-7928062266382778368 152654715 152654715 152654715 1 +-7928440849566146560 -800975421 -800975421 -800975421 1 +-7939634346485858304 1012843193 1012843193 1012843193 1 +-7949309059286163456 88774647 88774647 88774647 1 +-7949445503604604928 1695098246 1695098246 1695098246 1 +-7953426740065312768 22308780 22308780 22308780 1 +-7964801953178091520 661659208 661659208 661659208 1 +-7966960765508280320 -884109192 -884109192 -884109192 1 +-7978782649203228672 491016124 491016124 491016124 1 +-7989766326847807488 -1731820254 -1731820254 -1731820254 1 +-7998947380180819968 -136514115 -136514115 -136514115 1 +-8007017894942638080 1219616145 1219616145 1219616145 1 +-8013397854633648128 -1391183008 -1391183008 -1391183008 1 +-8016589197379289088 -1721763321 -1721763321 -1721763321 1 +-8017791189288869888 -2057666812 -2057666812 -2057666812 1 +-8018511948141748224 661380540 661380540 661380540 1 +-8021859935185928192 1420099773 1420099773 1420099773 1 +-8022573309127000064 1194243726 1194243726 1194243726 1 +-8023708819947323392 198539698 198539698 198539698 1 +-8028275725610909696 -1937640350 -1937640350 -1937640350 1 +-8028910243475038208 873035819 873035819 873035819 1 +-8030058711611629568 -752222556 -752222556 -752222556 1 +-8034414142083170304 -267130580 -267130580 -267130580 1 +-8046189486447017984 925032386 925032386 925032386 1 +-8046238369820344320 819069589 819069589 819069589 1 +-8047774491688255488 -1339495001 -1339495001 -1339495001 1 +-8051395538179063808 -469749219 -469749219 -469749219 1 +-8051587217208967168 51376784 51376784 51376784 1 +-8051871680800120832 NULL NULL NULL 0 +-8054581198284668928 1395450272 1395450272 1395450272 1 +-8067243114610532352 214068706 214068706 214068706 1 +-8070535484085895168 829101712 829101712 829101712 1 +-8076479329071955968 2017314998 2017314998 2017314998 1 +-8082793390939193344 -1878838836 -1878838836 -1878838836 1 +-8084716955963252736 -1609864597 -1609864597 -1609864597 1 +-8086577583338061824 -340462064 -340462064 -340462064 1 +-8088337436168830976 2124297747 2124297747 2124297747 1 +-8099313480512716800 -392713245 -392713245 -392713245 1 +-8103788088118018048 -533227056 -533227056 -533227056 1 +-8104684579106914304 -1091003492 -1091003492 -1091003492 1 +-8108693586698706944 -896261100 -896261100 -896261100 1 +-8115963579415650304 -951728053 -951728053 -951728053 1 +-8117838333114212352 -1642207005 -1642207005 -1642207005 1 +-8122639684164501504 1425456189 1425456189 1425456189 1 +-8127494999848919040 1701817607 1701817607 1701817607 1 +-8131997716860526592 -457341338 -457341338 -457341338 1 +-8136227554401107968 127917714 127917714 127917714 1 +-8140349174954893312 NULL NULL NULL 0 +-8142667274351345664 453613037 453613037 453613037 1 +-8147405381260345344 659397992 659397992 659397992 1 +-8158011642485825536 NULL NULL NULL 0 +-8161047750470279168 -621365995 -621365995 -621365995 1 +-8172827216441573376 -113253627 -113253627 -113253627 1 +-8182421179156905984 -1892816721 -1892816721 -1892816721 1 +-8191825921746305024 703111607 703111607 703111607 1 +-8194062064124362752 1482983157 1482983157 1482983157 1 +-8203008052020879360 -1127100849 -1127100849 -1127100849 1 +-8203075743525806080 -626484313 -626484313 -626484313 1 +-8205148279289085952 768198315 768198315 768198315 1 +-8214462866994339840 NULL NULL NULL 0 +-8219876839318716416 1452244326 1452244326 1452244326 1 +-8232763638546694144 -514010922 -514010922 -514010922 1 +-8240034910581153792 -665623523 -665623523 -665623523 1 +-8240684139569233920 -1721368386 -1721368386 -1721368386 1 +-8243487285852766208 1153811197 1153811197 1153811197 1 +-8244116388227104768 1893512909 1893512909 1893512909 1 +-8244657976255889408 688547276 688547276 688547276 1 +-8260340354454503424 1456367662 1456367662 1456367662 1 +-8269917980278980608 -1700451326 -1700451326 -1700451326 1 +-8270479187688816640 1519993904 1519993904 1519993904 1 +-8275337702906757120 210003006 210003006 210003006 1 +-8280276629934981120 -588160623 -588160623 -588160623 1 +-8293833565967810560 -1464514590 -1464514590 -1464514590 1 +-8297230235506343936 283618733 283618733 283618733 1 +-8300526097982226432 1314531900 1314531900 1314531900 1 +-8300764106868350976 -1196101029 -1196101029 -1196101029 1 +-8302817097848307712 -1021859098 -1021859098 -1021859098 1 +-8317591428117274624 -670925379 -670925379 -670925379 1 +-8318886086186213376 1033609549 1033609549 1033609549 1 +-8322751250650218496 -1212524805 -1212524805 -1212524805 1 +-8330233444291084288 -409404534 -409404534 -409404534 1 +-8335810316927213568 -1562552002 -1562552002 -1562552002 1 +-8340523561480437760 39723411 39723411 39723411 1 +-8345065519816695808 654939016 654939016 654939016 1 +-8347088645602050048 76299337 76299337 76299337 1 +-8357136656913686528 1517915751 1517915751 1517915751 1 +-8358130693961195520 -122391516 -122391516 -122391516 1 +-8359839265974165504 1572563948 1572563948 1572563948 1 +-8368269352975982592 NULL NULL NULL 0 +-8368487814665895936 156101201 156101201 156101201 1 +-8369487968903897088 -194270271 -194270271 -194270271 1 +-8379109122834997248 1566607834 1566607834 1566607834 1 +-8379964450833367040 -181122344 -181122344 -181122344 1 +-8384695077413412864 -1818456584 -1818456584 -1818456584 1 +-8387347109404286976 -2011708220 -2011708220 -2011708220 1 +-8387536830476820480 -1703620970 -1703620970 -1703620970 1 +-8395998375405912064 -1141801925 -1141801925 -1141801925 1 +-8400045653258444800 1523657918 1523657918 1523657918 1 +-8411282676082565120 253621570 253621570 253621570 1 +-8418913260807217152 -41864614 -41864614 -41864614 1 +-8425998949410889728 -656478771 -656478771 -656478771 1 +-8426531414463545344 1701761102 1701761102 1701761102 1 +-8430283518005846016 -16094879 -16094879 -16094879 1 +-8430370933326536704 NULL NULL NULL 0 +-8431492599012163584 -1131684944 -1131684944 -1131684944 1 +-8438554249514491904 232405034 232405034 232405034 1 +-8445801063348281344 -1247325089 -1247325089 -1247325089 1 +-8453491903284994048 1524010024 1524010024 1524010024 1 +-8454143651040444416 516479816 516479816 516479816 1 +-8465978403747037184 1347876055 1347876055 1347876055 1 +-8469607298426437632 374283948 374283948 374283948 1 +-8471480409335513088 1891680787 1891680787 1891680787 1 +-8485389240529354752 -1528033060 -1528033060 -1528033060 1 +-8488247955875618816 1802498539 1802498539 1802498539 1 +-8490382417169408000 987917448 987917448 987917448 1 +-8494118409594650624 631207613 631207613 631207613 1 +-8503342882470019072 1367179645 1367179645 1367179645 1 +-8503573595507761152 2068018858 2068018858 2068018858 1 +-8507279516485566464 631711489 631711489 631711489 1 +-8509547439040757760 -1749415887 -1749415887 -1749415887 1 +-8518060755719585792 -1100641049 -1100641049 -1100641049 1 +-8518258741831680000 -809805200 -809805200 -809805200 1 +-8521578237232529408 -373034494 -373034494 -373034494 1 +-8522878384019169280 633813435 633813435 633813435 1 +-8523434203900674048 -590374062 -590374062 -590374062 1 +-8525212657458348032 -1280919769 -1280919769 -1280919769 1 +-8535957064499879936 -99205196 -99205196 -99205196 1 +-8536369662934401024 447426619 447426619 447426619 1 +-8543982423727128576 -607667405 -607667405 -607667405 1 +-8544299740525461504 -846450672 -846450672 -846450672 1 +-8545239748068941824 -897586947 -897586947 -897586947 1 +-8546758906409312256 -1236536142 -1236536142 -1236536142 1 +-8552393882631389184 1920863389 1920863389 1920863389 1 +-8555709701170552832 -1364322216 -1364322216 -1364322216 1 +-8559008501282832384 895945459 895945459 895945459 1 +-8559252110266564608 259204652 259204652 259204652 1 +-8562524688907485184 1775355987 1775355987 1775355987 1 +-8566856504746352640 2018442973 2018442973 2018442973 1 +-8566940231897874432 -1409508377 -1409508377 -1409508377 1 +-8570933074545745920 -749042352 -749042352 -749042352 1 +-8572823448513445888 -101960322 -101960322 -101960322 1 +-8572949572756774912 1787826883 1787826883 1787826883 1 +-8581765103969312768 -890374552 -890374552 -890374552 1 +-8581979259158929408 -674478103 -674478103 -674478103 1 +-8584520406368493568 -19116270 -19116270 -19116270 1 +-8585134536083660800 -1196808950 -1196808950 -1196808950 1 +-8585966098173870080 318631333 318631333 318631333 1 +-8593419958317056000 6266567 6266567 6266567 1 +-8603817012434198528 1114521964 1114521964 1114521964 1 +-8604758220106014720 -1798573685 -1798573685 -1798573685 1 +-8607195685207408640 -1111937842 -1111937842 -1111937842 1 +-8615168537390571520 1469775272 1469775272 1469775272 1 +-8619303037130301440 -2074079977 -2074079977 -2074079977 1 +-8623238306523824128 -1442424087 -1442424087 -1442424087 1 +-8623965248051789824 1637295757 1637295757 1637295757 1 +-8632237187473088512 NULL NULL NULL 0 +-8649711322250362880 -500921094 -500921094 -500921094 1 +-8651641150831362048 -1533934649 -1533934649 -1533934649 1 +-8654433008222797824 -1728171376 -1728171376 -1728171376 1 +-8654797319350927360 895763504 895763504 895763504 1 +-8658387566611996672 NULL NULL NULL 0 +-8659643752269242368 1204834275 1204834275 1204834275 1 +-8659692318743314432 25400543 25400543 25400543 1 +-8660149447361404928 1317690178 1317690178 1317690178 1 +-8664374244449050624 1059212450 1059212450 1059212450 1 +-8664806103426252800 964810954 964810954 964810954 1 +-8665218198816497664 -1031592590 -1031592590 -1031592590 1 +-8665764757143658496 -45460011 -45460011 -45460011 1 +-8675661101615489024 -1918651448 -1918651448 -1918651448 1 +-8675892979328212992 1478365409 1478365409 1478365409 1 +-8683802826440105984 -1344287228 -1344287228 -1344287228 1 +-8688153842294595584 -1741895392 -1741895392 -1741895392 1 +-8689606130068611072 488559595 488559595 488559595 1 +-8694818694700048384 94220511 94220511 94220511 1 +-8696162322976997376 1228837108 1228837108 1228837108 1 +-8703026916864802816 -397683105 -397683105 -397683105 1 +-8704234107608203264 -1318045616 -1318045616 -1318045616 1 +-8705403811649355776 206121314 206121314 206121314 1 +-8710298418608619520 -1817938378 -1817938378 -1817938378 1 +-8714995808835444736 206454818 206454818 206454818 1 +-8719510423723155456 -327648289 -327648289 -327648289 1 +-8730803262481580032 NULL NULL NULL 0 +-8731068123910987776 -1434562279 -1434562279 -1434562279 1 +-8746702976270385152 1767359228 1767359228 1767359228 1 +-8754966081778565120 -125419186 -125419186 -125419186 1 +-8754992450211692544 1785455842 1785455842 1785455842 1 +-8756989568739835904 -158420748 -158420748 -158420748 1 +-8760655406971863040 -1249011023 -1249011023 -1249011023 1 +-8763062627136864256 -454598288 -454598288 -454598288 1 +-8768744394742235136 -726879427 -726879427 -726879427 1 +-8782213262837530624 1565313938 1565313938 1565313938 1 +-8783777723063099392 877053605 877053605 877053605 1 +-8789178184387641344 -1045771991 -1045771991 -1045771991 1 +-8797972842900307968 284646137 284646137 284646137 1 +-8807361476639629312 NULL NULL NULL 0 +-8813211231120031744 1575300276 1575300276 1575300276 1 +-8831091081349758976 -1832606512 -1832606512 -1832606512 1 +-8832750849949892608 -66010816 -66010816 -66010816 1 +-8833019327569510400 -189393743 -189393743 -189393743 1 +-8835408234247168000 -938112972 -938112972 -938112972 1 +-8836899523028312064 397255100 397255100 397255100 1 +-8843859708698583040 2008211296 2008211296 2008211296 1 +-8844949406948671488 315973457 315973457 315973457 1 +-8845239510002753536 -1358159222 -1358159222 -1358159222 1 +-8852770376039219200 311478497 311478497 311478497 1 +-8853553406533894144 -1820436871 -1820436871 -1820436871 1 +-8856151919723003904 -575513309 -575513309 -575513309 1 +-8856821118526734336 618321042 618321042 618321042 1 +-8857335871148171264 1061043704 1061043704 1061043704 1 +-8858063395050110976 -1117019030 -1117019030 -1117019030 1 +-8859107121649893376 -37876543 -37876543 -37876543 1 +-8866442231663067136 -1079633326 -1079633326 -1079633326 1 +-8870186814744420352 NULL NULL NULL 0 +-8870673219965001728 -1620148746 -1620148746 -1620148746 1 +-8875546987176206336 414645489 414645489 414645489 1 +-8877053610728161280 706823078 706823078 706823078 1 +-8877431933441327104 1650676897 1650676897 1650676897 1 +-8879742387365429248 1912175355 1912175355 1912175355 1 +-8881446757271846912 1224662770 1224662770 1224662770 1 +-8887058200926093312 -191704948 -191704948 -191704948 1 +-8892963883085578240 -2087815643 -2087815643 -2087815643 1 +-8896045754034978816 1392980712 1392980712 1392980712 1 +-8914039133569400832 1332042427 1332042427 1332042427 1 +-8916987977485312000 -839176151 -839176151 -839176151 1 +-8922409715403112448 -536315467 -536315467 -536315467 1 +-8923529803981905920 1148500740 1148500740 1148500740 1 +-8927968289860370432 1033836308 1033836308 1033836308 1 +-8930307926221807616 -966979668 -966979668 -966979668 1 +-8938849835283677184 1318606691 1318606691 1318606691 1 +-8940944155843461120 -858439361 -858439361 -858439361 1 +-8941201923743703040 NULL NULL NULL 0 +-8946656952763777024 -759911896 -759911896 -759911896 1 +-8948335470186373120 -1078397698 -1078397698 -1078397698 1 +-8959796625322680320 1318956413 1318956413 1318956413 1 +-8961059046745669632 1783034168 1783034168 1783034168 1 +-8962547695651323904 1091736925 1091736925 1091736925 1 +-8965578088652095488 -1216166764 -1216166764 -1216166764 1 +-8989473881707921408 1310360849 1310360849 1310360849 1 +-8990843030306717696 -311437801 -311437801 -311437801 1 +-8992599250893979648 1677494300 1677494300 1677494300 1 +-8996954350906294272 -1769037737 -1769037737 -1769037737 1 +-9002912355472736256 -561932449 -561932449 -561932449 1 +-9004892183139811328 -1949698319 -1949698319 -1949698319 1 +-9008631121684832256 704038411 704038411 704038411 1 +-9012093603044245504 538766635 538766635 538766635 1 +-9013952631912325120 -1052493316 -1052493316 -1052493316 1 +-9014145341570203648 273256071 273256071 273256071 1 +-9022154842129547264 1130043800 1130043800 1130043800 1 +-9032650742739836928 1102561039 1102561039 1102561039 1 +-9049720998034137088 1747664003 1747664003 1747664003 1 +-9051477157204770816 -1648991909 -1648991909 -1648991909 1 +-9058029636530003968 -1197602595 -1197602595 -1197602595 1 +-9066993118333706240 -425196209 -425196209 -425196209 1 +-9071565764086521856 2058640744 2058640744 2058640744 1 +-9075302542655684608 -295186284 -295186284 -295186284 1 +-9075486079396069376 -1805915233 -1805915233 -1805915233 1 +-9078662294976061440 -235819331 -235819331 -235819331 1 +-9079801920509001728 -705887590 -705887590 -705887590 1 +-9080568167841226752 906074599 906074599 906074599 1 +-9080956291212132352 1330219997 1330219997 1330219997 1 +-9084940280061485056 128430191 128430191 128430191 1 +-9088239683374350336 -18917438 -18917438 -18917438 1 +-9091113592821972992 1861276585 1861276585 1861276585 1 +-9095689235523264512 1687784247 1687784247 1687784247 1 +-9101953184875757568 -1918847735 -1918847735 -1918847735 1 +-9102482277760983040 742866312 742866312 742866312 1 +-9105358806324035584 1679381813 1679381813 1679381813 1 +-9105701280936501248 1109664665 1109664665 1109664665 1 +-9109392978217484288 407098216 407098216 407098216 1 +-9117959922369060864 936133387 936133387 936133387 1 +-9126793997498957824 770574055 770574055 770574055 1 +-9136398397785948160 376076075 376076075 376076075 1 +-9142610685888192512 -387395264 -387395264 -387395264 1 +-9145593811310010368 -202409329 -202409329 -202409329 1 +-9148197394287779840 -1568536214 -1568536214 -1568536214 1 +-9149719074367946752 234452496 234452496 234452496 1 +-9157613004431998976 1362740312 1362740312 1362740312 1 +-9175038118837149696 -1701492480 -1701492480 -1701492480 1 +-9175279464813223936 2080412555 2080412555 2080412555 1 +-9178166810751909888 -1407817977 -1407817977 -1407817977 1 +-9187662685618348032 NULL NULL NULL 0 +-9189155542884474880 -1955545912 -1955545912 -1955545912 1 +-9203804401302323200 -671853199 -671853199 -671853199 1 +-9203942396257984512 -1625800024 -1625800024 -1625800024 1 +-9206329156028112896 2084666529 2084666529 2084666529 1 +-9210275791460499456 601376532 601376532 601376532 1 +-9213132862973829120 -1216206795 -1216206795 -1216206795 1 +-9215144824304721920 -399643110 -399643110 -399643110 1 +-9218875542187065344 785382955 785382955 785382955 1 +-9219066990552760320 2090044777 2090044777 2090044777 1 +1021 -1884780525 -1884780525 -1884780525 1 +1030 -300429552 -300429552 -300429552 1 +1032 -1914210382 -1914210382 -1914210382 1 +1039 914062370 914062370 914062370 1 +1046 -990781312 -990781312 -990781312 1 +1048 -249150336 -249150336 -249150336 1 +1053 -1369302744 -1369302744 -1369302744 1 +1055 371383749 371383749 371383749 1 +1058 -1497098905 -1497098905 -1497098905 1 +1065 1194089079 1194089079 1194089079 1 +1066 1767019352 1767019352 1767019352 1 +1074 161210995 161210995 161210995 1 +1075 2144365072 -534894953 1609470119 2 +108 -835107230 -835107230 -835107230 1 +1086 -1341627565 -1341627565 -1341627565 1 +1093 NULL NULL NULL 0 +1094 -359194591 -359194591 -359194591 1 +1095 291866793 291866793 291866793 1 +1099 1390704286 1390704286 1390704286 1 +1115 -144862954 -144862954 -144862954 1 +112 -2147071655 -2147071655 -2147071655 1 +1127 -423378447 -423378447 -423378447 1 +1128 -932525608 -932525608 -932525608 1 +1132 239078089 239078089 239078089 1 +1134 187718349 187718349 187718349 1 +1141 -540820650 -540820650 -540820650 1 +1142 1184001017 1184001017 1184001017 1 +1145 669484010 669484010 669484010 1 +1153 1646811064 1646811064 1646811064 1 +1157 590719541 590719541 590719541 1 +1158 990246086 990246086 990246086 1 +1165 1153089364 477857533 1630946897 2 +1168 NULL NULL NULL 0 +1177 1182595271 1182595271 1182595271 1 +1187 69110370 69110370 69110370 1 +1189 215508794 215508794 215508794 1 +1198 -1857500489 -1857500489 -1857500489 1 +120 29680001 29680001 29680001 1 +1201 945911081 945911081 945911081 1 +1217 -1802746460 -1802746460 -1802746460 1 +1234 -1921909135 -1921909135 -1921909135 1 +1243 1938788165 1938788165 1938788165 1 +1247 -866304147 -866304147 -866304147 1 +1252 30036142 30036142 30036142 1 +1261 -343173797 -343173797 -343173797 1 +1270 1969239701 1969239701 1969239701 1 +1280 991397535 991397535 991397535 1 +1282 -1140071443 -1140071443 -1140071443 1 +1286 -480058682 -480058682 -480058682 1 +1287 -1362178985 -1362178985 -1362178985 1 +1290 177837042 177837042 177837042 1 +1291 1398486099 1398486099 1398486099 1 +1299 765656980 765656980 765656980 1 +130 -2081501748 -2081501748 -2081501748 1 +1307 882331889 882331889 882331889 1 +1312 742059797 742059797 742059797 1 +1316 997193329 997193329 997193329 1 +1321 731241198 731241198 731241198 1 +1337 -1948257321 -1948257321 -1948257321 1 +1341 492120544 492120544 492120544 1 +1342 1203482872 1203482872 1203482872 1 +1343 -217785690 -217785690 -217785690 1 +1345 -600315936 -600315936 -600315936 1 +1346 -158233823 -158233823 -158233823 1 +135 198017473 198017473 198017473 1 +1366 748358417 748358417 748358417 1 +1368 1650573576 -223311809 1427261767 2 +1371 821316302 -2041825946 -1220509644 2 +138 843282593 843282593 843282593 1 +1386 2081152819 2081152819 2081152819 1 +1398 955267058 955267058 955267058 1 +1409 865013617 865013617 865013617 1 +1422 -1402821064 -1402821064 -1402821064 1 +1423 631954352 631954352 631954352 1 +1436 1765173148 1765173148 1765173148 1 +1439 531459992 531459992 531459992 1 +1447 NULL NULL NULL 0 +1450 740883263 740883263 740883263 1 +1454 NULL NULL NULL 0 +1458 -1001529082 -1001529082 -1001529082 1 +1462 287239980 287239980 287239980 1 +1466 574069547 574069547 574069547 1 +1470 1406029775 1406029775 1406029775 1 +1477 -707228984 -707228984 -707228984 1 +1481 1022707418 819875108 1842582526 2 +1489 766737781 766737781 766737781 1 +1493 557053197 557053197 557053197 1 +1495 -1222897252 -1222897252 -1222897252 1 +1501 1081920048 1081920048 1081920048 1 +1506 1893632113 1893632113 1893632113 1 +1508 1632769786 1632769786 1632769786 1 +1509 1920662116 1304812803 3225474919 2 +1518 824235855 824235855 824235855 1 +1520 NULL NULL NULL 0 +1521 -993029335 -993029335 -993029335 1 +1524 -1851280202 -1851280202 -1851280202 1 +1530 1934970004 1934970004 1934970004 1 +1537 278601840 -20660936 257940904 2 +154 998793176 -445353909 553439267 2 +1541 -1430903652 -1430903652 -1430903652 1 +1542 NULL NULL NULL 0 +1545 564366133 564366133 564366133 1 +1556 -1202975006 -1202975006 -1202975006 1 +1559 -206177972 -206177972 -206177972 1 +1561 NULL NULL NULL 0 +1566 747122546 747122546 747122546 1 +1604 -2077771325 -2077771325 -2077771325 1 +1606 -1901806083 -1901806083 -1901806083 1 +1608 142722637 142722637 142722637 1 +1613 -1422780798 -1422780798 -1422780798 1 +1614 -296195507 -296195507 -296195507 1 +1620 -1989378509 -1989378509 -1989378509 1 +1638 92777932 92777932 92777932 1 +1641 NULL NULL NULL 0 +1643 1346627771 1346627771 1346627771 1 +1648 -496870819 -496870819 -496870819 1 +1651 -1575588203 -1575588203 -1575588203 1 +1667 -499533481 -499533481 -499533481 1 +1671 1504919241 1504919241 1504919241 1 +1674 1488440165 1488440165 1488440165 1 +1676 -393723522 -393723522 -393723522 1 +1678 -1104268719 -1104268719 -1104268719 1 +168 -53587991 -53587991 -53587991 1 +1681 929751599 929751599 929751599 1 +169 -1759354458 -1759354458 -1759354458 1 +1693 -1545572711 -1545572711 -1545572711 1 +1701 1404346934 -648766606 755580328 2 +1704 -605370177 -605370177 -605370177 1 +1719 1008698636 -1477897348 -469198712 2 +1726 NULL NULL NULL 0 +1728 626251612 626251612 626251612 1 +1745 368170021 368170021 368170021 1 +1751 -667383951 -667383951 -667383951 1 +1752 -1538978853 -1538978853 -1538978853 1 +1769 805672638 805672638 805672638 1 +1774 -1974777102 -1974777102 -1974777102 1 +1775 1928365430 1928365430 1928365430 1 +1777 1061638369 1061638369 1061638369 1 +1780 -71433796 -71433796 -71433796 1 +1781 NULL NULL NULL 0 +1785 -524189419 -524189419 -524189419 1 +1786 -1009249550 -1009249550 -1009249550 1 +1788 -997463353 -997463353 -997463353 1 +1789 -1098379914 -1098379914 -1098379914 1 +1791 -1900369503 -1900369503 -1900369503 1 +1796 -1625062942 -1625062942 -1625062942 1 +1806 -40284975 -40284975 -40284975 1 +181 1742536084 1742536084 1742536084 1 +1811 -922200749 -922200749 -922200749 1 +1813 -738157651 -738157651 -738157651 1 +1826 505902480 505902480 505902480 1 +1827 -956668825 -956668825 -956668825 1 +1835 1768399622 1768399622 1768399622 1 +1837 290921475 290921475 290921475 1 +1845 -909024258 -909024258 -909024258 1 +1846 418182899 418182899 418182899 1 +1856 44009986 -1873004551 -1828994565 2 +1862 674547678 674547678 674547678 1 +1863 -1017027298 -1017027298 -1017027298 1 +1864 NULL NULL NULL 0 +1866 -400501472 -400501472 -400501472 1 +187 2133950868 2133950868 2133950868 1 +1870 25644069 25644069 25644069 1 +188 316438994 316438994 316438994 1 +1880 1293876597 1293876597 1293876597 1 +1890 -1660344634 -1660344634 -1660344634 1 +1892 596595603 596595603 596595603 1 +1899 734267314 734267314 734267314 1 +19 -436386350 -1900894010 -2337280360 2 +1906 1070989126 1070989126 1070989126 1 +1910 1978200605 1978200605 1978200605 1 +1914 -1146055387 -1462331586 -2608386973 2 +1926 -490337498 -490337498 -490337498 1 +1937 -987995271 -987995271 -987995271 1 +1940 950997304 950997304 950997304 1 +1941 -54793232 -54793232 -54793232 1 +1948 735732067 -1446132523 -1338846770 3 +1955 -316678117 -316678117 -316678117 1 +1965 1173098061 1173098061 1173098061 1 +1972 -1404921781 -1404921781 -1404921781 1 +1981 -980869630 -980869630 -980869630 1 +1983 -1954890941 -1954890941 -1954890941 1 +1987 65956045 65956045 65956045 1 +1990 1050809633 1050809633 1050809633 1 +1995 1012230484 1012230484 1012230484 1 +1999 -9958400 -9958400 -9958400 1 +2001 217476429 217476429 217476429 1 +2002 1535954353 1535954353 1535954353 1 +2004 1464703053 1464703053 1464703053 1 +2009 -1471147786 -1471147786 -1471147786 1 +2011 33234633 33234633 33234633 1 +2013 1142098316 1142098316 1142098316 1 +2016 135341845 135341845 135341845 1 +2017 44628821 44628821 44628821 1 +2020 37730738 -244778184 -207047446 2 +2025 989475408 989475408 989475408 1 +2026 -1454941039 -1454941039 -1454941039 1 +2029 546555204 546555204 546555204 1 +203 2070969353 2070969353 2070969353 1 +204 2018249426 2018249426 2018249426 1 +2046 363981930 363981930 363981930 1 +2056 1941527322 1941527322 1941527322 1 +2067 NULL NULL NULL 0 +2072 -1652600376 -1652600376 -1652600376 1 +2073 -856843296 -856843296 -856843296 1 +2085 -1179668872 -1179668872 -1179668872 1 +2089 945683736 945683736 945683736 1 +2092 1678261510 1678261510 1678261510 1 +2105 1550112473 1550112473 1550112473 1 +2106 1597303154 1597303154 1597303154 1 +2108 977292235 977292235 977292235 1 +213 -361944328 -1081328752 -1443273080 2 +2131 -464804906 -464804906 -464804906 1 +2138 -1048181367 -1048181367 -1048181367 1 +2140 -1319686435 -1319686435 -1319686435 1 +2144 117620760 117620760 117620760 1 +2155 1126157283 1126157283 1126157283 1 +2177 -1960344717 -1960344717 -1960344717 1 +2179 1394370866 1394370866 1394370866 1 +2180 -120704505 -120704505 -120704505 1 +2183 -1947868215 -1947868215 -1947868215 1 +2186 -1655396452 -1655396452 -1655396452 1 +2187 -906986958 -906986958 -906986958 1 +2189 NULL NULL NULL 0 +2193 -598552521 -2037628236 -2636180757 2 +2194 -853967587 -853967587 -853967587 1 +22 176792505 176792505 176792505 1 +2201 1425362689 1425362689 1425362689 1 +2205 2013376408 2013376408 2013376408 1 +2214 1602631923 1602631923 1602631923 1 +2217 479566810 479566810 479566810 1 +2218 NULL NULL NULL 0 +2223 1605596441 1605596441 1605596441 1 +2227 1054864168 1054864168 1054864168 1 +2229 516843026 516843026 516843026 1 +2232 277582670 277582670 277582670 1 +2241 810157660 810157660 810157660 1 +2244 -1699049982 -1699049982 -1699049982 1 +2255 -1561738723 -1561738723 -1561738723 1 +2262 1283898734 1283898734 1283898734 1 +2264 -425103007 -425103007 -425103007 1 +2270 -1429346144 -1429346144 -1429346144 1 +2274 -1676261015 -1676261015 -1676261015 1 +2277 -1447263708 -1447263708 -1447263708 1 +2279 -1412187081 -1412187081 -1412187081 1 +228 167432368 167432368 167432368 1 +2283 530274409 530274409 530274409 1 +2285 1533817551 340929437 1874746988 2 +2295 -1914072976 -1914072976 -1914072976 1 +2306 -604362582 -604362582 -604362582 1 +2320 -1919939921 -1919939921 -1919939921 1 +2323 -2028355450 -2028355450 -2028355450 1 +2325 1645067708 1471913583 3116981291 2 +2335 1281277970 1281277970 1281277970 1 +2341 1951869763 1951869763 1951869763 1 +2348 -40407627 -40407627 -40407627 1 +2358 -370798230 -370798230 -370798230 1 +236 514833409 514833409 514833409 1 +2373 -1602792666 -1602792666 -1602792666 1 +238 713031549 713031549 713031549 1 +2386 930008274 930008274 930008274 1 +2393 1852725744 901084309 2753810053 2 +2398 1489169773 1489169773 1489169773 1 +2400 663222148 663222148 663222148 1 +2410 NULL NULL NULL 0 +2412 -887663189 -1749841790 -2637504979 2 +2420 480849725 480849725 480849725 1 +2426 62293025 62293025 62293025 1 +2434 1621606222 1621606222 1621606222 1 +244 860708524 860708524 860708524 1 +2461 -1668974292 -1668974292 -1668974292 1 +2463 2031604236 -655118881 2507326063 3 +2465 -1819075185 -1819075185 -1819075185 1 +2469 524808 524808 524808 1 +2475 -1116100266 -1116100266 -1116100266 1 +2476 -1210261177 -1210261177 -1210261177 1 +2485 1594107168 -379643543 1214463625 2 +2487 NULL NULL NULL 0 +2492 -270683864 -270683864 -270683864 1 +2494 -1830870295 -1830870295 -1830870295 1 +2502 -336625622 -336625622 -336625622 1 +2506 776606164 776606164 776606164 1 +2509 693331761 693331761 693331761 1 +2512 -1164833898 -1164833898 -1164833898 1 +2514 407233168 407233168 407233168 1 +2515 -601946913 -601946913 -601946913 1 +2517 198624903 198624903 198624903 1 +2524 -1081766449 -1081766449 -1081766449 1 +2533 672266669 672266669 672266669 1 +2539 1090344463 1090344463 1090344463 1 +2540 1103878879 1103878879 1103878879 1 +255 -1106469823 -1106469823 -1106469823 1 +2551 -1762037754 -1762037754 -1762037754 1 +2553 1112783661 1112783661 1112783661 1 +2560 -1493282775 -1946023520 -3439306295 2 +2563 -1141652793 -1141652793 -1141652793 1 +2565 -1302592941 -1302592941 -1302592941 1 +2569 -837503491 -837503491 -837503491 1 +2579 1640445482 1640445482 1640445482 1 +2580 1933545427 1933545427 1933545427 1 +2587 -1125605439 -1125605439 -1125605439 1 +259 -922875124 -922875124 -922875124 1 +2599 -1903090602 -1903090602 -1903090602 1 +2607 NULL NULL NULL 0 +2608 335359004 335359004 335359004 1 +2619 1895751360 -2019287179 -123535819 2 +2625 -1897998366 -1897998366 -1897998366 1 +2626 1620529246 1620529246 1620529246 1 +263 1807358029 1094778643 2902136672 2 +2637 1522208504 1522208504 1522208504 1 +2647 92834720 92834720 92834720 1 +2649 659343542 659343542 659343542 1 +2662 209430502 209430502 209430502 1 +2663 43983130 43983130 43983130 1 +2675 1305668933 1305668933 1305668933 1 +268 860658464 -203416622 657241842 2 +2680 825977391 825977391 825977391 1 +2682 -675125724 -675125724 -675125724 1 +2688 -1249134513 -1249134513 -1249134513 1 +2689 -1343327 -1343327 -1343327 1 +2692 NULL NULL NULL 0 +2700 -123529324 -123529324 -123529324 1 +2712 -901778330 -901778330 -901778330 1 +2714 1284956108 1284956108 1284956108 1 +2715 1569269522 962712814 2531982336 2 +2719 1516149502 1516149502 1516149502 1 +2724 922373046 922373046 922373046 1 +2725 257821327 257821327 257821327 1 +2735 1307148254 1307148254 1307148254 1 +2745 1134416796 1134416796 1134416796 1 +275 1517488324 1517488324 1517488324 1 +2752 962091264 962091264 962091264 1 +2762 314232856 314232856 314232856 1 +2772 1835749815 1835749815 1835749815 1 +2776 -1801684055 -1801684055 -1801684055 1 +2786 343362793 -2117280385 -1773917592 2 +279 -1709246310 -1709246310 -1709246310 1 +2790 686081268 686081268 686081268 1 +2791 -714594143 -714594143 -714594143 1 +2803 923980398 493977568 2005164945 3 +2805 -295751373 -295751373 -295751373 1 +281 -42151403 -42151403 -42151403 1 +2810 1844415080 1844415080 1844415080 1 +2811 -170643477 -170643477 -170643477 1 +2816 -912429611 -912429611 -912429611 1 +2821 829055499 829055499 829055499 1 +2824 -1679120527 -1679120527 -1679120527 1 +2835 144428297 144428297 144428297 1 +2842 889772203 889772203 889772203 1 +2843 -887790938 -1621721177 -2509512115 2 +2846 -121162464 -121162464 -121162464 1 +2847 1634441052 1634441052 1634441052 1 +2848 -985817478 -985817478 -985817478 1 +2850 1618123796 1618123796 1618123796 1 +2855 1756592797 -1770250407 -13657610 2 +2862 1956887369 1956887369 1956887369 1 +2878 -906545548 -906545548 -906545548 1 +2886 84231802 84231802 84231802 1 +289 -1144976744 -1144976744 -1144976744 1 +2897 1211873318 -47662800 1164210518 2 +2900 2114363167 2114363167 2114363167 1 +2903 1552351592 1552351592 1552351592 1 +2905 -1232183416 -1232183416 -1232183416 1 +2911 1483580941 1483580941 1483580941 1 +2915 -470798506 -470798506 -470798506 1 +2919 1002132158 1002132158 1002132158 1 +2933 -1484787952 -1674623501 -3159411453 2 +2938 -2032576637 -2032576637 -2032576637 1 +294 -1817096156 -1817096156 -1817096156 1 +2941 -1862095575 -1862095575 -1862095575 1 +2942 1638471881 1638471881 1638471881 1 +296 597657990 -1348149160 -750491170 2 +2962 1042237722 1042237722 1042237722 1 +2968 1556919269 1556919269 1556919269 1 +2971 -373541958 -373541958 -373541958 1 +2977 -2007662579 -2007662579 -2007662579 1 +2979 131031898 131031898 131031898 1 +2984 1440427914 1440427914 1440427914 1 +2986 -933324607 -933324607 -933324607 1 +2988 492639283 492639283 492639283 1 +2991 NULL NULL NULL 0 +3002 -1538558250 -1538558250 -1538558250 1 +3006 1328225044 1328225044 1328225044 1 +301 -1924909143 -1924909143 -1924909143 1 +302 -1730740504 -1730740504 -1730740504 1 +3021 177294487 -360113158 -182818671 2 +3024 -891543038 -891543038 -891543038 1 +3029 -1198036877 -1198036877 -1198036877 1 +3031 NULL NULL NULL 0 +3036 -449333854 -449333854 -449333854 1 +3043 692666133 692666133 692666133 1 +3054 -973128166 -973128166 -973128166 1 +3055 -1198465530 -1198465530 -1198465530 1 +3058 -1144920802 -1144920802 -1144920802 1 +3059 1386071996 1386071996 1386071996 1 +3060 818313200 -2122509553 -1304196353 2 +3067 1256676429 1256676429 1256676429 1 +3071 1129173487 1129173487 1129173487 1 +3073 722737062 722737062 722737062 1 +3079 -882028850 -882028850 -882028850 1 +3083 -385247581 -385247581 -385247581 1 +3084 1333148555 1333148555 1333148555 1 +3089 584084934 584084934 584084934 1 +3094 1335803002 1335803002 1335803002 1 +3103 -1622653291 -1622653291 -1622653291 1 +311 -1850492820 -1850492820 -1850492820 1 +3111 -1299159155 -1299159155 -1299159155 1 +3118 NULL NULL NULL 0 +3119 673904922 673904922 673904922 1 +3144 -758231588 -758231588 -758231588 1 +3147 1102069050 1102069050 1102069050 1 +3159 1127080164 -78240945 1048839219 2 +3163 26270580 26270580 26270580 1 +3174 -1871446009 -1871446009 -1871446009 1 +3183 1363459426 1363459426 1363459426 1 +3190 297577612 297577612 297577612 1 +3197 976870621 976870621 976870621 1 +3199 -2086352100 -2086352100 -2086352100 1 +320 1198172036 1198172036 1198172036 1 +3203 -491377296 -491377296 -491377296 1 +3206 -733756717 -733756717 -733756717 1 +3208 -211669740 -211669740 -211669740 1 +3212 900992177 900992177 900992177 1 +3213 -1171326281 -1171326281 -1171326281 1 +3231 -817383093 -817383093 -817383093 1 +3232 1434588588 1434588588 1434588588 1 +3235 -287400633 -287400633 -287400633 1 +3244 1303632852 1303632852 1303632852 1 +3245 1385883394 1385883394 1385883394 1 +3248 1202720813 1202720813 1202720813 1 +3249 206942178 206942178 206942178 1 +3253 -1218871391 -1218871391 -1218871391 1 +3255 -1212433954 -1212433954 -1212433954 1 +3263 -419335927 -419335927 -419335927 1 +3286 -1078214868 -1078214868 -1078214868 1 +3300 1743696703 1743696703 1743696703 1 +3307 -1128317466 -1128317466 -1128317466 1 +3322 -1544877665 -1544877665 -1544877665 1 +3333 -462541618 -462541618 -462541618 1 +3352 -1621814212 -1621814212 -1621814212 1 +336 1376818328 1376818328 1376818328 1 +3365 1712411993 1712411993 1712411993 1 +3366 -606214770 -606214770 -606214770 1 +3397 -2066134281 -2066134281 -2066134281 1 +34 1969650228 1969650228 1969650228 1 +3401 -2138343289 -2138343289 -2138343289 1 +3407 NULL NULL NULL 0 +3409 -337586880 -337586880 -337586880 1 +341 278643258 278643258 278643258 1 +3418 786565385 -940504641 -153939256 2 +342 -884796655 -884796655 -884796655 1 +3421 -1878572820 -1878572820 -1878572820 1 +3430 -395499919 -395499919 -395499919 1 +3443 -1006768637 -1006768637 -1006768637 1 +3446 440393309 440393309 440393309 1 +345 NULL NULL NULL 0 +3456 NULL NULL NULL 0 +346 -938756287 -1880877824 -2819634111 2 +3460 1204325852 1204325852 1204325852 1 +3462 511836073 -1716506227 -1412216754 3 +3467 596802082 -1134786190 -537984108 2 +347 -414207254 -414207254 -414207254 1 +3472 868717604 868717604 868717604 1 +3478 1772545157 1772545157 1772545157 1 +3493 -890552359 -890552359 -890552359 1 +350 330302407 330302407 330302407 1 +3507 2032271149 2032271149 2032271149 1 +3510 197056787 197056787 197056787 1 +3512 636901402 636901402 636901402 1 +3533 1076088102 1076088102 1076088102 1 +3534 NULL NULL NULL 0 +3541 -996953616 -996953616 -996953616 1 +3542 459269456 459269456 459269456 1 +355 1258721737 1258721737 1258721737 1 +3554 48554395 48554395 48554395 1 +3555 458190500 41063276 499253776 2 +3563 1332181668 1332181668 1332181668 1 +3566 -519978947 -519978947 -519978947 1 +3567 410340192 410340192 410340192 1 +3568 NULL NULL NULL 0 +3579 -1426893312 -1426893312 -1426893312 1 +3588 850625480 696229550 1546855030 2 +3599 2069258195 2069258195 2069258195 1 +3606 -1032306832 -1032306832 -1032306832 1 +3608 773730574 773730574 773730574 1 +3609 -1380191654 -1380191654 -1380191654 1 +361 -434747475 -434747475 -434747475 1 +3613 1191238870 1191238870 1191238870 1 +3622 2057486961 -1583445177 474041784 2 +3625 -1656822229 -1656822229 -1656822229 1 +3630 693876030 693876030 693876030 1 +3637 929560791 929560791 929560791 1 +364 1336365018 1336365018 1336365018 1 +3648 1142481557 1142481557 1142481557 1 +3663 -886741158 -886741158 -886741158 1 +3664 -186600427 -186600427 -186600427 1 +367 -1324624386 -1324624386 -1324624386 1 +3672 1825828852 1825828852 1825828852 1 +3673 -362603422 -362603422 -362603422 1 +3677 470575409 470575409 470575409 1 +3680 1124269631 1124269631 1124269631 1 +3682 -1718163874 -1718163874 -1718163874 1 +3690 1500437122 1500437122 1500437122 1 +3691 -664111469 -664111469 -664111469 1 +3701 760466914 760466914 760466914 1 +3702 -1423467446 -1423467446 -1423467446 1 +3703 1796950944 1796950944 1796950944 1 +3707 1377359511 1377359511 1377359511 1 +3722 -1322736153 -1322736153 -1322736153 1 +3724 1625751062 1625751062 1625751062 1 +3725 1911834442 -2119539915 -207705473 2 +3728 -800799595 -938342473 -1739142068 2 +3739 -192181579 -192181579 -192181579 1 +3747 1001732850 1001732850 1001732850 1 +3749 1027147837 1027147837 1027147837 1 +375 -1754347372 -1754347372 -1754347372 1 +3755 -7929246 -7929246 -7929246 1 +3763 -679230165 -679230165 -679230165 1 +3764 -2027812975 -2027812975 -2027812975 1 +3769 -1431196400 -1431196400 -1431196400 1 +3770 -1627366321 -1727003541 -3354369862 2 +378 -1270523286 -1270523286 -1270523286 1 +3781 141492068 -161884324 -20392256 2 +3789 -139448716 -139448716 -139448716 1 +379 1625699061 1625699061 1625699061 1 +3810 -1043413503 -1043413503 -1043413503 1 +3812 -870900240 -870900240 -870900240 1 +3823 1563120121 1563120121 1563120121 1 +3824 1372224352 1372224352 1372224352 1 +383 1063524922 -191434898 872090024 2 +3830 1443426396 1443426396 1443426396 1 +3835 133276416 133276416 133276416 1 +3841 -901079162 -901079162 -901079162 1 +3848 1436480682 1436480682 1436480682 1 +3858 1925283040 1925283040 1925283040 1 +3860 -423945469 -423945469 -423945469 1 +3866 436093771 -88576126 347517645 2 +3874 -1603071732 -1603071732 -1603071732 1 +3879 461680901 461680901 461680901 1 +388 -66112513 -66112513 -66112513 1 +3887 476919973 476919973 476919973 1 +3901 -1909635960 -1909635960 -1909635960 1 +3904 1473503196 1473503196 1473503196 1 +3907 -373038706 -373038706 -373038706 1 +391 1107258026 1107258026 1107258026 1 +3910 NULL NULL NULL 0 +3911 -1283465451 -1283465451 -1283465451 1 +3913 1506907734 1506907734 1506907734 1 +392 1664736741 1664736741 1664736741 1 +3932 2145269593 2145269593 2145269593 1 +3940 923353533 923353533 923353533 1 +3941 -734921821 -734921821 -734921821 1 +3945 -1758125445 -1758125445 -1758125445 1 +3946 523289079 523289079 523289079 1 +3949 1797164732 1797164732 1797164732 1 +3958 65172363 65172363 65172363 1 +3960 1509573831 1509573831 1509573831 1 +3961 -1955647385 -1955647385 -1955647385 1 +3962 NULL NULL NULL 0 +3965 771827308 771827308 771827308 1 +3974 670667262 -253084551 417582711 2 +3980 -564495517 -564495517 -564495517 1 +3990 -1392487784 -1392487784 -1392487784 1 +4018 -396852483 -396852483 -396852483 1 +4020 -1447140800 -1447140800 -1447140800 1 +4024 -202035134 -202035134 -202035134 1 +4030 -216495498 -216495498 -216495498 1 +4037 1003667927 1003667927 1003667927 1 +4051 1052255272 1052255272 1052255272 1 +4054 1998185704 1998185704 1998185704 1 +4056 -1516259168 -1516259168 -1516259168 1 +4075 NULL NULL NULL 0 +4078 727802564 727802564 727802564 1 +4088 947846543 947846543 947846543 1 +41 -203911033 -203911033 -203911033 1 +412 2144454927 -505879576 1638575351 2 +417 152891873 152891873 152891873 1 +425 1336194583 1336194583 1336194583 1 +443 596242714 596242714 596242714 1 +454 -1227085134 -1227085134 -1227085134 1 +455 1159353899 1159353899 1159353899 1 +462 1677444379 1677444379 1677444379 1 +470 -181523892 -181523892 -181523892 1 +471 -207899360 -207899360 -207899360 1 +481 536235636 536235636 536235636 1 +482 765084282 765084282 765084282 1 +485 874824958 874824958 874824958 1 +489 -928013434 -928013434 -928013434 1 +49 1673218677 1673218677 1673218677 1 +490 1229172951 1229172951 1229172951 1 +491 -201554470 -201554470 -201554470 1 +5 -1063673827 -1063673827 -1063673827 1 +500 1216016081 1216016081 1216016081 1 +501 715333063 -1469463456 -754130393 2 +504 851975276 851975276 851975276 1 +522 -853606287 -853606287 -853606287 1 +523 149701884 149701884 149701884 1 +524 -1326025787 -1326025787 -1326025787 1 +530 -1851680302 -1851680302 -1851680302 1 +535 888896424 888896424 888896424 1 +579 -1804244259 -1804244259 -1804244259 1 +583 -1554325042 -1554325042 -1554325042 1 +584 -2017279089 -2017279089 -2017279089 1 +586 -310343273 -310343273 -310343273 1 +587 1485934602 1485934602 1485934602 1 +590 -186764959 -186764959 -186764959 1 +597 1577999613 1577999613 1577999613 1 +601 -592568201 -592568201 -592568201 1 +612 1131663263 1131663263 1131663263 1 +615 2097519027 2097519027 2097519027 1 +618 -412333994 -412333994 -412333994 1 +65 919363072 919363072 919363072 1 +650 1222217404 1222217404 1222217404 1 +658 -1254129998 -1254129998 -1254129998 1 +66 2013444562 2013444562 2013444562 1 +661 1045719941 -407089271 638630670 2 +663 -1261099087 -1261099087 -1261099087 1 +664 899810881 899810881 899810881 1 +677 -1038565721 -1038565721 -1038565721 1 +68 879290165 879290165 879290165 1 +681 -893863493 -893863493 -893863493 1 +687 1888675011 1888675011 1888675011 1 +688 NULL NULL NULL 0 +690 -1112062809 -1112062809 -1112062809 1 +691 -1156193121 -1156193121 -1156193121 1 +6923604860394528768 -1095938490 -1095938490 -1095938490 1 +6924820982050758656 -1709117770 -1709117770 -1709117770 1 +6926925215281774592 987734049 987734049 987734049 1 +6927260280037097472 1668094749 1668094749 1668094749 1 +6928080429732536320 1300798829 1300798829 1300798829 1 +6933001829416034304 2089198703 2089198703 2089198703 1 +6933451028794925056 1776456512 1776456512 1776456512 1 +6933731240564056064 780859673 780859673 780859673 1 +6934570741217755136 491758252 491758252 491758252 1 +694 -2015780444 -2015780444 -2015780444 1 +6947488599548215296 1141595012 1141595012 1141595012 1 +695 -521886983 -521886983 -521886983 1 +6960137166475911168 -558456218 -558456218 -558456218 1 +6962726713896484864 2051470532 2051470532 2051470532 1 +6963217546192322560 -1340213051 -1340213051 -1340213051 1 +6964585306125008896 2146312499 2146312499 2146312499 1 +6967631925774639104 373031319 373031319 373031319 1 +6969599299897163776 -2042831105 -2042831105 -2042831105 1 +6974475559697768448 1493555718 1493555718 1493555718 1 +6982145326341423104 -941433219 -941433219 -941433219 1 +6987889924212203520 -2053551539 -2053551539 -2053551539 1 +6991316084916879360 -1345085327 -1345085327 -1345085327 1 +6996686091335884800 -1738775004 -1738775004 -1738775004 1 +7006803044329021440 1614297403 1614297403 1614297403 1 +7013693841855774720 656187584 656187584 656187584 1 +7014537632150224896 -44426049 -44426049 -44426049 1 +7017956982081404928 -828724467 -828724467 -828724467 1 +7022349041913978880 -1096013673 -1096013673 -1096013673 1 +7027529814236192768 -1988508336 -1988508336 -1988508336 1 +7031339012080549888 1182390248 1182390248 1182390248 1 +7039820685967343616 -483740394 -483740394 -483740394 1 +7045967493826387968 -1669227632 -1669227632 -1669227632 1 +7049773031131283456 814544198 814544198 814544198 1 +7052226236896256000 1119976718 1119976718 1119976718 1 +7054271419461812224 -1266138408 -1266138408 -1266138408 1 +7054938591408996352 -352146259 -352146259 -352146259 1 +7060236714847412224 -1858443953 -1858443953 -1858443953 1 +7061498706968428544 -290558484 -290558484 -290558484 1 +7061809776248545280 -469870330 -469870330 -469870330 1 +7062382339142156288 536876888 536876888 536876888 1 +7062605127422894080 -1614194712 -1614194712 -1614194712 1 +7065344324692443136 -1881263242 -1881263242 -1881263242 1 +7068517339681259520 -1871209811 -1871209811 -1871209811 1 +7069729473166090240 NULL NULL NULL 0 +707 1343581455 1343581455 1343581455 1 +7077311975029555200 1103797891 1103797891 1103797891 1 +7078641038157643776 NULL NULL NULL 0 +7080269176324218880 -337073639 -337073639 -337073639 1 +7084659344078970880 963854010 963854010 963854010 1 +7086206629592252416 -1106685577 -1106685577 -1106685577 1 +7091300332052062208 NULL NULL NULL 0 +7099005292698550272 917891418 917891418 917891418 1 +71 -20639382 -20639382 -20639382 1 +7107604675626008576 1949494660 1949494660 1949494660 1 +7125231541858205696 -2111312205 -2111312205 -2111312205 1 +7128222874437238784 -283378057 -283378057 -283378057 1 +7130159794259353600 -837506172 -837506172 -837506172 1 +7130306447560826880 77063155 77063155 77063155 1 +7149417430082027520 -1352545619 -1352545619 -1352545619 1 +7153922334283776000 NULL NULL NULL 0 +7157247449513484288 -36038293 -36038293 -36038293 1 +7164349895861829632 -1153978907 -1153978907 -1153978907 1 +7165364563962191872 -1272838092 -1272838092 -1272838092 1 +7166263463731421184 -1838281337 -1838281337 -1838281337 1 +7175638927948562432 596280431 596280431 596280431 1 +7186401810812059648 1430614653 1430614653 1430614653 1 +7195454019231834112 -1419573027 -1419573027 -1419573027 1 +7198687580227043328 563507584 563507584 563507584 1 +7199539820886958080 NULL NULL NULL 0 +7204802700490858496 -1719427168 -1719427168 -1719427168 1 +7210160489915236352 -1353470095 -1353470095 -1353470095 1 +7212016545671348224 1309976380 1309976380 1309976380 1 +7212090742612467712 -1067083033 -1067083033 -1067083033 1 +7217123582035116032 -90029636 -90029636 -90029636 1 +7220131672176058368 1017953606 1017953606 1017953606 1 +7220581538170413056 615661052 615661052 615661052 1 +7223569671814987776 -1004204053 -1004204053 -1004204053 1 +7226360892091416576 -935723237 -935723237 -935723237 1 +7229607057201127424 -1818380492 -1818380492 -1818380492 1 +723 1616782308 1616782308 1616782308 1 +7231399302953377792 1990792684 1990792684 1990792684 1 +7232273749940838400 -1231821948 -1231821948 -1231821948 1 +7235109456886816768 -2098078720 -2098078720 -2098078720 1 +7237310132329488384 -1061859761 -1061859761 -1061859761 1 +7238339720750948352 -1770229099 -1770229099 -1770229099 1 +724 -616724730 -616724730 -616724730 1 +7242751359672631296 -2016985611 -2016985611 -2016985611 1 +7249443195032985600 -51612681 -51612681 -51612681 1 +7250237407877382144 -772236518 -772236518 -772236518 1 +7254710367022645248 1911809937 1911809937 1911809937 1 +7255302164215013376 1281159709 1281159709 1281159709 1 +7259955893466931200 NULL NULL NULL 0 +7260908278294560768 826519029 826519029 826519029 1 +7265141874315517952 -571587579 -571587579 -571587579 1 +7266437490436341760 177391521 177391521 177391521 1 +7271786885641666560 936752497 936752497 936752497 1 +7271887863395459072 -94709066 -94709066 -94709066 1 +7274777328897802240 482977302 482977302 482977302 1 +7291432593139507200 1570238232 1570238232 1570238232 1 +7295502697317097472 210728566 210728566 210728566 1 +7295926343524163584 1182646662 1182646662 1182646662 1 +7296164580491075584 1412102605 1412102605 1412102605 1 +7299197687217856512 172075892 172075892 172075892 1 +73 488014426 488014426 488014426 1 +7304839835188609024 1961954939 1961954939 1961954939 1 +7308289763456000000 -1423477356 -1423477356 -1423477356 1 +7309156463509061632 1304431147 1304431147 1304431147 1 +7310869618402910208 -359943425 -359943425 -359943425 1 +7319711402123149312 1036391201 1036391201 1036391201 1 +7333512171174223872 -332125121 -332125121 -332125121 1 +7339426767877390336 538268118 538268118 538268118 1 +7343171468838567936 879289168 879289168 879289168 1 +7344029858387820544 -1669848306 -1669848306 -1669848306 1 +7345991518378442752 849859032 849859032 849859032 1 +7347732772348870656 -1800413845 -1800413845 -1800413845 1 +7348598907182800896 -1940205653 -1940205653 -1940205653 1 +735 115111911 115111911 115111911 1 +7354813692542304256 1426152053 1426152053 1426152053 1 +7359004378440146944 1082837515 1082837515 1082837515 1 +736 -1183469360 -1183469360 -1183469360 1 +7368920486374989824 -1822850051 -1822850051 -1822850051 1 +7370078518278397952 -215703544 -215703544 -215703544 1 +7370803940448305152 -533281137 -533281137 -533281137 1 +7375521127126089728 -688296901 -688296901 -688296901 1 +7376467688511455232 -348628614 -348628614 -348628614 1 +7378993334503694336 1870464222 1870464222 1870464222 1 +738 -453739759 -453739759 -453739759 1 +7381659098423926784 867587289 867587289 867587289 1 +7384150968511315968 1447462863 1447462863 1447462863 1 +7386087924003676160 2038381675 2038381675 2038381675 1 +7391208370547269632 -743680989 -743680989 -743680989 1 +7393308503950548992 -849551464 -849551464 -849551464 1 +7394967727502467072 -1983567458 -1983567458 -1983567458 1 +7401968422230032384 -504529358 -504529358 -504529358 1 +7410096605330227200 1987336880 1987336880 1987336880 1 +7410872053689794560 -916344293 -916344293 -916344293 1 +7411793502161182720 -177025818 -177025818 -177025818 1 +7412924364686458880 1817671655 1817671655 1817671655 1 +7414865343000322048 -829717122 -829717122 -829717122 1 +7418271723644403712 1202593021 1202593021 1202593021 1 +743 1004241194 1004241194 1004241194 1 +7432428551399669760 -805288503 -805288503 -805288503 1 +7432998950057975808 -434656160 -434656160 -434656160 1 +7436133434239229952 203688965 203688965 203688965 1 +7440265908266827776 -1425942083 -1425942083 -1425942083 1 +7450416810848313344 1393262450 1393262450 1393262450 1 +7452756603516190720 -2009569943 -2009569943 -2009569943 1 +7454442625055145984 -267554590 -267554590 -267554590 1 +7454632396542074880 859140926 859140926 859140926 1 +7461153404961128448 -23865350 -23865350 -23865350 1 +7471208109437304832 -1603374745 -1603374745 -1603374745 1 +7473537548003352576 -1439424023 -1439424023 -1439424023 1 +7486884806277611520 1516236846 1516236846 1516236846 1 +7487338208419823616 1974939899 1974939899 1974939899 1 +7487538600082554880 2068538934 2068538934 2068538934 1 +7490717730239250432 -1829691116 -1829691116 -1829691116 1 +7491898395977523200 1265528735 1265528735 1265528735 1 +7492436934952574976 NULL NULL NULL 0 +7497276415392407552 1543611951 1543611951 1543611951 1 +7497306924248834048 550594651 550594651 550594651 1 +7500716020874674176 -1953605752 -1953605752 -1953605752 1 +7514552840617558016 334208532 334208532 334208532 1 +7517159036469575680 -1437126017 -1437126017 -1437126017 1 +7524958388842078208 -664856187 -664856187 -664856187 1 +7528074274555305984 550186724 550186724 550186724 1 +7528211148397944832 -512198016 -512198016 -512198016 1 +7534042483076857856 1645753684 1645753684 1645753684 1 +7534145866886782976 -532755480 -532755480 -532755480 1 +7534549597202194432 2044130430 2044130430 2044130430 1 +7545689659010949120 -1380678829 -1380678829 -1380678829 1 +7548958830580563968 1836499981 1836499981 1836499981 1 +7549858023389003776 NULL NULL NULL 0 +7555301305375858688 1916363472 1916363472 1916363472 1 +7566273236152721408 881673558 881673558 881673558 1 +7569249672628789248 -1952235832 -1952235832 -1952235832 1 +7570474972934488064 -432218419 -432218419 -432218419 1 +7573530789362262016 NULL NULL NULL 0 +7575087487730196480 1421779455 1421779455 1421779455 1 +7581052107944361984 1493152791 1493152791 1493152791 1 +7581614118458335232 -1129489281 -1129489281 -1129489281 1 +7584007864107778048 1410516523 1410516523 1410516523 1 +7592440105065308160 NULL NULL NULL 0 +7593521922173419520 1260480653 1260480653 1260480653 1 +7596563216912211968 605946758 605946758 605946758 1 +7599019810193211392 -2112149052 -2112149052 -2112149052 1 +7608447395949109248 882762933 882762933 882762933 1 +7614435638888210432 735600165 735600165 735600165 1 +7620183559667081216 -1967660827 -1967660827 -1967660827 1 +7621013099259527168 -553349593 -553349593 -553349593 1 +7625728883085025280 -1699044525 -1699044525 -1699044525 1 +7626715182847090688 1905812339 1905812339 1905812339 1 +763 -1933374662 -1933374662 -1933374662 1 +7637152193832886272 1880017800 1880017800 1880017800 1 +7647481735646363648 1164895226 1164895226 1164895226 1 +7648729477297987584 NULL NULL NULL 0 +7652123583449161728 472901914 472901914 472901914 1 +7659279803863146496 1541249928 1541249928 1541249928 1 +7662037650719850496 -175727228 -175727228 -175727228 1 +7675009476762918912 522895626 522895626 522895626 1 +7678790769408172032 -1313618168 -1313618168 -1313618168 1 +7682327310082531328 879500678 879500678 879500678 1 +7686992843032010752 -897622427 -897622427 -897622427 1 +7689489436826804224 -909127123 -909127123 -909127123 1 +7690986322714066944 -2124994385 -2124994385 -2124994385 1 +7691062622443044864 1516165279 1516165279 1516165279 1 +7696737688942567424 -269702086 -269702086 -269702086 1 +7697541332524376064 -1070951602 -1070951602 -1070951602 1 +7700734109530767360 194754262 194754262 194754262 1 +7701723309715685376 -1831957182 -1831957182 -1831957182 1 +7705445437881278464 527598540 527598540 527598540 1 +7710447533880614912 -583908704 -583908704 -583908704 1 +7718825401976684544 -1226425562 -1226425562 -1226425562 1 +7720187583697502208 -1366059787 -1366059787 -1366059787 1 +7731443941834678272 -1092872261 -1092872261 -1092872261 1 +7735566678126616576 1626868156 1626868156 1626868156 1 +774 449788961 449788961 449788961 1 +7741854854673367040 -1743938290 -1743938290 -1743938290 1 +7746402369011277824 -1735287250 -1735287250 -1735287250 1 +7747874976739016704 315055746 315055746 315055746 1 +7748799008146366464 -540401598 -540401598 -540401598 1 +7752740515534422016 1851654062 1851654062 1851654062 1 +7753359568986636288 -816661030 -816661030 -816661030 1 +7753882935005880320 1190302173 1190302173 1190302173 1 +7761834341179375616 1273877405 1273877405 1273877405 1 +7762823913046556672 1198701102 1198701102 1198701102 1 +7765456790394871808 1074488452 1074488452 1074488452 1 +7768984605670604800 NULL NULL NULL 0 +7775034125776363520 -1628799508 -1628799508 -1628799508 1 +7778936842502275072 -1702587308 -1702587308 -1702587308 1 +7779486624537370624 -1998652546 -1998652546 -1998652546 1 +7779735136559579136 -1228063838 -1228063838 -1228063838 1 +7782245855193874432 618991041 618991041 618991041 1 +7784169796350730240 -958165276 -958165276 -958165276 1 +7784489776013295616 -158848747 -158848747 -158848747 1 +779 -1939362279 -1939362279 -1939362279 1 +7790728456522784768 1575091509 1575091509 1575091509 1 +7792036342592348160 -538812082 -538812082 -538812082 1 +7794244032613703680 1301426600 1301426600 1301426600 1 +78 95356298 95356298 95356298 1 +780 -737624128 -737624128 -737624128 1 +7800332581637259264 592011541 592011541 592011541 1 +7801697837312884736 -116484575 -116484575 -116484575 1 +7818464507324121088 -2119724898 -2119724898 -2119724898 1 +782 -1552053883 -1552053883 -1552053883 1 +7823874904139849728 344239980 344239980 344239980 1 +784 44595790 44595790 44595790 1 +7843804446688264192 -397951021 -397951021 -397951021 1 +7844258063629852672 972835688 972835688 972835688 1 +7845953007588401152 NULL NULL NULL 0 +7857878068300898304 977624089 977624089 977624089 1 +7868367829080506368 658008867 658008867 658008867 1 +7870277756614623232 985634256 985634256 985634256 1 +7871189141676998656 1363568842 1363568842 1363568842 1 +7871554728617025536 -309571354 -309571354 -309571354 1 +7874764415950176256 2127682701 2127682701 2127682701 1 +7885697257930588160 1992977592 1992977592 1992977592 1 +7888238729321496576 978044705 978044705 978044705 1 +789 NULL NULL NULL 0 +7892026679115554816 626941809 626941809 626941809 1 +7892281003266408448 -371779520 -371779520 -371779520 1 +7898670840507031552 776459017 776459017 776459017 1 +7909645665163804672 -1289665817 -1289665817 -1289665817 1 +7917494645725765632 2076370203 2076370203 2076370203 1 +7919597361814577152 2125311222 2125311222 2125311222 1 +7921639119138070528 -1030565036 -1030565036 -1030565036 1 +7922443154272395264 -1333770335 -1333770335 -1333770335 1 +7926898770090491904 1582537271 1582537271 1582537271 1 +7933040277013962752 -1061222139 -1061222139 -1061222139 1 +7936149988210212864 1769324649 1769324649 1769324649 1 +7944741547145502720 372099650 372099650 372099650 1 +7947544013461512192 -1184620079 -1184620079 -1184620079 1 +7948803266578161664 1766517223 1766517223 1766517223 1 +7955126053367119872 1447438548 1447438548 1447438548 1 +7961515985722605568 866084887 866084887 866084887 1 +7961909238130270208 -1138530007 -1138530007 -1138530007 1 +797 996831203 996831203 996831203 1 +7983789401706094592 230954385 230954385 230954385 1 +7989119273552158720 NULL NULL NULL 0 +7989160253372817408 1848935036 1848935036 1848935036 1 +7997694023324975104 -1826997220 -1826997220 -1826997220 1 +7998357471114969088 346562088 346562088 346562088 1 +7998687089080467456 NULL NULL NULL 0 +80 NULL NULL NULL 0 +8000440057238052864 1251556414 1251556414 1251556414 1 +8002769767000145920 1668446119 1668446119 1668446119 1 +8004633750273925120 -1754203978 -1754203978 -1754203978 1 +8011181697250631680 1773417290 1773417290 1773417290 1 +8011602724663336960 667283966 667283966 667283966 1 +8014986215157530624 -799249885 -799249885 -799249885 1 +8017403886247927808 -1491722659 -1491722659 -1491722659 1 +803 -2096425960 -2096425960 -2096425960 1 +8045070943673671680 435407142 435407142 435407142 1 +8048726769133592576 -406264741 -406264741 -406264741 1 +8059284960252731392 -251576563 -251576563 -251576563 1 +8069531888205086720 1978171687 1978171687 1978171687 1 +8071961599867387904 52667480 52667480 52667480 1 +8073733016154431488 1815882183 1815882183 1815882183 1 +8079573715140485120 503752931 503752931 503752931 1 +808 -1836166334 -1836166334 -1836166334 1 +8087737899452432384 -2137168636 -2137168636 -2137168636 1 +809 -682333536 -682333536 -682333536 1 +8091421389575282688 NULL NULL NULL 0 +8099215208813903872 492968645 492968645 492968645 1 +8100036735858401280 -146961490 -146961490 -146961490 1 +8109381965028548608 2022944702 2022944702 2022944702 1 +8111757081791733760 -234758376 -234758376 -234758376 1 +8113585123802529792 129675822 129675822 129675822 1 +8116738401948377088 1914993018 1914993018 1914993018 1 +812 -954480325 -954480325 -954480325 1 +8120593157178228736 -1379039356 -1379039356 -1379039356 1 +8129551357032259584 323817967 323817967 323817967 1 +8135164922674872320 -1459528251 -1459528251 -1459528251 1 +8142241016679735296 -163859725 -163859725 -163859725 1 +8143462899383345152 644934949 644934949 644934949 1 +8144552446127972352 2083836439 2083836439 2083836439 1 +8145745969573666816 467753905 467753905 467753905 1 +8145750910080745472 1275228381 1275228381 1275228381 1 +8146288732715196416 -728015067 -728015067 -728015067 1 +8146492373537660928 1316369941 1316369941 1316369941 1 +8148211378319933440 NULL NULL NULL 0 +815 1910930064 1910930064 1910930064 1 +8150115791664340992 793047956 793047956 793047956 1 +8156018594610790400 1384071499 1384071499 1384071499 1 +8156782979767238656 -1651993300 -1651993300 -1651993300 1 +8160569434550403072 -1808960215 -1808960215 -1808960215 1 +8160662610166194176 -310584775 -310584775 -310584775 1 +8163948965373386752 1968813171 1968813171 1968813171 1 +8168742078705262592 -303747347 -303747347 -303747347 1 +8169878743136043008 1765874562 1765874562 1765874562 1 +8171188598958407680 1996235654 1996235654 1996235654 1 +8183233196086214656 1450881368 1450881368 1450881368 1 +8184799300477943808 -579916775 -579916775 -579916775 1 +8190539859890601984 1418228573 1418228573 1418228573 1 +8190967051000659968 604460005 604460005 604460005 1 +8192304692696383488 494570380 494570380 494570380 1 +8195103847607967744 15020431 15020431 15020431 1 +8199513544090730496 758926227 758926227 758926227 1 +820 746904285 -409673169 337231116 2 +8201303040648052736 -774406989 -774406989 -774406989 1 +8201491077550874624 1677197847 1677197847 1677197847 1 +8208354137450766336 1377144283 1377144283 1377144283 1 +8210813831744118784 139661585 139661585 139661585 1 +8213810702473183232 587797446 587797446 587797446 1 +8219326436390821888 2064448036 2064448036 2064448036 1 +8220104397160169472 -1274158260 -1274158260 -1274158260 1 +8221561626658881536 -1626062014 -1626062014 -1626062014 1 +8222714144797368320 -318380015 -318380015 -318380015 1 +8223732800007864320 -599396052 -599396052 -599396052 1 +823 1660088606 1660088606 1660088606 1 +8230371298967609344 1660278264 1660278264 1660278264 1 +8235179243092090880 187893585 187893585 187893585 1 +8244041599171862528 402173272 402173272 402173272 1 +8254763178969915392 658850444 658850444 658850444 1 +8268875586442256384 1271280812 1271280812 1271280812 1 +8269730157217062912 127051381 127051381 127051381 1 +8272001752345690112 3999930 3999930 3999930 1 +8279056098670198784 2133492883 2133492883 2133492883 1 +8282648443538710528 -402441123 -402441123 -402441123 1 +8283099811330506752 737149747 737149747 737149747 1 +8286706213485297664 -916495008 -916495008 -916495008 1 +8287522765741301760 -1817564067 -1817564067 -1817564067 1 +8290014929764040704 -1424027104 -1424027104 -1424027104 1 +8290944180915871744 684561551 684561551 684561551 1 +8294315622451740672 -43858652 -43858652 -43858652 1 +8295110846998233088 -1945738830 -1945738830 -1945738830 1 +83 -684022323 -684022323 -684022323 1 +8302473563519950848 -1524081566 -1524081566 -1524081566 1 +8316336224427483136 345556325 345556325 345556325 1 +8323460620425330688 -1524554771 -1524554771 -1524554771 1 +8325227661920133120 -178568841 -178568841 -178568841 1 +8332670681629106176 -314935936 -314935936 -314935936 1 +8333523087360901120 -442732016 -442732016 -442732016 1 +8337549596011102208 904604938 904604938 904604938 1 +8345435427356090368 323919214 323919214 323919214 1 +835 -1054609414 -1054609414 -1054609414 1 +8351163199364390912 391186487 391186487 391186487 1 +8362046808797306880 89366322 89366322 89366322 1 +8365058996333953024 -2043805661 -2043805661 -2043805661 1 +8367680396909404160 -1269216718 -1269216718 -1269216718 1 +8368012468775608320 -1665164127 -1665164127 -1665164127 1 +837 170870820 170870820 170870820 1 +8371939471056470016 826143442 826143442 826143442 1 +8372408423196270592 564349193 564349193 564349193 1 +8372588378498777088 1321678350 1321678350 1321678350 1 +8374321007870836736 -329336519 -329336519 -329336519 1 +8376440110255243264 1665724041 1665724041 1665724041 1 +8383159090746204160 605141554 605141554 605141554 1 +8388363436324085760 -707108808 -707108808 -707108808 1 +8391407951622815744 NULL NULL NULL 0 +8391785334471589888 -630900418 -630900418 -630900418 1 +8396433451610652672 -180280420 -180280420 -180280420 1 +8398862954249560064 669871113 669871113 669871113 1 +8407869317250220032 -1240912824 -1240912824 -1240912824 1 +8410599906334097408 -1606567895 -1606567895 -1606567895 1 +8411494452500930560 -1568646283 -1568646283 -1568646283 1 +8415171956168417280 541118710 541118710 541118710 1 +8416121695917498368 63706286 63706286 63706286 1 +8417381121663746048 1458051497 1458051497 1458051497 1 +8419958579638157312 -99916247 -99916247 -99916247 1 +8424515140664360960 1847210729 1847210729 1847210729 1 +8435912708683087872 -2081809883 -2081809883 -2081809883 1 +845 -1026746699 -1026746699 -1026746699 1 +8451612303224520704 -971203543 -971203543 -971203543 1 +8454154705460666368 -1421396891 -1421396891 -1421396891 1 +8455496814886002688 107680423 107680423 107680423 1 +8457906374051020800 106847364 106847364 106847364 1 +8461498293348065280 1636364987 1636364987 1636364987 1 +8463868417649524736 -1643714866 -1643714866 -1643714866 1 +8467976965865799680 916057807 916057807 916057807 1 +8470141334513098752 NULL NULL NULL 0 +8472429318602268672 -308225568 -308225568 -308225568 1 +8473699639908261888 -591879497 -591879497 -591879497 1 +8487573502287478784 1895282160 1895282160 1895282160 1 +8489584373231919104 1416850873 1416850873 1416850873 1 +8489735221193138176 -1124028213 -1124028213 -1124028213 1 +85 -913906252 -913906252 -913906252 1 +8501910015960735744 1579460630 1579460630 1579460630 1 +8508401924853850112 -1578387726 -1578387726 -1578387726 1 +8509508263705477120 1107757211 1107757211 1107757211 1 +8514851182589771776 415234946 415234946 415234946 1 +8514979402185596928 1902676205 1902676205 1902676205 1 +8515682078777081856 -1026458834 -1026458834 -1026458834 1 +8518454006987948032 -379174037 -379174037 -379174037 1 +8519937082746634240 -1745449855 -1745449855 -1745449855 1 +8523972434954510336 2134433675 2134433675 2134433675 1 +8524940073536954368 476858779 476858779 476858779 1 +8525336514806317056 350802495 350802495 350802495 1 +8525894870444638208 1216287232 1216287232 1216287232 1 +8532016240026279936 -1726585032 -1726585032 -1726585032 1 +8536948829863198720 1723691683 1723691683 1723691683 1 +8540237852367446016 398960205 398960205 398960205 1 +8543177193114779648 2048533360 2048533360 2048533360 1 +8547243497773457408 -534991774 -534991774 -534991774 1 +8551446856960942080 -1312782341 -1312782341 -1312782341 1 +8553195689344991232 566646177 566646177 566646177 1 +8554899472487596032 -491882534 -491882534 -491882534 1 +8555933456197828608 NULL NULL NULL 0 +8555948987770511360 107941738 107941738 107941738 1 +8557218322962644992 -1210550573 -1210550573 -1210550573 1 +8558000156325707776 -370901197 -370901197 -370901197 1 +8560526613401714688 1592467112 1592467112 1592467112 1 +8569030475428511744 1743671220 1743671220 1743671220 1 +8570983266408103936 950545385 950545385 950545385 1 +8571268359622172672 1187495452 1187495452 1187495452 1 +8573305425181941760 1583280136 1583280136 1583280136 1 +8577096957495025664 NULL NULL NULL 0 +8579974641030365184 -1545388906 -1545388906 -1545388906 1 +8583916402383601664 -733239404 -733239404 -733239404 1 +8613562211893919744 -1109134719 -1109134719 -1109134719 1 +8625937019655200768 272086526 272086526 272086526 1 +8631515095562887168 -1244527286 -1244527286 -1244527286 1 +8637720762289659904 1669519977 1669519977 1669519977 1 +8639254009546055680 477584560 477584560 477584560 1 +8641221723991433216 -1531040609 -1531040609 -1531040609 1 +8643198489997254656 -1079086534 -1079086534 -1079086534 1 +8644602243484803072 -1218592418 -1218592418 -1218592418 1 +8649296591032172544 -1744964279 -1744964279 -1744964279 1 +8652485812846567424 1372705672 1372705672 1372705672 1 +8656571350884048896 NULL NULL NULL 0 +8660248367767076864 1520375588 1520375588 1520375588 1 +8665969966920990720 1372982791 1372982791 1372982791 1 +8666178591503564800 -1565785026 -1565785026 -1565785026 1 +8677632093825916928 2040926345 2040926345 2040926345 1 +8677794924343164928 115470151 115470151 115470151 1 +868 -2133145181 -2133145181 -2133145181 1 +8682955459667951616 2009215103 2009215103 2009215103 1 +8687042963221159936 -870624802 -870624802 -870624802 1 +8688483860094599168 -273937943 -273937943 -273937943 1 +8693036785094565888 2090496825 2090496825 2090496825 1 +8697823501349609472 922553769 922553769 922553769 1 +8698055291501543424 -1755088362 -1755088362 -1755088362 1 +8708232769657815040 6526476 6526476 6526476 1 +8708845895460577280 1860113703 1860113703 1860113703 1 +871 915505006 915505006 915505006 1 +8714829359200747520 672919099 672919099 672919099 1 +8716401555586727936 -789126455 -789126455 -789126455 1 +8720504651219001344 825677248 825677248 825677248 1 +8723248113030782976 144499388 144499388 144499388 1 +873 842283345 842283345 842283345 1 +8731960288562044928 869288953 869288953 869288953 1 +8734584858442498048 -946830673 -946830673 -946830673 1 +8736061027343859712 -1974972123 -1974972123 -1974972123 1 +874 58313734 58313734 58313734 1 +8752150411997356032 -1502924486 -1502924486 -1502924486 1 +8759089349412847616 1972940844 1972940844 1972940844 1 +8759184090543857664 435426302 435426302 435426302 1 +8760285623204290560 -573787626 -573787626 -573787626 1 +8761174805938331648 1205391962 1205391962 1205391962 1 +8769199243315814400 2100377172 2100377172 2100377172 1 +8773222500321361920 217823040 217823040 217823040 1 +8775009214012456960 -213198503 -213198503 -213198503 1 +8779073705407963136 -1979314577 -1979314577 -1979314577 1 +8779711700787298304 -859535015 -859535015 -859535015 1 +878 290601612 290601612 290601612 1 +8780196485890555904 -607285491 -607285491 -607285491 1 +8782900615468302336 -1411407810 -1411407810 -1411407810 1 +8783241818558193664 -714270951 -714270951 -714270951 1 +8785153741735616512 1028092807 1028092807 1028092807 1 +8792059919353348096 -745678338 -745678338 -745678338 1 +8793387410919038976 -1058166020 -1058166020 -1058166020 1 +8795069490394882048 1366402722 1366402722 1366402722 1 +8806507556248731648 1190554937 1190554937 1190554937 1 +8808467247666241536 -1706867123 -1706867123 -1706867123 1 +8811693967537774592 1731764471 1731764471 1731764471 1 +8815398225009967104 -1701502632 -1701502632 -1701502632 1 +8817665768680906752 1550375386 1550375386 1550375386 1 +8822384228057604096 -1371840597 -1371840597 -1371840597 1 +8825059717746376704 872554087 872554087 872554087 1 +8829545979081744384 NULL NULL NULL 0 +883 -1554130090 -1554130090 -1554130090 1 +8836228556823977984 1499399891 1499399891 1499399891 1 +8837420822750314496 2052773366 2052773366 2052773366 1 +8849475396952514560 718692886 718692886 718692886 1 +8850055384477401088 1503176016 1503176016 1503176016 1 +8853989376829833216 -1505397109 -1505397109 -1505397109 1 +8854495099223375872 2065408093 2065408093 2065408093 1 +8854677881758162944 1883400319 1883400319 1883400319 1 +8854715632851345408 1301997393 1301997393 1301997393 1 +8856674723376668672 -4943292 -4943292 -4943292 1 +8868529429494071296 1830870769 1830870769 1830870769 1 +8871707618793996288 -677778959 -677778959 -677778959 1 +8875745082589929472 -1460613213 -1460613213 -1460613213 1 +888 1012696613 1012696613 1012696613 1 +8895174927321243648 -522450861 -522450861 -522450861 1 +8896237972875370496 1540680149 1540680149 1540680149 1 +8897901899039473664 -535056977 -535056977 -535056977 1 +8899122608190930944 -2146432765 -2146432765 -2146432765 1 +8900180888218329088 -1058356124 -1058356124 -1058356124 1 +8900351886974279680 1000106109 1000106109 1000106109 1 +8900545829211299840 352214248 352214248 352214248 1 +8905330479248064512 NULL NULL NULL 0 +8910706980937261056 1166237779 1166237779 1166237779 1 +8920344895701393408 -1126628450 -1126628450 -1126628450 1 +8920533610804609024 1739911574 1739911574 1739911574 1 +8927691194719174656 -917062754 -917062754 -917062754 1 +8928133990107881472 -1511162508 -1511162508 -1511162508 1 +8935252708196999168 1603612975 1603612975 1603612975 1 +8936639033158410240 -1305139473 -1305139473 -1305139473 1 +8939431770838810624 -934008333 -934008333 -934008333 1 +8945004737083555840 252169185 252169185 252169185 1 +8945302550165004288 1117805438 1117805438 1117805438 1 +8962097525980225536 -329695030 -329695030 -329695030 1 +8972161729142095872 1709983738 1709983738 1709983738 1 +8979012655944220672 -120692484 -120692484 -120692484 1 +898 338805871 -234278308 104527563 2 +8983857919580209152 1273798925 1273798925 1273798925 1 +8983912573761167360 NULL NULL NULL 0 +8984935029383389184 -1565671389 -1565671389 -1565671389 1 +8987827141270880256 -1024500955 -1024500955 -1024500955 1 +8991071342495531008 -574475259 -574475259 -574475259 1 +8991442360387584000 2081243058 2081243058 2081243058 1 +8994608999945125888 -839512271 -839512271 -839512271 1 +8995562121346260992 -618505946 -618505946 -618505946 1 +8996824426131390464 -214166042 -214166042 -214166042 1 +9000633029632499712 -641062448 -641062448 -641062448 1 +9001907486943993856 -1974257754 -1974257754 -1974257754 1 +9005866015985713152 652118640 652118640 652118640 1 +9016280522993975296 388707554 388707554 388707554 1 +9020143715350814720 NULL NULL NULL 0 +9023663198045544448 1145627305 1145627305 1145627305 1 +9030480306789818368 -758973175 -758973175 -758973175 1 +9038087402564657152 NULL NULL NULL 0 +9040958359122640896 -1635301453 -1635301453 -1635301453 1 +9043089884440068096 -1527024213 -1527024213 -1527024213 1 +9048002942653710336 -1079231269 -1079231269 -1079231269 1 +9048297564833079296 -1534307678 -1534307678 -1534307678 1 +9050032047355125760 -1240048334 -1240048334 -1240048334 1 +9053187076403060736 1075444504 1075444504 1075444504 1 +9054887854393950208 -1517536924 -1517536924 -1517536924 1 +9062227900376203264 1260101584 1260101584 1260101584 1 +9064847977742032896 -1849091666 -1849091666 -1849091666 1 +9067985867711291392 43672187 43672187 43672187 1 +9073672806863790080 -2144241640 -2144241640 -2144241640 1 +9075404705968840704 712816880 712816880 712816880 1 +9078604269481148416 -298221893 -298221893 -298221893 1 +908 266601601 266601601 266601601 1 +9083076230151864320 2111462911 2111462911 2111462911 1 +9083704659251798016 -1359838019 -1359838019 -1359838019 1 +9084402694981533696 NULL NULL NULL 0 +9085381906890203136 -240529113 -240529113 -240529113 1 +9085434340468473856 76381404 76381404 76381404 1 +9086905513121890304 1796013407 1796013407 1796013407 1 +9089435102788009984 2102440065 2102440065 2102440065 1 +9091082386452684800 748185058 748185058 748185058 1 +9091085792947666944 254921167 254921167 254921167 1 +9094945190752903168 2126491387 2126491387 2126491387 1 +9096395849845194752 100270148 100270148 100270148 1 +91 -1288198020 -1288198020 -1288198020 1 +9104574294205636608 1257621270 1257621270 1257621270 1 +9107991000536498176 -847235873 -847235873 -847235873 1 +9112400579327483904 1111985530 1111985530 1111985530 1 +9114850402293882880 1571267481 1571267481 1571267481 1 +9116137265342169088 -236700442 -236700442 -236700442 1 +9117063974299148288 -297664578 -297664578 -297664578 1 +9119046173224370176 1604076720 1604076720 1604076720 1 +9123116008004288512 1882932986 1882932986 1882932986 1 +913 1845797092 1845797092 1845797092 1 +9131533983989358592 -1234163924 -1234163924 -1234163924 1 +9132009829414584320 -1856034030 -1856034030 -1856034030 1 +9136234417125007360 NULL NULL NULL 0 +9136548192574529536 1121512594 1121512594 1121512594 1 +9139805788041134080 881396599 881396599 881396599 1 +914 -1257859205 -1257859205 -1257859205 1 +9148071980848742400 1370723240 1370723240 1370723240 1 +9149216169284091904 -694520014 -694520014 -694520014 1 +9165199002069458944 430686478 430686478 430686478 1 +9169248521377374208 1566958573 1566958573 1566958573 1 +917 -2076460151 -2076460151 -2076460151 1 +9174894805640142848 1336842978 1336842978 1336842978 1 +918 1359437295 1359437295 1359437295 1 +9180098147855769600 1950882901 1950882901 1950882901 1 +9182828596851990528 -1012329052 -1012329052 -1012329052 1 +9185458640237641728 -1011125931 -1011125931 -1011125931 1 +9185952983951343616 889733679 889733679 889733679 1 +9188173682239275008 -1248781172 -1248781172 -1248781172 1 +919 -357680544 -357680544 -357680544 1 +9190466190353661952 1918230406 1918230406 1918230406 1 +9191943992860327936 -595769210 -595769210 -595769210 1 +9194388393453060096 1002519329 1002519329 1002519329 1 +9199741683232399360 -1096771844 -1096771844 -1096771844 1 +9207107990561972224 -765190882 -765190882 -765190882 1 +9207927479837319168 2066707767 2066707767 2066707767 1 +9209153648361848832 471464395 471464395 471464395 1 +921 1238986437 1238986437 1238986437 1 +9211455920344088576 166320811 166320811 166320811 1 +922 932774185 932774185 932774185 1 +923 -1506324615 -1506324615 -1506324615 1 +927 1044196568 1044196568 1044196568 1 +928 413090363 413090363 413090363 1 +939 -982238309 -982238309 -982238309 1 +94 NULL NULL NULL 0 +945 219415594 219415594 219415594 1 +947 -896274896 -896274896 -896274896 1 +950 -1541281934 -2065080832 -3606362766 2 +958 NULL NULL NULL 0 +961 1805139501 1805139501 1805139501 1 +965 1336951982 1336951982 1336951982 1 +967 -1240208945 -1240208945 -1240208945 1 +976 -1563676282 -1563676282 -1563676282 1 +979 1022214896 1022214896 1022214896 1 +982 -835198551 -835198551 -835198551 1 +987 1807877618 1807877618 1807877618 1 +997 -742707249 -742707249 -742707249 1 +999 -346607939 -346607939 -346607939 1 +NULL 2142592987 -2069439395 -9784926725 80 diff --git ql/src/test/results/clientpositive/tez/vector_groupby5.q.out ql/src/test/results/clientpositive/tez/vector_groupby5.q.out new file mode 100644 index 0000000..c3bcb49 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby5.q.out @@ -0,0 +1,2029 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint) + outputColumnNames: _col0 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col0), min(_col0), sum(_col0), count(_col0) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: bigint), _col2 (type: bigint), _col3 (type: bigint), _col4 (type: bigint) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), min(VALUE._col1), sum(VALUE._col2), count(VALUE._col3) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 -6917607783359897600 -6917607783359897600 -6917607783359897600 1 +-6919476845891313664 -6919476845891313664 -6919476845891313664 -6919476845891313664 1 +-6920172215209426944 -6920172215209426944 -6920172215209426944 -6920172215209426944 1 +-6921654334727036928 -6921654334727036928 -6921654334727036928 -6921654334727036928 1 +-6933565857643814912 -6933565857643814912 -6933565857643814912 -6933565857643814912 1 +-6934304742087655424 -6934304742087655424 -6934304742087655424 -6934304742087655424 1 +-6935038507792801792 -6935038507792801792 -6935038507792801792 -6935038507792801792 1 +-6935548339131138048 -6935548339131138048 -6935548339131138048 -6935548339131138048 1 +-6938706403992854528 -6938706403992854528 -6938706403992854528 -6938706403992854528 1 +-6941777546186579968 -6941777546186579968 -6941777546186579968 -6941777546186579968 1 +-6947955278050181120 -6947955278050181120 -6947955278050181120 -6947955278050181120 1 +-6951350560260784128 -6951350560260784128 -6951350560260784128 -6951350560260784128 1 +-6957946688477274112 -6957946688477274112 -6957946688477274112 -6957946688477274112 1 +-6960947572095770624 -6960947572095770624 -6960947572095770624 -6960947572095770624 1 +-6962271229404348416 -6962271229404348416 -6962271229404348416 -6962271229404348416 1 +-6962292590214234112 -6962292590214234112 -6962292590214234112 -6962292590214234112 1 +-6968771079156654080 -6968771079156654080 -6968771079156654080 -6968771079156654080 1 +-6968892545529896960 -6968892545529896960 -6968892545529896960 -6968892545529896960 1 +-6970396058557005824 -6970396058557005824 -6970396058557005824 -6970396058557005824 1 +-6974654664348033024 -6974654664348033024 -6974654664348033024 -6974654664348033024 1 +-6975459232300236800 -6975459232300236800 -6975459232300236800 -6975459232300236800 1 +-6986178228432322560 -6986178228432322560 -6986178228432322560 -6986178228432322560 1 +-6988811476286873600 -6988811476286873600 -6988811476286873600 -6988811476286873600 1 +-6988970700649168896 -6988970700649168896 -6988970700649168896 -6988970700649168896 1 +-6992217501957169152 -6992217501957169152 -6992217501957169152 -6992217501957169152 1 +-6997233584896229376 -6997233584896229376 -6997233584896229376 -6997233584896229376 1 +-7000925438663041024 -7000925438663041024 -7000925438663041024 -7000925438663041024 1 +-7003696402314215424 -7003696402314215424 -7003696402314215424 -7003696402314215424 1 +-7011425384222244864 -7011425384222244864 -7011425384222244864 -7011425384222244864 1 +-7017212700635545600 -7017212700635545600 -7017212700635545600 -7017212700635545600 1 +-7020852530219171840 -7020852530219171840 -7020852530219171840 -7020852530219171840 1 +-7030489936116252672 -7030489936116252672 -7030489936116252672 -7030489936116252672 1 +-7035132060308643840 -7035132060308643840 -7035132060308643840 -7035132060308643840 1 +-7036607470351654912 -7036607470351654912 -7036607470351654912 -7036607470351654912 1 +-7037375807670501376 -7037375807670501376 -7037375807670501376 -7037375807670501376 1 +-7037638331316469760 -7037638331316469760 -7037638331316469760 -7037638331316469760 1 +-7038455462786334720 -7038455462786334720 -7038455462786334720 -7038455462786334720 1 +-7040248820505149440 -7040248820505149440 -7040248820505149440 -7040248820505149440 1 +-7041362811802148864 -7041362811802148864 -7041362811802148864 -7041362811802148864 1 +-7042183597114081280 -7042183597114081280 -7042183597114081280 -7042183597114081280 1 +-7046180371529351168 -7046180371529351168 -7046180371529351168 -7046180371529351168 1 +-7049618574399692800 -7049618574399692800 -7049618574399692800 -7049618574399692800 1 +-7052619594823221248 -7052619594823221248 -7052619594823221248 -7052619594823221248 1 +-7055619148037554176 -7055619148037554176 -7055619148037554176 -7055619148037554176 1 +-7055760785575665664 -7055760785575665664 -7055760785575665664 -7055760785575665664 1 +-7057750467944931328 -7057750467944931328 -7057750467944931328 -7057750467944931328 1 +-7058986555327307776 -7058986555327307776 -7058986555327307776 -7058986555327307776 1 +-7063777488249085952 -7063777488249085952 -7063777488249085952 -7063777488249085952 1 +-7078068944081002496 -7078068944081002496 -7078068944081002496 -7078068944081002496 1 +-7079898537463537664 -7079898537463537664 -7079898537463537664 -7079898537463537664 1 +-7081500255163727872 -7081500255163727872 -7081500255163727872 -7081500255163727872 1 +-7083646746411720704 -7083646746411720704 -7083646746411720704 -7083646746411720704 1 +-7085247548404178944 -7085247548404178944 -7085247548404178944 -7085247548404178944 1 +-7093825013581979648 -7093825013581979648 -7093825013581979648 -7093825013581979648 1 +-7094189393339678720 -7094189393339678720 -7094189393339678720 -7094189393339678720 1 +-7094827141662539776 -7094827141662539776 -7094827141662539776 -7094827141662539776 1 +-7104310188119834624 -7104310188119834624 -7104310188119834624 -7104310188119834624 1 +-7106210529681350656 -7106210529681350656 -7106210529681350656 -7106210529681350656 1 +-7109790267244814336 -7109790267244814336 -7109790267244814336 -7109790267244814336 1 +-7115054815375073280 -7115054815375073280 -7115054815375073280 -7115054815375073280 1 +-7120456708338688000 -7120456708338688000 -7120456708338688000 -7120456708338688000 1 +-7127548949860818944 -7127548949860818944 -7127548949860818944 -7127548949860818944 1 +-7138415011665043456 -7138415011665043456 -7138415011665043456 -7138415011665043456 1 +-7139677575412686848 -7139677575412686848 -7139677575412686848 -7139677575412686848 1 +-7140008543769042944 -7140008543769042944 -7140008543769042944 -7140008543769042944 1 +-7144791190333546496 -7144791190333546496 -7144791190333546496 -7144791190333546496 1 +-7145585429014888448 -7145585429014888448 -7145585429014888448 -7145585429014888448 1 +-7147490721376591872 -7147490721376591872 -7147490721376591872 -7147490721376591872 1 +-7152177800841502720 -7152177800841502720 -7152177800841502720 -7152177800841502720 1 +-7155539549555105792 -7155539549555105792 -7155539549555105792 -7155539549555105792 1 +-7158472098920390656 -7158472098920390656 -7158472098920390656 -7158472098920390656 1 +-7159700138947862528 -7159700138947862528 -7159700138947862528 -7159700138947862528 1 +-7161165959057334272 -7161165959057334272 -7161165959057334272 -7161165959057334272 1 +-7162299524557471744 -7162299524557471744 -7162299524557471744 -7162299524557471744 1 +-7172594404186693632 -7172594404186693632 -7172594404186693632 -7172594404186693632 1 +-7185369278665605120 -7185369278665605120 -7185369278665605120 -7185369278665605120 1 +-7192529627893858304 -7192529627893858304 -7192529627893858304 -7192529627893858304 1 +-7194281951646187520 -7194281951646187520 -7194281951646187520 -7194281951646187520 1 +-7195217207163166720 -7195217207163166720 -7195217207163166720 -7195217207163166720 1 +-7198372044947275776 -7198372044947275776 -7198372044947275776 -7198372044947275776 1 +-7199983995864711168 -7199983995864711168 -7199983995864711168 -7199983995864711168 1 +-7201085131997011968 -7201085131997011968 -7201085131997011968 -7201085131997011968 1 +-7209060152494817280 -7209060152494817280 -7209060152494817280 -7209060152494817280 1 +-7213775605408178176 -7213775605408178176 -7213775605408178176 -7213775605408178176 1 +-7220731681653604352 -7220731681653604352 -7220731681653604352 -7220731681653604352 1 +-7221474017515347968 -7221474017515347968 -7221474017515347968 -7221474017515347968 1 +-7228589258642194432 -7228589258642194432 -7228589258642194432 -7228589258642194432 1 +-7240213957902663680 -7240213957902663680 -7240213957902663680 -7240213957902663680 1 +-7242345057866285056 -7242345057866285056 -7242345057866285056 -7242345057866285056 1 +-7245872320493322240 -7245872320493322240 -7245872320493322240 -7245872320493322240 1 +-7246123871306244096 -7246123871306244096 -7246123871306244096 -7246123871306244096 1 +-7255010240787030016 -7255010240787030016 -7255010240787030016 -7255010240787030016 1 +-7255686273677328384 -7255686273677328384 -7255686273677328384 -7255686273677328384 1 +-7262049693594943488 -7262049693594943488 -7262049693594943488 -7262049693594943488 1 +-7262384251828518912 -7262384251828518912 -7262384251828518912 -7262384251828518912 1 +-7262798781688651776 -7262798781688651776 -7262798781688651776 -7262798781688651776 1 +-7263060340185194496 -7263060340185194496 -7263060340185194496 -7263060340185194496 1 +-7265998318110711808 -7265998318110711808 -7265998318110711808 -7265998318110711808 1 +-7266719102957125632 -7266719102957125632 -7266719102957125632 -7266719102957125632 1 +-7270034223527993344 -7270034223527993344 -7270034223527993344 -7270034223527993344 1 +-7273590251991162880 -7273590251991162880 -7273590251991162880 -7273590251991162880 1 +-7273694358642851840 -7273694358642851840 -7273694358642851840 -7273694358642851840 1 +-7276111129363046400 -7276111129363046400 -7276111129363046400 -7276111129363046400 1 +-7287583262310350848 -7287583262310350848 -7287583262310350848 -7287583262310350848 1 +-7292078334519894016 -7292078334519894016 -7292078334519894016 -7292078334519894016 1 +-7296096276653391872 -7296096276653391872 -7296096276653391872 -7296096276653391872 1 +-7303847963918393344 -7303847963918393344 -7303847963918393344 -7303847963918393344 1 +-7319315187617587200 -7319315187617587200 -7319315187617587200 -7319315187617587200 1 +-7326863346317598720 -7326863346317598720 -7326863346317598720 -7326863346317598720 1 +-7328087811698909184 -7328087811698909184 -7328087811698909184 -7328087811698909184 1 +-7329767178250018816 -7329767178250018816 -7329767178250018816 -7329767178250018816 1 +-7329807949048193024 -7329807949048193024 -7329807949048193024 -7329807949048193024 1 +-7330203470474985472 -7330203470474985472 -7330203470474985472 -7330203470474985472 1 +-7330413050756235264 -7330413050756235264 -7330413050756235264 -7330413050756235264 1 +-7333278178640953344 -7333278178640953344 -7333278178640953344 -7333278178640953344 1 +-7333362172439035904 -7333362172439035904 -7333362172439035904 -7333362172439035904 1 +-7340231535789727744 -7340231535789727744 -7340231535789727744 -7340231535789727744 1 +-7344146703223496704 -7344146703223496704 -7344146703223496704 -7344146703223496704 1 +-7344947507044466688 -7344947507044466688 -7344947507044466688 -7344947507044466688 1 +-7345562788132315136 -7345562788132315136 -7345562788132315136 -7345562788132315136 1 +-7356685674003021824 -7356685674003021824 -7356685674003021824 -7356685674003021824 1 +-7357888618985873408 -7357888618985873408 -7357888618985873408 -7357888618985873408 1 +-7362189611124563968 -7362189611124563968 -7362189611124563968 -7362189611124563968 1 +-7366430883634929664 -7366430883634929664 -7366430883634929664 -7366430883634929664 1 +-7378096180613840896 -7378096180613840896 -7378096180613840896 -7378096180613840896 1 +-7380731416973295616 -7380731416973295616 -7380731416973295616 -7380731416973295616 1 +-7395343938785738752 -7395343938785738752 -7395343938785738752 -7395343938785738752 1 +-7395553021620731904 -7395553021620731904 -7395553021620731904 -7395553021620731904 1 +-7399631791131074560 -7399631791131074560 -7399631791131074560 -7399631791131074560 1 +-7404052043914526720 -7404052043914526720 -7404052043914526720 -7404052043914526720 1 +-7404057145074712576 -7404057145074712576 -7404057145074712576 -7404057145074712576 1 +-7409317158045442048 -7409317158045442048 -7409317158045442048 -7409317158045442048 1 +-7409653086454030336 -7409653086454030336 -7409653086454030336 -7409653086454030336 1 +-7412431471807283200 -7412431471807283200 -7412431471807283200 -7412431471807283200 1 +-7413317118463164416 -7413317118463164416 -7413317118463164416 -7413317118463164416 1 +-7419068456205385728 -7419068456205385728 -7419068456205385728 -7419068456205385728 1 +-7420448501073051648 -7420448501073051648 -7420448501073051648 -7420448501073051648 1 +-7425160895830573056 -7425160895830573056 -7425160895830573056 -7425160895830573056 1 +-7429331808102899712 -7429331808102899712 -7429331808102899712 -7429331808102899712 1 +-7433265617153343488 -7433265617153343488 -7433265617153343488 -7433265617153343488 1 +-7442593976514420736 -7442593976514420736 -7442593976514420736 -7442593976514420736 1 +-7444070205513138176 -7444070205513138176 -7444070205513138176 -7444070205513138176 1 +-7451660755269853184 -7451660755269853184 -7451660755269853184 -7451660755269853184 1 +-7453525026342617088 -7453525026342617088 -7453525026342617088 -7453525026342617088 1 +-7455898404374921216 -7455898404374921216 -7455898404374921216 -7455898404374921216 1 +-7456869587112255488 -7456869587112255488 -7456869587112255488 -7456869587112255488 1 +-7461750143936897024 -7461750143936897024 -7461750143936897024 -7461750143936897024 1 +-7464270453557993472 -7464270453557993472 -7464270453557993472 -7464270453557993472 1 +-7469660864676585472 -7469660864676585472 -7469660864676585472 -7469660864676585472 1 +-7470307155642245120 -7470307155642245120 -7470307155642245120 -7470307155642245120 1 +-7476082621253402624 -7476082621253402624 -7476082621253402624 -7476082621253402624 1 +-7483435388852559872 -7483435388852559872 -7483435388852559872 -7483435388852559872 1 +-7488345684795342848 -7488345684795342848 -7488345684795342848 -7488345684795342848 1 +-7488415863027367936 -7488415863027367936 -7488415863027367936 -7488415863027367936 1 +-7494411162675691520 -7494411162675691520 -7494411162675691520 -7494411162675691520 1 +-7496839341561954304 -7496839341561954304 -7496839341561954304 -7496839341561954304 1 +-7497303453253402624 -7497303453253402624 -7497303453253402624 -7497303453253402624 1 +-7500200359698907136 -7500200359698907136 -7500200359698907136 -7500200359698907136 1 +-7501803640821456896 -7501803640821456896 -7501803640821456896 -7501803640821456896 1 +-7506254246954500096 -7506254246954500096 -7506254246954500096 -7506254246954500096 1 +-7507424948896415744 -7507424948896415744 -7507424948896415744 -7507424948896415744 1 +-7507578199583694848 -7507578199583694848 -7507578199583694848 -7507578199583694848 1 +-7510418793070075904 -7510418793070075904 -7510418793070075904 -7510418793070075904 1 +-7511202710200885248 -7511202710200885248 -7511202710200885248 -7511202710200885248 1 +-7511952204985049088 -7511952204985049088 -7511952204985049088 -7511952204985049088 1 +-7512289590991544320 -7512289590991544320 -7512289590991544320 -7512289590991544320 1 +-7512297136103800832 -7512297136103800832 -7512297136103800832 -7512297136103800832 1 +-7515996202498473984 -7515996202498473984 -7515996202498473984 -7515996202498473984 1 +-7524170566881329152 -7524170566881329152 -7524170566881329152 -7524170566881329152 1 +-7526793959592140800 -7526793959592140800 -7526793959592140800 -7526793959592140800 1 +-7528526815026692096 -7528526815026692096 -7528526815026692096 -7528526815026692096 1 +-7532751268425261056 -7532751268425261056 -7532751268425261056 -7532751268425261056 1 +-7535857766791577600 -7535857766791577600 -7535857766791577600 -7535857766791577600 1 +-7535958203887706112 -7535958203887706112 -7535958203887706112 -7535958203887706112 1 +-7536330682873937920 -7536330682873937920 -7536330682873937920 -7536330682873937920 1 +-7540104552219860992 -7540104552219860992 -7540104552219860992 -7540104552219860992 1 +-7541860097718902784 -7541860097718902784 -7541860097718902784 -7541860097718902784 1 +-7542857121910046720 -7542857121910046720 -7542857121910046720 -7542857121910046720 1 +-7547245548870025216 -7547245548870025216 -7547245548870025216 -7547245548870025216 1 +-7547432761381339136 -7547432761381339136 -7547432761381339136 -7547432761381339136 1 +-7551394356730339328 -7551394356730339328 -7551394356730339328 -7551394356730339328 1 +-7557017910095650816 -7557017910095650816 -7557017910095650816 -7557017910095650816 1 +-7558524160894427136 -7558524160894427136 -7558524160894427136 -7558524160894427136 1 +-7571293705217687552 -7571293705217687552 -7571293705217687552 -7571293705217687552 1 +-7571957778022178816 -7571957778022178816 -7571957778022178816 -7571957778022178816 1 +-7572262898020278272 -7572262898020278272 -7572262898020278272 -7572262898020278272 1 +-7572962089372991488 -7572962089372991488 -7572962089372991488 -7572962089372991488 1 +-7576194692683563008 -7576194692683563008 -7576194692683563008 -7576194692683563008 1 +-7593363318079610880 -7593363318079610880 -7593363318079610880 -7593363318079610880 1 +-7594824008626372608 -7594824008626372608 -7594824008626372608 -7594824008626372608 1 +-7598782894648565760 -7598782894648565760 -7598782894648565760 -7598782894648565760 1 +-7600138468036386816 -7600138468036386816 -7600138468036386816 -7600138468036386816 1 +-7603467428164009984 -7603467428164009984 -7603467428164009984 -7603467428164009984 1 +-7603569103205916672 -7603569103205916672 -7603569103205916672 -7603569103205916672 1 +-7610137349734883328 -7610137349734883328 -7610137349734883328 -7610137349734883328 1 +-7611584069753552896 -7611584069753552896 -7611584069753552896 -7611584069753552896 1 +-7612455481940246528 -7612455481940246528 -7612455481940246528 -7612455481940246528 1 +-7612466483992051712 -7612466483992051712 -7612466483992051712 -7612466483992051712 1 +-7616522969329262592 -7616522969329262592 -7616522969329262592 -7616522969329262592 1 +-7617860842651017216 -7617860842651017216 -7617860842651017216 -7617860842651017216 1 +-7623047151287754752 -7623047151287754752 -7623047151287754752 -7623047151287754752 1 +-7623359796281999360 -7623359796281999360 -7623359796281999360 -7623359796281999360 1 +-7623405558242500608 -7623405558242500608 -7623405558242500608 -7623405558242500608 1 +-7624057992767782912 -7624057992767782912 -7624057992767782912 -7624057992767782912 1 +-7629401308029976576 -7629401308029976576 -7629401308029976576 -7629401308029976576 1 +-7637494527844343808 -7637494527844343808 -7637494527844343808 -7637494527844343808 1 +-7637755520917741568 -7637755520917741568 -7637755520917741568 -7637755520917741568 1 +-7642381493746483200 -7642381493746483200 -7642381493746483200 -7642381493746483200 1 +-7647020450676146176 -7647020450676146176 -7647020450676146176 -7647020450676146176 1 +-7661192563533062144 -7661192563533062144 -7661192563533062144 -7661192563533062144 1 +-7661250850555633664 -7661250850555633664 -7661250850555633664 -7661250850555633664 1 +-7663293054873812992 -7663293054873812992 -7663293054873812992 -7663293054873812992 1 +-7665186441284968448 -7665186441284968448 -7665186441284968448 -7665186441284968448 1 +-7668388017287020544 -7668388017287020544 -7668388017287020544 -7668388017287020544 1 +-7669169138124275712 -7669169138124275712 -7669169138124275712 -7669169138124275712 1 +-7673901622181953536 -7673901622181953536 -7673901622181953536 -7673901622181953536 1 +-7679894005808693248 -7679894005808693248 -7679894005808693248 -7679894005808693248 1 +-7686220526274502656 -7686220526274502656 -7686220526274502656 -7686220526274502656 1 +-7687052294777208832 -7687052294777208832 -7687052294777208832 -7687052294777208832 1 +-7692192232238678016 -7692192232238678016 -7692192232238678016 -7692192232238678016 1 +-7695491171376291840 -7695491171376291840 -7695491171376291840 -7695491171376291840 1 +-7700203302632210432 -7700203302632210432 -7700203302632210432 -7700203302632210432 1 +-7703540456272994304 -7703540456272994304 -7703540456272994304 -7703540456272994304 1 +-7707242953271500800 -7707242953271500800 -7707242953271500800 -7707242953271500800 1 +-7707867749256445952 -7707867749256445952 -7707867749256445952 -7707867749256445952 1 +-7708932208121225216 -7708932208121225216 -7708932208121225216 -7708932208121225216 1 +-7709958788604936192 -7709958788604936192 -7709958788604936192 -7709958788604936192 1 +-7712425776235274240 -7712425776235274240 -7712425776235274240 -7712425776235274240 1 +-7720966287634112512 -7720966287634112512 -7720966287634112512 -7720966287634112512 1 +-7739424919198187520 -7739424919198187520 -7739424919198187520 -7739424919198187520 1 +-7744462446680375296 -7744462446680375296 -7744462446680375296 -7744462446680375296 1 +-7751265769984491520 -7751265769984491520 -7751265769984491520 -7751265769984491520 1 +-7751427073017544704 -7751427073017544704 -7751427073017544704 -7751427073017544704 1 +-7753051494275432448 -7753051494275432448 -7753051494275432448 -7753051494275432448 1 +-7759238919361888256 -7759238919361888256 -7759238919361888256 -7759238919361888256 1 +-7759425383684849664 -7759425383684849664 -7759425383684849664 -7759425383684849664 1 +-7772064021830574080 -7772064021830574080 -7772064021830574080 -7772064021830574080 1 +-7773957003968675840 -7773957003968675840 -7773957003968675840 -7773957003968675840 1 +-7777884099756122112 -7777884099756122112 -7777884099756122112 -7777884099756122112 1 +-7778829032042790912 -7778829032042790912 -7778829032042790912 -7778829032042790912 1 +-7779270198785875968 -7779270198785875968 -7779270198785875968 -7779270198785875968 1 +-7782344916178796544 -7782344916178796544 -7782344916178796544 -7782344916178796544 1 +-7784419454650843136 -7784419454650843136 -7784419454650843136 -7784419454650843136 1 +-7792903881635938304 -7792903881635938304 -7792903881635938304 -7792903881635938304 1 +-7793447076762345472 -7793447076762345472 -7793447076762345472 -7793447076762345472 1 +-7797149520019062784 -7797149520019062784 -7797149520019062784 -7797149520019062784 1 +-7797151404935618560 -7797151404935618560 -7797151404935618560 -7797151404935618560 1 +-7800879252150779904 -7800879252150779904 -7800879252150779904 -7800879252150779904 1 +-7802538500225777664 -7802538500225777664 -7802538500225777664 -7802538500225777664 1 +-7804116532814151680 -7804116532814151680 -7804116532814151680 -7804116532814151680 1 +-7805985795815342080 -7805985795815342080 -7805985795815342080 -7805985795815342080 1 +-7811060170911375360 -7811060170911375360 -7811060170911375360 -7811060170911375360 1 +-7818454479651135488 -7818454479651135488 -7818454479651135488 -7818454479651135488 1 +-7819437864839495680 -7819437864839495680 -7819437864839495680 -7819437864839495680 1 +-7822452149325094912 -7822452149325094912 -7822452149325094912 -7822452149325094912 1 +-7824788571789279232 -7824788571789279232 -7824788571789279232 -7824788571789279232 1 +-7827420207675105280 -7827420207675105280 -7827420207675105280 -7827420207675105280 1 +-7831320202242228224 -7831320202242228224 -7831320202242228224 -7831320202242228224 1 +-7831595638727565312 -7831595638727565312 -7831595638727565312 -7831595638727565312 1 +-7833618000492109824 -7833618000492109824 -7833618000492109824 -7833618000492109824 1 +-7835907977757245440 -7835907977757245440 -7835907977757245440 -7835907977757245440 1 +-7838598833900584960 -7838598833900584960 -7838598833900584960 -7838598833900584960 1 +-7840338174858199040 -7840338174858199040 -7840338174858199040 -7840338174858199040 1 +-7845896959112658944 -7845896959112658944 -7845896959112658944 -7845896959112658944 1 +-7848043121524228096 -7848043121524228096 -7848043121524228096 -7848043121524228096 1 +-7849504559236210688 -7849504559236210688 -7849504559236210688 -7849504559236210688 1 +-7858505678035951616 -7858505678035951616 -7858505678035951616 -7858505678035951616 1 +-7866079955473989632 -7866079955473989632 -7866079955473989632 -7866079955473989632 1 +-7867219225874571264 -7867219225874571264 -7867219225874571264 -7867219225874571264 1 +-7868306678534193152 -7868306678534193152 -7868306678534193152 -7868306678534193152 1 +-7873753603299540992 -7873753603299540992 -7873753603299540992 -7873753603299540992 1 +-7875953567586451456 -7875953567586451456 -7875953567586451456 -7875953567586451456 1 +-7877598807023386624 -7877598807023386624 -7877598807023386624 -7877598807023386624 1 +-7878145001776152576 -7878145001776152576 -7878145001776152576 -7878145001776152576 1 +-7879864376629567488 -7879864376629567488 -7879864376629567488 -7879864376629567488 1 +-7881262505761710080 -7881262505761710080 -7881262505761710080 -7881262505761710080 1 +-7881351200983613440 -7881351200983613440 -7881351200983613440 -7881351200983613440 1 +-7883252982752665600 -7883252982752665600 -7883252982752665600 -7883252982752665600 1 +-7884460946615984128 -7884460946615984128 -7884460946615984128 -7884460946615984128 1 +-7888051992910274560 -7888051992910274560 -7888051992910274560 -7888051992910274560 1 +-7892780594910871552 -7892780594910871552 -7892780594910871552 -7892780594910871552 1 +-7893577088764174336 -7893577088764174336 -7893577088764174336 -7893577088764174336 1 +-7894382303337832448 -7894382303337832448 -7894382303337832448 -7894382303337832448 1 +-7895991410072928256 -7895991410072928256 -7895991410072928256 -7895991410072928256 1 +-7902517224300036096 -7902517224300036096 -7902517224300036096 -7902517224300036096 1 +-7903158849011843072 -7903158849011843072 -7903158849011843072 -7903158849011843072 1 +-7904188195431661568 -7904188195431661568 -7904188195431661568 -7904188195431661568 1 +-7907355742053883904 -7907355742053883904 -7907355742053883904 -7907355742053883904 1 +-7910019233726242816 -7910019233726242816 -7910019233726242816 -7910019233726242816 1 +-7911421221625077760 -7911421221625077760 -7911421221625077760 -7911421221625077760 1 +-7915999634274369536 -7915999634274369536 -7915999634274369536 -7915999634274369536 1 +-7916510129632296960 -7916510129632296960 -7916510129632296960 -7916510129632296960 1 +-7928062266382778368 -7928062266382778368 -7928062266382778368 -7928062266382778368 1 +-7928440849566146560 -7928440849566146560 -7928440849566146560 -7928440849566146560 1 +-7939634346485858304 -7939634346485858304 -7939634346485858304 -7939634346485858304 1 +-7949309059286163456 -7949309059286163456 -7949309059286163456 -7949309059286163456 1 +-7949445503604604928 -7949445503604604928 -7949445503604604928 -7949445503604604928 1 +-7953426740065312768 -7953426740065312768 -7953426740065312768 -7953426740065312768 1 +-7964801953178091520 -7964801953178091520 -7964801953178091520 -7964801953178091520 1 +-7966960765508280320 -7966960765508280320 -7966960765508280320 -7966960765508280320 1 +-7978782649203228672 -7978782649203228672 -7978782649203228672 -7978782649203228672 1 +-7989766326847807488 -7989766326847807488 -7989766326847807488 -7989766326847807488 1 +-7998947380180819968 -7998947380180819968 -7998947380180819968 -7998947380180819968 1 +-8007017894942638080 -8007017894942638080 -8007017894942638080 -8007017894942638080 1 +-8013397854633648128 -8013397854633648128 -8013397854633648128 -8013397854633648128 1 +-8016589197379289088 -8016589197379289088 -8016589197379289088 -8016589197379289088 1 +-8017791189288869888 -8017791189288869888 -8017791189288869888 -8017791189288869888 1 +-8018511948141748224 -8018511948141748224 -8018511948141748224 -8018511948141748224 1 +-8021859935185928192 -8021859935185928192 -8021859935185928192 -8021859935185928192 1 +-8022573309127000064 -8022573309127000064 -8022573309127000064 -8022573309127000064 1 +-8023708819947323392 -8023708819947323392 -8023708819947323392 -8023708819947323392 1 +-8028275725610909696 -8028275725610909696 -8028275725610909696 -8028275725610909696 1 +-8028910243475038208 -8028910243475038208 -8028910243475038208 -8028910243475038208 1 +-8030058711611629568 -8030058711611629568 -8030058711611629568 -8030058711611629568 1 +-8034414142083170304 -8034414142083170304 -8034414142083170304 -8034414142083170304 1 +-8046189486447017984 -8046189486447017984 -8046189486447017984 -8046189486447017984 1 +-8046238369820344320 -8046238369820344320 -8046238369820344320 -8046238369820344320 1 +-8047774491688255488 -8047774491688255488 -8047774491688255488 -8047774491688255488 1 +-8051395538179063808 -8051395538179063808 -8051395538179063808 -8051395538179063808 1 +-8051587217208967168 -8051587217208967168 -8051587217208967168 -8051587217208967168 1 +-8051871680800120832 -8051871680800120832 -8051871680800120832 -8051871680800120832 1 +-8054581198284668928 -8054581198284668928 -8054581198284668928 -8054581198284668928 1 +-8067243114610532352 -8067243114610532352 -8067243114610532352 -8067243114610532352 1 +-8070535484085895168 -8070535484085895168 -8070535484085895168 -8070535484085895168 1 +-8076479329071955968 -8076479329071955968 -8076479329071955968 -8076479329071955968 1 +-8082793390939193344 -8082793390939193344 -8082793390939193344 -8082793390939193344 1 +-8084716955963252736 -8084716955963252736 -8084716955963252736 -8084716955963252736 1 +-8086577583338061824 -8086577583338061824 -8086577583338061824 -8086577583338061824 1 +-8088337436168830976 -8088337436168830976 -8088337436168830976 -8088337436168830976 1 +-8099313480512716800 -8099313480512716800 -8099313480512716800 -8099313480512716800 1 +-8103788088118018048 -8103788088118018048 -8103788088118018048 -8103788088118018048 1 +-8104684579106914304 -8104684579106914304 -8104684579106914304 -8104684579106914304 1 +-8108693586698706944 -8108693586698706944 -8108693586698706944 -8108693586698706944 1 +-8115963579415650304 -8115963579415650304 -8115963579415650304 -8115963579415650304 1 +-8117838333114212352 -8117838333114212352 -8117838333114212352 -8117838333114212352 1 +-8122639684164501504 -8122639684164501504 -8122639684164501504 -8122639684164501504 1 +-8127494999848919040 -8127494999848919040 -8127494999848919040 -8127494999848919040 1 +-8131997716860526592 -8131997716860526592 -8131997716860526592 -8131997716860526592 1 +-8136227554401107968 -8136227554401107968 -8136227554401107968 -8136227554401107968 1 +-8140349174954893312 -8140349174954893312 -8140349174954893312 -8140349174954893312 1 +-8142667274351345664 -8142667274351345664 -8142667274351345664 -8142667274351345664 1 +-8147405381260345344 -8147405381260345344 -8147405381260345344 -8147405381260345344 1 +-8158011642485825536 -8158011642485825536 -8158011642485825536 -8158011642485825536 1 +-8161047750470279168 -8161047750470279168 -8161047750470279168 -8161047750470279168 1 +-8172827216441573376 -8172827216441573376 -8172827216441573376 -8172827216441573376 1 +-8182421179156905984 -8182421179156905984 -8182421179156905984 -8182421179156905984 1 +-8191825921746305024 -8191825921746305024 -8191825921746305024 -8191825921746305024 1 +-8194062064124362752 -8194062064124362752 -8194062064124362752 -8194062064124362752 1 +-8203008052020879360 -8203008052020879360 -8203008052020879360 -8203008052020879360 1 +-8203075743525806080 -8203075743525806080 -8203075743525806080 -8203075743525806080 1 +-8205148279289085952 -8205148279289085952 -8205148279289085952 -8205148279289085952 1 +-8214462866994339840 -8214462866994339840 -8214462866994339840 -8214462866994339840 1 +-8219876839318716416 -8219876839318716416 -8219876839318716416 -8219876839318716416 1 +-8232763638546694144 -8232763638546694144 -8232763638546694144 -8232763638546694144 1 +-8240034910581153792 -8240034910581153792 -8240034910581153792 -8240034910581153792 1 +-8240684139569233920 -8240684139569233920 -8240684139569233920 -8240684139569233920 1 +-8243487285852766208 -8243487285852766208 -8243487285852766208 -8243487285852766208 1 +-8244116388227104768 -8244116388227104768 -8244116388227104768 -8244116388227104768 1 +-8244657976255889408 -8244657976255889408 -8244657976255889408 -8244657976255889408 1 +-8260340354454503424 -8260340354454503424 -8260340354454503424 -8260340354454503424 1 +-8269917980278980608 -8269917980278980608 -8269917980278980608 -8269917980278980608 1 +-8270479187688816640 -8270479187688816640 -8270479187688816640 -8270479187688816640 1 +-8275337702906757120 -8275337702906757120 -8275337702906757120 -8275337702906757120 1 +-8280276629934981120 -8280276629934981120 -8280276629934981120 -8280276629934981120 1 +-8293833565967810560 -8293833565967810560 -8293833565967810560 -8293833565967810560 1 +-8297230235506343936 -8297230235506343936 -8297230235506343936 -8297230235506343936 1 +-8300526097982226432 -8300526097982226432 -8300526097982226432 -8300526097982226432 1 +-8300764106868350976 -8300764106868350976 -8300764106868350976 -8300764106868350976 1 +-8302817097848307712 -8302817097848307712 -8302817097848307712 -8302817097848307712 1 +-8317591428117274624 -8317591428117274624 -8317591428117274624 -8317591428117274624 1 +-8318886086186213376 -8318886086186213376 -8318886086186213376 -8318886086186213376 1 +-8322751250650218496 -8322751250650218496 -8322751250650218496 -8322751250650218496 1 +-8330233444291084288 -8330233444291084288 -8330233444291084288 -8330233444291084288 1 +-8335810316927213568 -8335810316927213568 -8335810316927213568 -8335810316927213568 1 +-8340523561480437760 -8340523561480437760 -8340523561480437760 -8340523561480437760 1 +-8345065519816695808 -8345065519816695808 -8345065519816695808 -8345065519816695808 1 +-8347088645602050048 -8347088645602050048 -8347088645602050048 -8347088645602050048 1 +-8357136656913686528 -8357136656913686528 -8357136656913686528 -8357136656913686528 1 +-8358130693961195520 -8358130693961195520 -8358130693961195520 -8358130693961195520 1 +-8359839265974165504 -8359839265974165504 -8359839265974165504 -8359839265974165504 1 +-8368269352975982592 -8368269352975982592 -8368269352975982592 -8368269352975982592 1 +-8368487814665895936 -8368487814665895936 -8368487814665895936 -8368487814665895936 1 +-8369487968903897088 -8369487968903897088 -8369487968903897088 -8369487968903897088 1 +-8379109122834997248 -8379109122834997248 -8379109122834997248 -8379109122834997248 1 +-8379964450833367040 -8379964450833367040 -8379964450833367040 -8379964450833367040 1 +-8384695077413412864 -8384695077413412864 -8384695077413412864 -8384695077413412864 1 +-8387347109404286976 -8387347109404286976 -8387347109404286976 -8387347109404286976 1 +-8387536830476820480 -8387536830476820480 -8387536830476820480 -8387536830476820480 1 +-8395998375405912064 -8395998375405912064 -8395998375405912064 -8395998375405912064 1 +-8400045653258444800 -8400045653258444800 -8400045653258444800 -8400045653258444800 1 +-8411282676082565120 -8411282676082565120 -8411282676082565120 -8411282676082565120 1 +-8418913260807217152 -8418913260807217152 -8418913260807217152 -8418913260807217152 1 +-8425998949410889728 -8425998949410889728 -8425998949410889728 -8425998949410889728 1 +-8426531414463545344 -8426531414463545344 -8426531414463545344 -8426531414463545344 1 +-8430283518005846016 -8430283518005846016 -8430283518005846016 -8430283518005846016 1 +-8430370933326536704 -8430370933326536704 -8430370933326536704 -8430370933326536704 1 +-8431492599012163584 -8431492599012163584 -8431492599012163584 -8431492599012163584 1 +-8438554249514491904 -8438554249514491904 -8438554249514491904 -8438554249514491904 1 +-8445801063348281344 -8445801063348281344 -8445801063348281344 -8445801063348281344 1 +-8453491903284994048 -8453491903284994048 -8453491903284994048 -8453491903284994048 1 +-8454143651040444416 -8454143651040444416 -8454143651040444416 -8454143651040444416 1 +-8465978403747037184 -8465978403747037184 -8465978403747037184 -8465978403747037184 1 +-8469607298426437632 -8469607298426437632 -8469607298426437632 -8469607298426437632 1 +-8471480409335513088 -8471480409335513088 -8471480409335513088 -8471480409335513088 1 +-8485389240529354752 -8485389240529354752 -8485389240529354752 -8485389240529354752 1 +-8488247955875618816 -8488247955875618816 -8488247955875618816 -8488247955875618816 1 +-8490382417169408000 -8490382417169408000 -8490382417169408000 -8490382417169408000 1 +-8494118409594650624 -8494118409594650624 -8494118409594650624 -8494118409594650624 1 +-8503342882470019072 -8503342882470019072 -8503342882470019072 -8503342882470019072 1 +-8503573595507761152 -8503573595507761152 -8503573595507761152 -8503573595507761152 1 +-8507279516485566464 -8507279516485566464 -8507279516485566464 -8507279516485566464 1 +-8509547439040757760 -8509547439040757760 -8509547439040757760 -8509547439040757760 1 +-8518060755719585792 -8518060755719585792 -8518060755719585792 -8518060755719585792 1 +-8518258741831680000 -8518258741831680000 -8518258741831680000 -8518258741831680000 1 +-8521578237232529408 -8521578237232529408 -8521578237232529408 -8521578237232529408 1 +-8522878384019169280 -8522878384019169280 -8522878384019169280 -8522878384019169280 1 +-8523434203900674048 -8523434203900674048 -8523434203900674048 -8523434203900674048 1 +-8525212657458348032 -8525212657458348032 -8525212657458348032 -8525212657458348032 1 +-8535957064499879936 -8535957064499879936 -8535957064499879936 -8535957064499879936 1 +-8536369662934401024 -8536369662934401024 -8536369662934401024 -8536369662934401024 1 +-8543982423727128576 -8543982423727128576 -8543982423727128576 -8543982423727128576 1 +-8544299740525461504 -8544299740525461504 -8544299740525461504 -8544299740525461504 1 +-8545239748068941824 -8545239748068941824 -8545239748068941824 -8545239748068941824 1 +-8546758906409312256 -8546758906409312256 -8546758906409312256 -8546758906409312256 1 +-8552393882631389184 -8552393882631389184 -8552393882631389184 -8552393882631389184 1 +-8555709701170552832 -8555709701170552832 -8555709701170552832 -8555709701170552832 1 +-8559008501282832384 -8559008501282832384 -8559008501282832384 -8559008501282832384 1 +-8559252110266564608 -8559252110266564608 -8559252110266564608 -8559252110266564608 1 +-8562524688907485184 -8562524688907485184 -8562524688907485184 -8562524688907485184 1 +-8566856504746352640 -8566856504746352640 -8566856504746352640 -8566856504746352640 1 +-8566940231897874432 -8566940231897874432 -8566940231897874432 -8566940231897874432 1 +-8570933074545745920 -8570933074545745920 -8570933074545745920 -8570933074545745920 1 +-8572823448513445888 -8572823448513445888 -8572823448513445888 -8572823448513445888 1 +-8572949572756774912 -8572949572756774912 -8572949572756774912 -8572949572756774912 1 +-8581765103969312768 -8581765103969312768 -8581765103969312768 -8581765103969312768 1 +-8581979259158929408 -8581979259158929408 -8581979259158929408 -8581979259158929408 1 +-8584520406368493568 -8584520406368493568 -8584520406368493568 -8584520406368493568 1 +-8585134536083660800 -8585134536083660800 -8585134536083660800 -8585134536083660800 1 +-8585966098173870080 -8585966098173870080 -8585966098173870080 -8585966098173870080 1 +-8593419958317056000 -8593419958317056000 -8593419958317056000 -8593419958317056000 1 +-8603817012434198528 -8603817012434198528 -8603817012434198528 -8603817012434198528 1 +-8604758220106014720 -8604758220106014720 -8604758220106014720 -8604758220106014720 1 +-8607195685207408640 -8607195685207408640 -8607195685207408640 -8607195685207408640 1 +-8615168537390571520 -8615168537390571520 -8615168537390571520 -8615168537390571520 1 +-8619303037130301440 -8619303037130301440 -8619303037130301440 -8619303037130301440 1 +-8623238306523824128 -8623238306523824128 -8623238306523824128 -8623238306523824128 1 +-8623965248051789824 -8623965248051789824 -8623965248051789824 -8623965248051789824 1 +-8632237187473088512 -8632237187473088512 -8632237187473088512 -8632237187473088512 1 +-8649711322250362880 -8649711322250362880 -8649711322250362880 -8649711322250362880 1 +-8651641150831362048 -8651641150831362048 -8651641150831362048 -8651641150831362048 1 +-8654433008222797824 -8654433008222797824 -8654433008222797824 -8654433008222797824 1 +-8654797319350927360 -8654797319350927360 -8654797319350927360 -8654797319350927360 1 +-8658387566611996672 -8658387566611996672 -8658387566611996672 -8658387566611996672 1 +-8659643752269242368 -8659643752269242368 -8659643752269242368 -8659643752269242368 1 +-8659692318743314432 -8659692318743314432 -8659692318743314432 -8659692318743314432 1 +-8660149447361404928 -8660149447361404928 -8660149447361404928 -8660149447361404928 1 +-8664374244449050624 -8664374244449050624 -8664374244449050624 -8664374244449050624 1 +-8664806103426252800 -8664806103426252800 -8664806103426252800 -8664806103426252800 1 +-8665218198816497664 -8665218198816497664 -8665218198816497664 -8665218198816497664 1 +-8665764757143658496 -8665764757143658496 -8665764757143658496 -8665764757143658496 1 +-8675661101615489024 -8675661101615489024 -8675661101615489024 -8675661101615489024 1 +-8675892979328212992 -8675892979328212992 -8675892979328212992 -8675892979328212992 1 +-8683802826440105984 -8683802826440105984 -8683802826440105984 -8683802826440105984 1 +-8688153842294595584 -8688153842294595584 -8688153842294595584 -8688153842294595584 1 +-8689606130068611072 -8689606130068611072 -8689606130068611072 -8689606130068611072 1 +-8694818694700048384 -8694818694700048384 -8694818694700048384 -8694818694700048384 1 +-8696162322976997376 -8696162322976997376 -8696162322976997376 -8696162322976997376 1 +-8703026916864802816 -8703026916864802816 -8703026916864802816 -8703026916864802816 1 +-8704234107608203264 -8704234107608203264 -8704234107608203264 -8704234107608203264 1 +-8705403811649355776 -8705403811649355776 -8705403811649355776 -8705403811649355776 1 +-8710298418608619520 -8710298418608619520 -8710298418608619520 -8710298418608619520 1 +-8714995808835444736 -8714995808835444736 -8714995808835444736 -8714995808835444736 1 +-8719510423723155456 -8719510423723155456 -8719510423723155456 -8719510423723155456 1 +-8730803262481580032 -8730803262481580032 -8730803262481580032 -8730803262481580032 1 +-8731068123910987776 -8731068123910987776 -8731068123910987776 -8731068123910987776 1 +-8746702976270385152 -8746702976270385152 -8746702976270385152 -8746702976270385152 1 +-8754966081778565120 -8754966081778565120 -8754966081778565120 -8754966081778565120 1 +-8754992450211692544 -8754992450211692544 -8754992450211692544 -8754992450211692544 1 +-8756989568739835904 -8756989568739835904 -8756989568739835904 -8756989568739835904 1 +-8760655406971863040 -8760655406971863040 -8760655406971863040 -8760655406971863040 1 +-8763062627136864256 -8763062627136864256 -8763062627136864256 -8763062627136864256 1 +-8768744394742235136 -8768744394742235136 -8768744394742235136 -8768744394742235136 1 +-8782213262837530624 -8782213262837530624 -8782213262837530624 -8782213262837530624 1 +-8783777723063099392 -8783777723063099392 -8783777723063099392 -8783777723063099392 1 +-8789178184387641344 -8789178184387641344 -8789178184387641344 -8789178184387641344 1 +-8797972842900307968 -8797972842900307968 -8797972842900307968 -8797972842900307968 1 +-8807361476639629312 -8807361476639629312 -8807361476639629312 -8807361476639629312 1 +-8813211231120031744 -8813211231120031744 -8813211231120031744 -8813211231120031744 1 +-8831091081349758976 -8831091081349758976 -8831091081349758976 -8831091081349758976 1 +-8832750849949892608 -8832750849949892608 -8832750849949892608 -8832750849949892608 1 +-8833019327569510400 -8833019327569510400 -8833019327569510400 -8833019327569510400 1 +-8835408234247168000 -8835408234247168000 -8835408234247168000 -8835408234247168000 1 +-8836899523028312064 -8836899523028312064 -8836899523028312064 -8836899523028312064 1 +-8843859708698583040 -8843859708698583040 -8843859708698583040 -8843859708698583040 1 +-8844949406948671488 -8844949406948671488 -8844949406948671488 -8844949406948671488 1 +-8845239510002753536 -8845239510002753536 -8845239510002753536 -8845239510002753536 1 +-8852770376039219200 -8852770376039219200 -8852770376039219200 -8852770376039219200 1 +-8853553406533894144 -8853553406533894144 -8853553406533894144 -8853553406533894144 1 +-8856151919723003904 -8856151919723003904 -8856151919723003904 -8856151919723003904 1 +-8856821118526734336 -8856821118526734336 -8856821118526734336 -8856821118526734336 1 +-8857335871148171264 -8857335871148171264 -8857335871148171264 -8857335871148171264 1 +-8858063395050110976 -8858063395050110976 -8858063395050110976 -8858063395050110976 1 +-8859107121649893376 -8859107121649893376 -8859107121649893376 -8859107121649893376 1 +-8866442231663067136 -8866442231663067136 -8866442231663067136 -8866442231663067136 1 +-8870186814744420352 -8870186814744420352 -8870186814744420352 -8870186814744420352 1 +-8870673219965001728 -8870673219965001728 -8870673219965001728 -8870673219965001728 1 +-8875546987176206336 -8875546987176206336 -8875546987176206336 -8875546987176206336 1 +-8877053610728161280 -8877053610728161280 -8877053610728161280 -8877053610728161280 1 +-8877431933441327104 -8877431933441327104 -8877431933441327104 -8877431933441327104 1 +-8879742387365429248 -8879742387365429248 -8879742387365429248 -8879742387365429248 1 +-8881446757271846912 -8881446757271846912 -8881446757271846912 -8881446757271846912 1 +-8887058200926093312 -8887058200926093312 -8887058200926093312 -8887058200926093312 1 +-8892963883085578240 -8892963883085578240 -8892963883085578240 -8892963883085578240 1 +-8896045754034978816 -8896045754034978816 -8896045754034978816 -8896045754034978816 1 +-8914039133569400832 -8914039133569400832 -8914039133569400832 -8914039133569400832 1 +-8916987977485312000 -8916987977485312000 -8916987977485312000 -8916987977485312000 1 +-8922409715403112448 -8922409715403112448 -8922409715403112448 -8922409715403112448 1 +-8923529803981905920 -8923529803981905920 -8923529803981905920 -8923529803981905920 1 +-8927968289860370432 -8927968289860370432 -8927968289860370432 -8927968289860370432 1 +-8930307926221807616 -8930307926221807616 -8930307926221807616 -8930307926221807616 1 +-8938849835283677184 -8938849835283677184 -8938849835283677184 -8938849835283677184 1 +-8940944155843461120 -8940944155843461120 -8940944155843461120 -8940944155843461120 1 +-8941201923743703040 -8941201923743703040 -8941201923743703040 -8941201923743703040 1 +-8946656952763777024 -8946656952763777024 -8946656952763777024 -8946656952763777024 1 +-8948335470186373120 -8948335470186373120 -8948335470186373120 -8948335470186373120 1 +-8959796625322680320 -8959796625322680320 -8959796625322680320 -8959796625322680320 1 +-8961059046745669632 -8961059046745669632 -8961059046745669632 -8961059046745669632 1 +-8962547695651323904 -8962547695651323904 -8962547695651323904 -8962547695651323904 1 +-8965578088652095488 -8965578088652095488 -8965578088652095488 -8965578088652095488 1 +-8989473881707921408 -8989473881707921408 -8989473881707921408 -8989473881707921408 1 +-8990843030306717696 -8990843030306717696 -8990843030306717696 -8990843030306717696 1 +-8992599250893979648 -8992599250893979648 -8992599250893979648 -8992599250893979648 1 +-8996954350906294272 -8996954350906294272 -8996954350906294272 -8996954350906294272 1 +-9002912355472736256 -9002912355472736256 -9002912355472736256 -9002912355472736256 1 +-9004892183139811328 -9004892183139811328 -9004892183139811328 -9004892183139811328 1 +-9008631121684832256 -9008631121684832256 -9008631121684832256 -9008631121684832256 1 +-9012093603044245504 -9012093603044245504 -9012093603044245504 -9012093603044245504 1 +-9013952631912325120 -9013952631912325120 -9013952631912325120 -9013952631912325120 1 +-9014145341570203648 -9014145341570203648 -9014145341570203648 -9014145341570203648 1 +-9022154842129547264 -9022154842129547264 -9022154842129547264 -9022154842129547264 1 +-9032650742739836928 -9032650742739836928 -9032650742739836928 -9032650742739836928 1 +-9049720998034137088 -9049720998034137088 -9049720998034137088 -9049720998034137088 1 +-9051477157204770816 -9051477157204770816 -9051477157204770816 -9051477157204770816 1 +-9058029636530003968 -9058029636530003968 -9058029636530003968 -9058029636530003968 1 +-9066993118333706240 -9066993118333706240 -9066993118333706240 -9066993118333706240 1 +-9071565764086521856 -9071565764086521856 -9071565764086521856 -9071565764086521856 1 +-9075302542655684608 -9075302542655684608 -9075302542655684608 -9075302542655684608 1 +-9075486079396069376 -9075486079396069376 -9075486079396069376 -9075486079396069376 1 +-9078662294976061440 -9078662294976061440 -9078662294976061440 -9078662294976061440 1 +-9079801920509001728 -9079801920509001728 -9079801920509001728 -9079801920509001728 1 +-9080568167841226752 -9080568167841226752 -9080568167841226752 -9080568167841226752 1 +-9080956291212132352 -9080956291212132352 -9080956291212132352 -9080956291212132352 1 +-9084940280061485056 -9084940280061485056 -9084940280061485056 -9084940280061485056 1 +-9088239683374350336 -9088239683374350336 -9088239683374350336 -9088239683374350336 1 +-9091113592821972992 -9091113592821972992 -9091113592821972992 -9091113592821972992 1 +-9095689235523264512 -9095689235523264512 -9095689235523264512 -9095689235523264512 1 +-9101953184875757568 -9101953184875757568 -9101953184875757568 -9101953184875757568 1 +-9102482277760983040 -9102482277760983040 -9102482277760983040 -9102482277760983040 1 +-9105358806324035584 -9105358806324035584 -9105358806324035584 -9105358806324035584 1 +-9105701280936501248 -9105701280936501248 -9105701280936501248 -9105701280936501248 1 +-9109392978217484288 -9109392978217484288 -9109392978217484288 -9109392978217484288 1 +-9117959922369060864 -9117959922369060864 -9117959922369060864 -9117959922369060864 1 +-9126793997498957824 -9126793997498957824 -9126793997498957824 -9126793997498957824 1 +-9136398397785948160 -9136398397785948160 -9136398397785948160 -9136398397785948160 1 +-9142610685888192512 -9142610685888192512 -9142610685888192512 -9142610685888192512 1 +-9145593811310010368 -9145593811310010368 -9145593811310010368 -9145593811310010368 1 +-9148197394287779840 -9148197394287779840 -9148197394287779840 -9148197394287779840 1 +-9149719074367946752 -9149719074367946752 -9149719074367946752 -9149719074367946752 1 +-9157613004431998976 -9157613004431998976 -9157613004431998976 -9157613004431998976 1 +-9175038118837149696 -9175038118837149696 -9175038118837149696 -9175038118837149696 1 +-9175279464813223936 -9175279464813223936 -9175279464813223936 -9175279464813223936 1 +-9178166810751909888 -9178166810751909888 -9178166810751909888 -9178166810751909888 1 +-9187662685618348032 -9187662685618348032 -9187662685618348032 -9187662685618348032 1 +-9189155542884474880 -9189155542884474880 -9189155542884474880 -9189155542884474880 1 +-9203804401302323200 -9203804401302323200 -9203804401302323200 -9203804401302323200 1 +-9203942396257984512 -9203942396257984512 -9203942396257984512 -9203942396257984512 1 +-9206329156028112896 -9206329156028112896 -9206329156028112896 -9206329156028112896 1 +-9210275791460499456 -9210275791460499456 -9210275791460499456 -9210275791460499456 1 +-9213132862973829120 -9213132862973829120 -9213132862973829120 -9213132862973829120 1 +-9215144824304721920 -9215144824304721920 -9215144824304721920 -9215144824304721920 1 +-9218875542187065344 -9218875542187065344 -9218875542187065344 -9218875542187065344 1 +-9219066990552760320 -9219066990552760320 -9219066990552760320 -9219066990552760320 1 +1021 1021 1021 1021 1 +1030 1030 1030 1030 1 +1032 1032 1032 1032 1 +1039 1039 1039 1039 1 +1046 1046 1046 1046 1 +1048 1048 1048 1048 1 +1053 1053 1053 1053 1 +1055 1055 1055 1055 1 +1058 1058 1058 1058 1 +1065 1065 1065 1065 1 +1066 1066 1066 1066 1 +1074 1074 1074 1074 1 +1075 1075 1075 3225 3 +108 108 108 108 1 +1086 1086 1086 1086 1 +1093 1093 1093 1093 1 +1094 1094 1094 1094 1 +1095 1095 1095 1095 1 +1099 1099 1099 1099 1 +1115 1115 1115 1115 1 +112 112 112 112 1 +1127 1127 1127 1127 1 +1128 1128 1128 1128 1 +1132 1132 1132 1132 1 +1134 1134 1134 1134 1 +1141 1141 1141 1141 1 +1142 1142 1142 1142 1 +1145 1145 1145 1145 1 +1153 1153 1153 1153 1 +1157 1157 1157 1157 1 +1158 1158 1158 1158 1 +1165 1165 1165 2330 2 +1168 1168 1168 1168 1 +1177 1177 1177 1177 1 +1187 1187 1187 1187 1 +1189 1189 1189 1189 1 +1198 1198 1198 1198 1 +120 120 120 120 1 +1201 1201 1201 1201 1 +1217 1217 1217 1217 1 +1234 1234 1234 1234 1 +1243 1243 1243 1243 1 +1247 1247 1247 1247 1 +1252 1252 1252 1252 1 +1261 1261 1261 1261 1 +1270 1270 1270 1270 1 +1280 1280 1280 1280 1 +1282 1282 1282 1282 1 +1286 1286 1286 1286 1 +1287 1287 1287 1287 1 +1290 1290 1290 1290 1 +1291 1291 1291 1291 1 +1299 1299 1299 1299 1 +130 130 130 130 1 +1307 1307 1307 1307 1 +1312 1312 1312 1312 1 +1316 1316 1316 1316 1 +1321 1321 1321 1321 1 +1337 1337 1337 1337 1 +1341 1341 1341 1341 1 +1342 1342 1342 1342 1 +1343 1343 1343 1343 1 +1345 1345 1345 1345 1 +1346 1346 1346 1346 1 +135 135 135 135 1 +1366 1366 1366 1366 1 +1368 1368 1368 2736 2 +1371 1371 1371 2742 2 +138 138 138 138 1 +1386 1386 1386 1386 1 +1398 1398 1398 1398 1 +1409 1409 1409 1409 1 +1422 1422 1422 1422 1 +1423 1423 1423 1423 1 +1436 1436 1436 1436 1 +1439 1439 1439 1439 1 +1447 1447 1447 1447 1 +1450 1450 1450 1450 1 +1454 1454 1454 1454 1 +1458 1458 1458 1458 1 +1462 1462 1462 1462 1 +1466 1466 1466 1466 1 +1470 1470 1470 1470 1 +1477 1477 1477 1477 1 +1481 1481 1481 2962 2 +1489 1489 1489 1489 1 +1493 1493 1493 1493 1 +1495 1495 1495 1495 1 +1501 1501 1501 1501 1 +1506 1506 1506 1506 1 +1508 1508 1508 1508 1 +1509 1509 1509 3018 2 +1518 1518 1518 1518 1 +1520 1520 1520 1520 1 +1521 1521 1521 1521 1 +1524 1524 1524 1524 1 +1530 1530 1530 1530 1 +1537 1537 1537 3074 2 +154 154 154 308 2 +1541 1541 1541 1541 1 +1542 1542 1542 1542 1 +1545 1545 1545 1545 1 +1556 1556 1556 1556 1 +1559 1559 1559 1559 1 +1561 1561 1561 1561 1 +1566 1566 1566 1566 1 +1604 1604 1604 1604 1 +1606 1606 1606 1606 1 +1608 1608 1608 1608 1 +1613 1613 1613 1613 1 +1614 1614 1614 1614 1 +1620 1620 1620 1620 1 +1638 1638 1638 1638 1 +1641 1641 1641 1641 1 +1643 1643 1643 1643 1 +1648 1648 1648 1648 1 +1651 1651 1651 1651 1 +1667 1667 1667 1667 1 +1671 1671 1671 1671 1 +1674 1674 1674 1674 1 +1676 1676 1676 1676 1 +1678 1678 1678 1678 1 +168 168 168 168 1 +1681 1681 1681 1681 1 +169 169 169 169 1 +1693 1693 1693 1693 1 +1701 1701 1701 3402 2 +1704 1704 1704 1704 1 +1719 1719 1719 3438 2 +1726 1726 1726 1726 1 +1728 1728 1728 1728 1 +1745 1745 1745 1745 1 +1751 1751 1751 1751 1 +1752 1752 1752 1752 1 +1769 1769 1769 1769 1 +1774 1774 1774 1774 1 +1775 1775 1775 1775 1 +1777 1777 1777 3554 2 +1780 1780 1780 1780 1 +1781 1781 1781 1781 1 +1785 1785 1785 1785 1 +1786 1786 1786 1786 1 +1788 1788 1788 1788 1 +1789 1789 1789 1789 1 +1791 1791 1791 1791 1 +1796 1796 1796 1796 1 +1806 1806 1806 1806 1 +181 181 181 181 1 +1811 1811 1811 1811 1 +1813 1813 1813 1813 1 +1826 1826 1826 1826 1 +1827 1827 1827 1827 1 +1835 1835 1835 1835 1 +1837 1837 1837 1837 1 +1845 1845 1845 1845 1 +1846 1846 1846 1846 1 +1856 1856 1856 3712 2 +1862 1862 1862 1862 1 +1863 1863 1863 1863 1 +1864 1864 1864 1864 1 +1866 1866 1866 1866 1 +187 187 187 187 1 +1870 1870 1870 1870 1 +188 188 188 188 1 +1880 1880 1880 1880 1 +1890 1890 1890 1890 1 +1892 1892 1892 1892 1 +1899 1899 1899 1899 1 +19 19 19 38 2 +1906 1906 1906 1906 1 +1910 1910 1910 1910 1 +1914 1914 1914 3828 2 +1926 1926 1926 1926 1 +1937 1937 1937 1937 1 +1940 1940 1940 1940 1 +1941 1941 1941 1941 1 +1948 1948 1948 5844 3 +1955 1955 1955 1955 1 +1965 1965 1965 1965 1 +1972 1972 1972 1972 1 +1981 1981 1981 1981 1 +1983 1983 1983 1983 1 +1987 1987 1987 1987 1 +1990 1990 1990 1990 1 +1995 1995 1995 1995 1 +1999 1999 1999 1999 1 +2001 2001 2001 2001 1 +2002 2002 2002 2002 1 +2004 2004 2004 2004 1 +2009 2009 2009 2009 1 +2011 2011 2011 2011 1 +2013 2013 2013 2013 1 +2016 2016 2016 2016 1 +2017 2017 2017 2017 1 +2020 2020 2020 4040 2 +2025 2025 2025 2025 1 +2026 2026 2026 2026 1 +2029 2029 2029 2029 1 +203 203 203 203 1 +204 204 204 204 1 +2046 2046 2046 2046 1 +2056 2056 2056 2056 1 +2067 2067 2067 2067 1 +2072 2072 2072 2072 1 +2073 2073 2073 2073 1 +2085 2085 2085 2085 1 +2089 2089 2089 2089 1 +2092 2092 2092 2092 1 +2105 2105 2105 2105 1 +2106 2106 2106 2106 1 +2108 2108 2108 2108 1 +213 213 213 426 2 +2131 2131 2131 2131 1 +2138 2138 2138 2138 1 +2140 2140 2140 2140 1 +2144 2144 2144 2144 1 +2155 2155 2155 2155 1 +2177 2177 2177 2177 1 +2179 2179 2179 2179 1 +2180 2180 2180 2180 1 +2183 2183 2183 2183 1 +2186 2186 2186 2186 1 +2187 2187 2187 2187 1 +2189 2189 2189 2189 1 +2193 2193 2193 4386 2 +2194 2194 2194 2194 1 +22 22 22 22 1 +2201 2201 2201 2201 1 +2205 2205 2205 2205 1 +2214 2214 2214 2214 1 +2217 2217 2217 2217 1 +2218 2218 2218 2218 1 +2223 2223 2223 2223 1 +2227 2227 2227 2227 1 +2229 2229 2229 2229 1 +2232 2232 2232 2232 1 +2241 2241 2241 2241 1 +2244 2244 2244 2244 1 +2255 2255 2255 2255 1 +2262 2262 2262 2262 1 +2264 2264 2264 2264 1 +2270 2270 2270 2270 1 +2274 2274 2274 2274 1 +2277 2277 2277 2277 1 +2279 2279 2279 2279 1 +228 228 228 228 1 +2283 2283 2283 2283 1 +2285 2285 2285 4570 2 +2295 2295 2295 2295 1 +2306 2306 2306 2306 1 +2320 2320 2320 2320 1 +2323 2323 2323 2323 1 +2325 2325 2325 4650 2 +2335 2335 2335 2335 1 +2341 2341 2341 2341 1 +2348 2348 2348 2348 1 +2358 2358 2358 2358 1 +236 236 236 236 1 +2373 2373 2373 2373 1 +238 238 238 238 1 +2386 2386 2386 2386 1 +2393 2393 2393 4786 2 +2398 2398 2398 2398 1 +2400 2400 2400 2400 1 +2410 2410 2410 2410 1 +2412 2412 2412 4824 2 +2420 2420 2420 2420 1 +2426 2426 2426 2426 1 +2434 2434 2434 2434 1 +244 244 244 244 1 +2461 2461 2461 2461 1 +2463 2463 2463 7389 3 +2465 2465 2465 2465 1 +2469 2469 2469 2469 1 +2475 2475 2475 2475 1 +2476 2476 2476 2476 1 +2485 2485 2485 4970 2 +2487 2487 2487 2487 1 +2492 2492 2492 2492 1 +2494 2494 2494 2494 1 +2502 2502 2502 2502 1 +2506 2506 2506 2506 1 +2509 2509 2509 2509 1 +2512 2512 2512 2512 1 +2514 2514 2514 2514 1 +2515 2515 2515 2515 1 +2517 2517 2517 2517 1 +2524 2524 2524 2524 1 +2533 2533 2533 2533 1 +2539 2539 2539 2539 1 +2540 2540 2540 2540 1 +255 255 255 255 1 +2551 2551 2551 2551 1 +2553 2553 2553 2553 1 +2560 2560 2560 5120 2 +2563 2563 2563 2563 1 +2565 2565 2565 2565 1 +2569 2569 2569 2569 1 +2579 2579 2579 2579 1 +2580 2580 2580 2580 1 +2587 2587 2587 2587 1 +259 259 259 259 1 +2599 2599 2599 2599 1 +2607 2607 2607 2607 1 +2608 2608 2608 2608 1 +2619 2619 2619 5238 2 +2625 2625 2625 2625 1 +2626 2626 2626 2626 1 +263 263 263 526 2 +2637 2637 2637 2637 1 +2647 2647 2647 2647 1 +2649 2649 2649 2649 1 +2662 2662 2662 2662 1 +2663 2663 2663 2663 1 +2675 2675 2675 2675 1 +268 268 268 536 2 +2680 2680 2680 2680 1 +2682 2682 2682 2682 1 +2688 2688 2688 2688 1 +2689 2689 2689 2689 1 +2692 2692 2692 2692 1 +2700 2700 2700 2700 1 +2712 2712 2712 2712 1 +2714 2714 2714 2714 1 +2715 2715 2715 5430 2 +2719 2719 2719 2719 1 +2724 2724 2724 2724 1 +2725 2725 2725 2725 1 +2735 2735 2735 2735 1 +2745 2745 2745 2745 1 +275 275 275 275 1 +2752 2752 2752 2752 1 +2762 2762 2762 2762 1 +2772 2772 2772 2772 1 +2776 2776 2776 2776 1 +2786 2786 2786 5572 2 +279 279 279 279 1 +2790 2790 2790 2790 1 +2791 2791 2791 2791 1 +2803 2803 2803 8409 3 +2805 2805 2805 2805 1 +281 281 281 281 1 +2810 2810 2810 2810 1 +2811 2811 2811 2811 1 +2816 2816 2816 2816 1 +2821 2821 2821 2821 1 +2824 2824 2824 2824 1 +2835 2835 2835 2835 1 +2842 2842 2842 2842 1 +2843 2843 2843 5686 2 +2846 2846 2846 2846 1 +2847 2847 2847 2847 1 +2848 2848 2848 2848 1 +2850 2850 2850 2850 1 +2855 2855 2855 5710 2 +2862 2862 2862 2862 1 +2878 2878 2878 2878 1 +2886 2886 2886 2886 1 +289 289 289 289 1 +2897 2897 2897 5794 2 +2900 2900 2900 2900 1 +2903 2903 2903 2903 1 +2905 2905 2905 2905 1 +2911 2911 2911 2911 1 +2915 2915 2915 2915 1 +2919 2919 2919 2919 1 +2933 2933 2933 5866 2 +2938 2938 2938 2938 1 +294 294 294 294 1 +2941 2941 2941 2941 1 +2942 2942 2942 2942 1 +296 296 296 592 2 +2962 2962 2962 2962 1 +2968 2968 2968 5936 2 +2971 2971 2971 2971 1 +2977 2977 2977 2977 1 +2979 2979 2979 2979 1 +2984 2984 2984 2984 1 +2986 2986 2986 2986 1 +2988 2988 2988 2988 1 +2991 2991 2991 2991 1 +3002 3002 3002 3002 1 +3006 3006 3006 3006 1 +301 301 301 301 1 +302 302 302 302 1 +3021 3021 3021 6042 2 +3024 3024 3024 3024 1 +3029 3029 3029 3029 1 +3031 3031 3031 3031 1 +3036 3036 3036 3036 1 +3043 3043 3043 3043 1 +3054 3054 3054 3054 1 +3055 3055 3055 3055 1 +3058 3058 3058 3058 1 +3059 3059 3059 3059 1 +3060 3060 3060 6120 2 +3067 3067 3067 3067 1 +3071 3071 3071 3071 1 +3073 3073 3073 3073 1 +3079 3079 3079 6158 2 +3083 3083 3083 3083 1 +3084 3084 3084 3084 1 +3089 3089 3089 3089 1 +3094 3094 3094 3094 1 +3103 3103 3103 3103 1 +311 311 311 311 1 +3111 3111 3111 3111 1 +3118 3118 3118 3118 1 +3119 3119 3119 3119 1 +3144 3144 3144 3144 1 +3147 3147 3147 3147 1 +3159 3159 3159 6318 2 +3163 3163 3163 3163 1 +3174 3174 3174 3174 1 +3183 3183 3183 3183 1 +3190 3190 3190 3190 1 +3197 3197 3197 3197 1 +3199 3199 3199 3199 1 +320 320 320 320 1 +3203 3203 3203 3203 1 +3206 3206 3206 3206 1 +3208 3208 3208 3208 1 +3212 3212 3212 3212 1 +3213 3213 3213 3213 1 +3231 3231 3231 3231 1 +3232 3232 3232 3232 1 +3235 3235 3235 3235 1 +3244 3244 3244 3244 1 +3245 3245 3245 3245 1 +3248 3248 3248 3248 1 +3249 3249 3249 3249 1 +3253 3253 3253 3253 1 +3255 3255 3255 3255 1 +3263 3263 3263 3263 1 +3286 3286 3286 3286 1 +3300 3300 3300 3300 1 +3307 3307 3307 3307 1 +3322 3322 3322 3322 1 +3333 3333 3333 3333 1 +3352 3352 3352 3352 1 +336 336 336 336 1 +3365 3365 3365 3365 1 +3366 3366 3366 3366 1 +3397 3397 3397 3397 1 +34 34 34 34 1 +3401 3401 3401 3401 1 +3407 3407 3407 3407 1 +3409 3409 3409 3409 1 +341 341 341 341 1 +3418 3418 3418 6836 2 +342 342 342 342 1 +3421 3421 3421 3421 1 +3430 3430 3430 3430 1 +3443 3443 3443 3443 1 +3446 3446 3446 3446 1 +345 345 345 345 1 +3456 3456 3456 3456 1 +346 346 346 692 2 +3460 3460 3460 3460 1 +3462 3462 3462 10386 3 +3467 3467 3467 6934 2 +347 347 347 347 1 +3472 3472 3472 3472 1 +3478 3478 3478 3478 1 +3493 3493 3493 3493 1 +350 350 350 350 1 +3507 3507 3507 3507 1 +3510 3510 3510 3510 1 +3512 3512 3512 3512 1 +3533 3533 3533 3533 1 +3534 3534 3534 3534 1 +3541 3541 3541 3541 1 +3542 3542 3542 3542 1 +355 355 355 355 1 +3554 3554 3554 3554 1 +3555 3555 3555 7110 2 +3563 3563 3563 3563 1 +3566 3566 3566 3566 1 +3567 3567 3567 3567 1 +3568 3568 3568 3568 1 +3579 3579 3579 3579 1 +3588 3588 3588 7176 2 +3599 3599 3599 3599 1 +3606 3606 3606 3606 1 +3608 3608 3608 3608 1 +3609 3609 3609 3609 1 +361 361 361 361 1 +3613 3613 3613 3613 1 +3622 3622 3622 7244 2 +3625 3625 3625 3625 1 +3630 3630 3630 3630 1 +3637 3637 3637 3637 1 +364 364 364 364 1 +3648 3648 3648 3648 1 +3663 3663 3663 3663 1 +3664 3664 3664 3664 1 +367 367 367 367 1 +3672 3672 3672 3672 1 +3673 3673 3673 3673 1 +3677 3677 3677 3677 1 +3680 3680 3680 3680 1 +3682 3682 3682 3682 1 +3690 3690 3690 3690 1 +3691 3691 3691 3691 1 +3701 3701 3701 3701 1 +3702 3702 3702 3702 1 +3703 3703 3703 3703 1 +3707 3707 3707 3707 1 +3722 3722 3722 3722 1 +3724 3724 3724 3724 1 +3725 3725 3725 7450 2 +3728 3728 3728 7456 2 +3739 3739 3739 3739 1 +3747 3747 3747 3747 1 +3749 3749 3749 3749 1 +375 375 375 375 1 +3755 3755 3755 3755 1 +3763 3763 3763 3763 1 +3764 3764 3764 3764 1 +3769 3769 3769 3769 1 +3770 3770 3770 7540 2 +378 378 378 378 1 +3781 3781 3781 7562 2 +3789 3789 3789 3789 1 +379 379 379 379 1 +3810 3810 3810 3810 1 +3812 3812 3812 3812 1 +3823 3823 3823 3823 1 +3824 3824 3824 3824 1 +383 383 383 766 2 +3830 3830 3830 3830 1 +3835 3835 3835 3835 1 +3841 3841 3841 3841 1 +3848 3848 3848 3848 1 +3858 3858 3858 3858 1 +3860 3860 3860 3860 1 +3866 3866 3866 7732 2 +3874 3874 3874 3874 1 +3879 3879 3879 3879 1 +388 388 388 388 1 +3887 3887 3887 3887 1 +3901 3901 3901 3901 1 +3904 3904 3904 3904 1 +3907 3907 3907 3907 1 +391 391 391 391 1 +3910 3910 3910 3910 1 +3911 3911 3911 3911 1 +3913 3913 3913 3913 1 +392 392 392 392 1 +3932 3932 3932 3932 1 +3940 3940 3940 3940 1 +3941 3941 3941 3941 1 +3945 3945 3945 3945 1 +3946 3946 3946 3946 1 +3949 3949 3949 3949 1 +3958 3958 3958 3958 1 +3960 3960 3960 3960 1 +3961 3961 3961 3961 1 +3962 3962 3962 3962 1 +3965 3965 3965 3965 1 +3974 3974 3974 7948 2 +3980 3980 3980 3980 1 +3990 3990 3990 3990 1 +4018 4018 4018 4018 1 +4020 4020 4020 4020 1 +4024 4024 4024 4024 1 +4030 4030 4030 4030 1 +4037 4037 4037 4037 1 +4051 4051 4051 4051 1 +4054 4054 4054 4054 1 +4056 4056 4056 4056 1 +4075 4075 4075 4075 1 +4078 4078 4078 4078 1 +4088 4088 4088 4088 1 +41 41 41 41 1 +412 412 412 824 2 +417 417 417 417 1 +425 425 425 425 1 +443 443 443 443 1 +454 454 454 454 1 +455 455 455 455 1 +462 462 462 462 1 +470 470 470 470 1 +471 471 471 471 1 +481 481 481 481 1 +482 482 482 482 1 +485 485 485 485 1 +489 489 489 489 1 +49 49 49 49 1 +490 490 490 490 1 +491 491 491 491 1 +5 5 5 5 1 +500 500 500 500 1 +501 501 501 1002 2 +504 504 504 504 1 +522 522 522 522 1 +523 523 523 523 1 +524 524 524 524 1 +530 530 530 530 1 +535 535 535 535 1 +579 579 579 579 1 +583 583 583 583 1 +584 584 584 584 1 +586 586 586 586 1 +587 587 587 587 1 +590 590 590 590 1 +597 597 597 597 1 +601 601 601 601 1 +612 612 612 612 1 +615 615 615 615 1 +618 618 618 618 1 +65 65 65 65 1 +650 650 650 650 1 +658 658 658 658 1 +66 66 66 66 1 +661 661 661 1322 2 +663 663 663 663 1 +664 664 664 664 1 +677 677 677 677 1 +68 68 68 68 1 +681 681 681 681 1 +687 687 687 687 1 +688 688 688 688 1 +690 690 690 690 1 +691 691 691 691 1 +6923604860394528768 6923604860394528768 6923604860394528768 6923604860394528768 1 +6924820982050758656 6924820982050758656 6924820982050758656 6924820982050758656 1 +6926925215281774592 6926925215281774592 6926925215281774592 6926925215281774592 1 +6927260280037097472 6927260280037097472 6927260280037097472 6927260280037097472 1 +6928080429732536320 6928080429732536320 6928080429732536320 6928080429732536320 1 +6933001829416034304 6933001829416034304 6933001829416034304 6933001829416034304 1 +6933451028794925056 6933451028794925056 6933451028794925056 6933451028794925056 1 +6933731240564056064 6933731240564056064 6933731240564056064 6933731240564056064 1 +6934570741217755136 6934570741217755136 6934570741217755136 6934570741217755136 1 +694 694 694 694 1 +6947488599548215296 6947488599548215296 6947488599548215296 6947488599548215296 1 +695 695 695 695 1 +6960137166475911168 6960137166475911168 6960137166475911168 6960137166475911168 1 +6962726713896484864 6962726713896484864 6962726713896484864 6962726713896484864 1 +6963217546192322560 6963217546192322560 6963217546192322560 6963217546192322560 1 +6964585306125008896 6964585306125008896 6964585306125008896 6964585306125008896 1 +6967631925774639104 6967631925774639104 6967631925774639104 6967631925774639104 1 +6969599299897163776 6969599299897163776 6969599299897163776 6969599299897163776 1 +6974475559697768448 6974475559697768448 6974475559697768448 6974475559697768448 1 +6982145326341423104 6982145326341423104 6982145326341423104 6982145326341423104 1 +6987889924212203520 6987889924212203520 6987889924212203520 6987889924212203520 1 +6991316084916879360 6991316084916879360 6991316084916879360 6991316084916879360 1 +6996686091335884800 6996686091335884800 6996686091335884800 6996686091335884800 1 +7006803044329021440 7006803044329021440 7006803044329021440 7006803044329021440 1 +7013693841855774720 7013693841855774720 7013693841855774720 7013693841855774720 1 +7014537632150224896 7014537632150224896 7014537632150224896 7014537632150224896 1 +7017956982081404928 7017956982081404928 7017956982081404928 7017956982081404928 1 +7022349041913978880 7022349041913978880 7022349041913978880 7022349041913978880 1 +7027529814236192768 7027529814236192768 7027529814236192768 7027529814236192768 1 +7031339012080549888 7031339012080549888 7031339012080549888 7031339012080549888 1 +7039820685967343616 7039820685967343616 7039820685967343616 7039820685967343616 1 +7045967493826387968 7045967493826387968 7045967493826387968 7045967493826387968 1 +7049773031131283456 7049773031131283456 7049773031131283456 7049773031131283456 1 +7052226236896256000 7052226236896256000 7052226236896256000 7052226236896256000 1 +7054271419461812224 7054271419461812224 7054271419461812224 7054271419461812224 1 +7054938591408996352 7054938591408996352 7054938591408996352 7054938591408996352 1 +7060236714847412224 7060236714847412224 7060236714847412224 7060236714847412224 1 +7061498706968428544 7061498706968428544 7061498706968428544 7061498706968428544 1 +7061809776248545280 7061809776248545280 7061809776248545280 7061809776248545280 1 +7062382339142156288 7062382339142156288 7062382339142156288 7062382339142156288 1 +7062605127422894080 7062605127422894080 7062605127422894080 7062605127422894080 1 +7065344324692443136 7065344324692443136 7065344324692443136 7065344324692443136 1 +7068517339681259520 7068517339681259520 7068517339681259520 7068517339681259520 1 +7069729473166090240 7069729473166090240 7069729473166090240 7069729473166090240 1 +707 707 707 707 1 +7077311975029555200 7077311975029555200 7077311975029555200 7077311975029555200 1 +7078641038157643776 7078641038157643776 7078641038157643776 7078641038157643776 1 +7080269176324218880 7080269176324218880 7080269176324218880 7080269176324218880 1 +7084659344078970880 7084659344078970880 7084659344078970880 7084659344078970880 1 +7086206629592252416 7086206629592252416 7086206629592252416 7086206629592252416 1 +7091300332052062208 7091300332052062208 7091300332052062208 7091300332052062208 1 +7099005292698550272 7099005292698550272 7099005292698550272 7099005292698550272 1 +71 71 71 71 1 +7107604675626008576 7107604675626008576 7107604675626008576 7107604675626008576 1 +7125231541858205696 7125231541858205696 7125231541858205696 7125231541858205696 1 +7128222874437238784 7128222874437238784 7128222874437238784 7128222874437238784 1 +7130159794259353600 7130159794259353600 7130159794259353600 7130159794259353600 1 +7130306447560826880 7130306447560826880 7130306447560826880 7130306447560826880 1 +7149417430082027520 7149417430082027520 7149417430082027520 7149417430082027520 1 +7153922334283776000 7153922334283776000 7153922334283776000 7153922334283776000 1 +7157247449513484288 7157247449513484288 7157247449513484288 7157247449513484288 1 +7164349895861829632 7164349895861829632 7164349895861829632 7164349895861829632 1 +7165364563962191872 7165364563962191872 7165364563962191872 7165364563962191872 1 +7166263463731421184 7166263463731421184 7166263463731421184 7166263463731421184 1 +7175638927948562432 7175638927948562432 7175638927948562432 7175638927948562432 1 +7186401810812059648 7186401810812059648 7186401810812059648 7186401810812059648 1 +7195454019231834112 7195454019231834112 7195454019231834112 7195454019231834112 1 +7198687580227043328 7198687580227043328 7198687580227043328 7198687580227043328 1 +7199539820886958080 7199539820886958080 7199539820886958080 7199539820886958080 1 +7204802700490858496 7204802700490858496 7204802700490858496 7204802700490858496 1 +7210160489915236352 7210160489915236352 7210160489915236352 7210160489915236352 1 +7212016545671348224 7212016545671348224 7212016545671348224 7212016545671348224 1 +7212090742612467712 7212090742612467712 7212090742612467712 7212090742612467712 1 +7217123582035116032 7217123582035116032 7217123582035116032 7217123582035116032 1 +7220131672176058368 7220131672176058368 7220131672176058368 7220131672176058368 1 +7220581538170413056 7220581538170413056 7220581538170413056 7220581538170413056 1 +7223569671814987776 7223569671814987776 7223569671814987776 7223569671814987776 1 +7226360892091416576 7226360892091416576 7226360892091416576 7226360892091416576 1 +7229607057201127424 7229607057201127424 7229607057201127424 7229607057201127424 1 +723 723 723 723 1 +7231399302953377792 7231399302953377792 7231399302953377792 7231399302953377792 1 +7232273749940838400 7232273749940838400 7232273749940838400 7232273749940838400 1 +7235109456886816768 7235109456886816768 7235109456886816768 7235109456886816768 1 +7237310132329488384 7237310132329488384 7237310132329488384 7237310132329488384 1 +7238339720750948352 7238339720750948352 7238339720750948352 7238339720750948352 1 +724 724 724 724 1 +7242751359672631296 7242751359672631296 7242751359672631296 7242751359672631296 1 +7249443195032985600 7249443195032985600 7249443195032985600 7249443195032985600 1 +7250237407877382144 7250237407877382144 7250237407877382144 7250237407877382144 1 +7254710367022645248 7254710367022645248 7254710367022645248 7254710367022645248 1 +7255302164215013376 7255302164215013376 7255302164215013376 7255302164215013376 1 +7259955893466931200 7259955893466931200 7259955893466931200 7259955893466931200 1 +7260908278294560768 7260908278294560768 7260908278294560768 7260908278294560768 1 +7265141874315517952 7265141874315517952 7265141874315517952 7265141874315517952 1 +7266437490436341760 7266437490436341760 7266437490436341760 7266437490436341760 1 +7271786885641666560 7271786885641666560 7271786885641666560 7271786885641666560 1 +7271887863395459072 7271887863395459072 7271887863395459072 7271887863395459072 1 +7274777328897802240 7274777328897802240 7274777328897802240 7274777328897802240 1 +7291432593139507200 7291432593139507200 7291432593139507200 7291432593139507200 1 +7295502697317097472 7295502697317097472 7295502697317097472 7295502697317097472 1 +7295926343524163584 7295926343524163584 7295926343524163584 7295926343524163584 1 +7296164580491075584 7296164580491075584 7296164580491075584 7296164580491075584 1 +7299197687217856512 7299197687217856512 7299197687217856512 7299197687217856512 1 +73 73 73 73 1 +7304839835188609024 7304839835188609024 7304839835188609024 7304839835188609024 1 +7308289763456000000 7308289763456000000 7308289763456000000 7308289763456000000 1 +7309156463509061632 7309156463509061632 7309156463509061632 7309156463509061632 1 +7310869618402910208 7310869618402910208 7310869618402910208 7310869618402910208 1 +7319711402123149312 7319711402123149312 7319711402123149312 7319711402123149312 1 +7333512171174223872 7333512171174223872 7333512171174223872 7333512171174223872 1 +7339426767877390336 7339426767877390336 7339426767877390336 7339426767877390336 1 +7343171468838567936 7343171468838567936 7343171468838567936 7343171468838567936 1 +7344029858387820544 7344029858387820544 7344029858387820544 7344029858387820544 1 +7345991518378442752 7345991518378442752 7345991518378442752 7345991518378442752 1 +7347732772348870656 7347732772348870656 7347732772348870656 7347732772348870656 1 +7348598907182800896 7348598907182800896 7348598907182800896 7348598907182800896 1 +735 735 735 735 1 +7354813692542304256 7354813692542304256 7354813692542304256 7354813692542304256 1 +7359004378440146944 7359004378440146944 7359004378440146944 7359004378440146944 1 +736 736 736 736 1 +7368920486374989824 7368920486374989824 7368920486374989824 7368920486374989824 1 +7370078518278397952 7370078518278397952 7370078518278397952 7370078518278397952 1 +7370803940448305152 7370803940448305152 7370803940448305152 7370803940448305152 1 +7375521127126089728 7375521127126089728 7375521127126089728 7375521127126089728 1 +7376467688511455232 7376467688511455232 7376467688511455232 7376467688511455232 1 +7378993334503694336 7378993334503694336 7378993334503694336 7378993334503694336 1 +738 738 738 738 1 +7381659098423926784 7381659098423926784 7381659098423926784 7381659098423926784 1 +7384150968511315968 7384150968511315968 7384150968511315968 7384150968511315968 1 +7386087924003676160 7386087924003676160 7386087924003676160 7386087924003676160 1 +7391208370547269632 7391208370547269632 7391208370547269632 7391208370547269632 1 +7393308503950548992 7393308503950548992 7393308503950548992 7393308503950548992 1 +7394967727502467072 7394967727502467072 7394967727502467072 7394967727502467072 1 +7401968422230032384 7401968422230032384 7401968422230032384 7401968422230032384 1 +7410096605330227200 7410096605330227200 7410096605330227200 7410096605330227200 1 +7410872053689794560 7410872053689794560 7410872053689794560 7410872053689794560 1 +7411793502161182720 7411793502161182720 7411793502161182720 7411793502161182720 1 +7412924364686458880 7412924364686458880 7412924364686458880 7412924364686458880 1 +7414865343000322048 7414865343000322048 7414865343000322048 7414865343000322048 1 +7418271723644403712 7418271723644403712 7418271723644403712 7418271723644403712 1 +743 743 743 743 1 +7432428551399669760 7432428551399669760 7432428551399669760 7432428551399669760 1 +7432998950057975808 7432998950057975808 7432998950057975808 7432998950057975808 1 +7436133434239229952 7436133434239229952 7436133434239229952 7436133434239229952 1 +7440265908266827776 7440265908266827776 7440265908266827776 7440265908266827776 1 +7450416810848313344 7450416810848313344 7450416810848313344 7450416810848313344 1 +7452756603516190720 7452756603516190720 7452756603516190720 7452756603516190720 1 +7454442625055145984 7454442625055145984 7454442625055145984 7454442625055145984 1 +7454632396542074880 7454632396542074880 7454632396542074880 7454632396542074880 1 +7461153404961128448 7461153404961128448 7461153404961128448 7461153404961128448 1 +7471208109437304832 7471208109437304832 7471208109437304832 7471208109437304832 1 +7473537548003352576 7473537548003352576 7473537548003352576 7473537548003352576 1 +7486884806277611520 7486884806277611520 7486884806277611520 7486884806277611520 1 +7487338208419823616 7487338208419823616 7487338208419823616 7487338208419823616 1 +7487538600082554880 7487538600082554880 7487538600082554880 7487538600082554880 1 +7490717730239250432 7490717730239250432 7490717730239250432 7490717730239250432 1 +7491898395977523200 7491898395977523200 7491898395977523200 7491898395977523200 1 +7492436934952574976 7492436934952574976 7492436934952574976 7492436934952574976 1 +7497276415392407552 7497276415392407552 7497276415392407552 7497276415392407552 1 +7497306924248834048 7497306924248834048 7497306924248834048 7497306924248834048 1 +7500716020874674176 7500716020874674176 7500716020874674176 7500716020874674176 1 +7514552840617558016 7514552840617558016 7514552840617558016 7514552840617558016 1 +7517159036469575680 7517159036469575680 7517159036469575680 7517159036469575680 1 +7524958388842078208 7524958388842078208 7524958388842078208 7524958388842078208 1 +7528074274555305984 7528074274555305984 7528074274555305984 7528074274555305984 1 +7528211148397944832 7528211148397944832 7528211148397944832 7528211148397944832 1 +7534042483076857856 7534042483076857856 7534042483076857856 7534042483076857856 1 +7534145866886782976 7534145866886782976 7534145866886782976 7534145866886782976 1 +7534549597202194432 7534549597202194432 7534549597202194432 7534549597202194432 1 +7545689659010949120 7545689659010949120 7545689659010949120 7545689659010949120 1 +7548958830580563968 7548958830580563968 7548958830580563968 7548958830580563968 1 +7549858023389003776 7549858023389003776 7549858023389003776 7549858023389003776 1 +7555301305375858688 7555301305375858688 7555301305375858688 7555301305375858688 1 +7566273236152721408 7566273236152721408 7566273236152721408 7566273236152721408 1 +7569249672628789248 7569249672628789248 7569249672628789248 7569249672628789248 1 +7570474972934488064 7570474972934488064 7570474972934488064 7570474972934488064 1 +7573530789362262016 7573530789362262016 7573530789362262016 7573530789362262016 1 +7575087487730196480 7575087487730196480 7575087487730196480 7575087487730196480 1 +7581052107944361984 7581052107944361984 7581052107944361984 7581052107944361984 1 +7581614118458335232 7581614118458335232 7581614118458335232 7581614118458335232 1 +7584007864107778048 7584007864107778048 7584007864107778048 7584007864107778048 1 +7592440105065308160 7592440105065308160 7592440105065308160 7592440105065308160 1 +7593521922173419520 7593521922173419520 7593521922173419520 7593521922173419520 1 +7596563216912211968 7596563216912211968 7596563216912211968 7596563216912211968 1 +7599019810193211392 7599019810193211392 7599019810193211392 7599019810193211392 1 +7608447395949109248 7608447395949109248 7608447395949109248 7608447395949109248 1 +7614435638888210432 7614435638888210432 7614435638888210432 7614435638888210432 1 +7620183559667081216 7620183559667081216 7620183559667081216 7620183559667081216 1 +7621013099259527168 7621013099259527168 7621013099259527168 7621013099259527168 1 +7625728883085025280 7625728883085025280 7625728883085025280 7625728883085025280 1 +7626715182847090688 7626715182847090688 7626715182847090688 7626715182847090688 1 +763 763 763 763 1 +7637152193832886272 7637152193832886272 7637152193832886272 7637152193832886272 1 +7647481735646363648 7647481735646363648 7647481735646363648 7647481735646363648 1 +7648729477297987584 7648729477297987584 7648729477297987584 7648729477297987584 1 +7652123583449161728 7652123583449161728 7652123583449161728 7652123583449161728 1 +7659279803863146496 7659279803863146496 7659279803863146496 7659279803863146496 1 +7662037650719850496 7662037650719850496 7662037650719850496 7662037650719850496 1 +7675009476762918912 7675009476762918912 7675009476762918912 7675009476762918912 1 +7678790769408172032 7678790769408172032 7678790769408172032 7678790769408172032 1 +7682327310082531328 7682327310082531328 7682327310082531328 7682327310082531328 1 +7686992843032010752 7686992843032010752 7686992843032010752 7686992843032010752 1 +7689489436826804224 7689489436826804224 7689489436826804224 7689489436826804224 1 +7690986322714066944 7690986322714066944 7690986322714066944 7690986322714066944 1 +7691062622443044864 7691062622443044864 7691062622443044864 7691062622443044864 1 +7696737688942567424 7696737688942567424 7696737688942567424 7696737688942567424 1 +7697541332524376064 7697541332524376064 7697541332524376064 7697541332524376064 1 +7700734109530767360 7700734109530767360 7700734109530767360 7700734109530767360 1 +7701723309715685376 7701723309715685376 7701723309715685376 7701723309715685376 1 +7705445437881278464 7705445437881278464 7705445437881278464 7705445437881278464 1 +7710447533880614912 7710447533880614912 7710447533880614912 7710447533880614912 1 +7718825401976684544 7718825401976684544 7718825401976684544 7718825401976684544 1 +7720187583697502208 7720187583697502208 7720187583697502208 7720187583697502208 1 +7731443941834678272 7731443941834678272 7731443941834678272 7731443941834678272 1 +7735566678126616576 7735566678126616576 7735566678126616576 7735566678126616576 1 +774 774 774 774 1 +7741854854673367040 7741854854673367040 7741854854673367040 7741854854673367040 1 +7746402369011277824 7746402369011277824 7746402369011277824 7746402369011277824 1 +7747874976739016704 7747874976739016704 7747874976739016704 7747874976739016704 1 +7748799008146366464 7748799008146366464 7748799008146366464 7748799008146366464 1 +7752740515534422016 7752740515534422016 7752740515534422016 7752740515534422016 1 +7753359568986636288 7753359568986636288 7753359568986636288 7753359568986636288 1 +7753882935005880320 7753882935005880320 7753882935005880320 7753882935005880320 1 +7761834341179375616 7761834341179375616 7761834341179375616 7761834341179375616 1 +7762823913046556672 7762823913046556672 7762823913046556672 7762823913046556672 1 +7765456790394871808 7765456790394871808 7765456790394871808 7765456790394871808 1 +7768984605670604800 7768984605670604800 7768984605670604800 7768984605670604800 1 +7775034125776363520 7775034125776363520 7775034125776363520 7775034125776363520 1 +7778936842502275072 7778936842502275072 7778936842502275072 7778936842502275072 1 +7779486624537370624 7779486624537370624 7779486624537370624 7779486624537370624 1 +7779735136559579136 7779735136559579136 7779735136559579136 7779735136559579136 1 +7782245855193874432 7782245855193874432 7782245855193874432 7782245855193874432 1 +7784169796350730240 7784169796350730240 7784169796350730240 7784169796350730240 1 +7784489776013295616 7784489776013295616 7784489776013295616 7784489776013295616 1 +779 779 779 779 1 +7790728456522784768 7790728456522784768 7790728456522784768 7790728456522784768 1 +7792036342592348160 7792036342592348160 7792036342592348160 7792036342592348160 1 +7794244032613703680 7794244032613703680 7794244032613703680 7794244032613703680 1 +78 78 78 78 1 +780 780 780 780 1 +7800332581637259264 7800332581637259264 7800332581637259264 7800332581637259264 1 +7801697837312884736 7801697837312884736 7801697837312884736 7801697837312884736 1 +7818464507324121088 7818464507324121088 7818464507324121088 7818464507324121088 1 +782 782 782 782 1 +7823874904139849728 7823874904139849728 7823874904139849728 7823874904139849728 1 +784 784 784 784 1 +7843804446688264192 7843804446688264192 7843804446688264192 7843804446688264192 1 +7844258063629852672 7844258063629852672 7844258063629852672 7844258063629852672 1 +7845953007588401152 7845953007588401152 7845953007588401152 7845953007588401152 1 +7857878068300898304 7857878068300898304 7857878068300898304 7857878068300898304 1 +7868367829080506368 7868367829080506368 7868367829080506368 7868367829080506368 1 +7870277756614623232 7870277756614623232 7870277756614623232 7870277756614623232 1 +7871189141676998656 7871189141676998656 7871189141676998656 7871189141676998656 1 +7871554728617025536 7871554728617025536 7871554728617025536 7871554728617025536 1 +7874764415950176256 7874764415950176256 7874764415950176256 7874764415950176256 1 +7885697257930588160 7885697257930588160 7885697257930588160 7885697257930588160 1 +7888238729321496576 7888238729321496576 7888238729321496576 7888238729321496576 1 +789 789 789 789 1 +7892026679115554816 7892026679115554816 7892026679115554816 7892026679115554816 1 +7892281003266408448 7892281003266408448 7892281003266408448 7892281003266408448 1 +7898670840507031552 7898670840507031552 7898670840507031552 7898670840507031552 1 +7909645665163804672 7909645665163804672 7909645665163804672 7909645665163804672 1 +7917494645725765632 7917494645725765632 7917494645725765632 7917494645725765632 1 +7919597361814577152 7919597361814577152 7919597361814577152 7919597361814577152 1 +7921639119138070528 7921639119138070528 7921639119138070528 7921639119138070528 1 +7922443154272395264 7922443154272395264 7922443154272395264 7922443154272395264 1 +7926898770090491904 7926898770090491904 7926898770090491904 7926898770090491904 1 +7933040277013962752 7933040277013962752 7933040277013962752 7933040277013962752 1 +7936149988210212864 7936149988210212864 7936149988210212864 7936149988210212864 1 +7944741547145502720 7944741547145502720 7944741547145502720 7944741547145502720 1 +7947544013461512192 7947544013461512192 7947544013461512192 7947544013461512192 1 +7948803266578161664 7948803266578161664 7948803266578161664 7948803266578161664 1 +7955126053367119872 7955126053367119872 7955126053367119872 7955126053367119872 1 +7961515985722605568 7961515985722605568 7961515985722605568 7961515985722605568 1 +7961909238130270208 7961909238130270208 7961909238130270208 7961909238130270208 1 +797 797 797 797 1 +7983789401706094592 7983789401706094592 7983789401706094592 7983789401706094592 1 +7989119273552158720 7989119273552158720 7989119273552158720 7989119273552158720 1 +7989160253372817408 7989160253372817408 7989160253372817408 7989160253372817408 1 +7997694023324975104 7997694023324975104 7997694023324975104 7997694023324975104 1 +7998357471114969088 7998357471114969088 7998357471114969088 7998357471114969088 1 +7998687089080467456 7998687089080467456 7998687089080467456 7998687089080467456 1 +80 80 80 80 1 +8000440057238052864 8000440057238052864 8000440057238052864 8000440057238052864 1 +8002769767000145920 8002769767000145920 8002769767000145920 8002769767000145920 1 +8004633750273925120 8004633750273925120 8004633750273925120 8004633750273925120 1 +8011181697250631680 8011181697250631680 8011181697250631680 8011181697250631680 1 +8011602724663336960 8011602724663336960 8011602724663336960 8011602724663336960 1 +8014986215157530624 8014986215157530624 8014986215157530624 8014986215157530624 1 +8017403886247927808 8017403886247927808 8017403886247927808 8017403886247927808 1 +803 803 803 803 1 +8045070943673671680 8045070943673671680 8045070943673671680 8045070943673671680 1 +8048726769133592576 8048726769133592576 8048726769133592576 8048726769133592576 1 +8059284960252731392 8059284960252731392 8059284960252731392 8059284960252731392 1 +8069531888205086720 8069531888205086720 8069531888205086720 8069531888205086720 1 +8071961599867387904 8071961599867387904 8071961599867387904 8071961599867387904 1 +8073733016154431488 8073733016154431488 8073733016154431488 8073733016154431488 1 +8079573715140485120 8079573715140485120 8079573715140485120 8079573715140485120 1 +808 808 808 808 1 +8087737899452432384 8087737899452432384 8087737899452432384 8087737899452432384 1 +809 809 809 809 1 +8091421389575282688 8091421389575282688 8091421389575282688 8091421389575282688 1 +8099215208813903872 8099215208813903872 8099215208813903872 8099215208813903872 1 +8100036735858401280 8100036735858401280 8100036735858401280 8100036735858401280 1 +8109381965028548608 8109381965028548608 8109381965028548608 8109381965028548608 1 +8111757081791733760 8111757081791733760 8111757081791733760 8111757081791733760 1 +8113585123802529792 8113585123802529792 8113585123802529792 8113585123802529792 1 +8116738401948377088 8116738401948377088 8116738401948377088 8116738401948377088 1 +812 812 812 812 1 +8120593157178228736 8120593157178228736 8120593157178228736 8120593157178228736 1 +8129551357032259584 8129551357032259584 8129551357032259584 8129551357032259584 1 +8135164922674872320 8135164922674872320 8135164922674872320 8135164922674872320 1 +8142241016679735296 8142241016679735296 8142241016679735296 8142241016679735296 1 +8143462899383345152 8143462899383345152 8143462899383345152 8143462899383345152 1 +8144552446127972352 8144552446127972352 8144552446127972352 8144552446127972352 1 +8145745969573666816 8145745969573666816 8145745969573666816 8145745969573666816 1 +8145750910080745472 8145750910080745472 8145750910080745472 8145750910080745472 1 +8146288732715196416 8146288732715196416 8146288732715196416 8146288732715196416 1 +8146492373537660928 8146492373537660928 8146492373537660928 8146492373537660928 1 +8148211378319933440 8148211378319933440 8148211378319933440 8148211378319933440 1 +815 815 815 815 1 +8150115791664340992 8150115791664340992 8150115791664340992 8150115791664340992 1 +8156018594610790400 8156018594610790400 8156018594610790400 8156018594610790400 1 +8156782979767238656 8156782979767238656 8156782979767238656 8156782979767238656 1 +8160569434550403072 8160569434550403072 8160569434550403072 8160569434550403072 1 +8160662610166194176 8160662610166194176 8160662610166194176 8160662610166194176 1 +8163948965373386752 8163948965373386752 8163948965373386752 8163948965373386752 1 +8168742078705262592 8168742078705262592 8168742078705262592 8168742078705262592 1 +8169878743136043008 8169878743136043008 8169878743136043008 8169878743136043008 1 +8171188598958407680 8171188598958407680 8171188598958407680 8171188598958407680 1 +8183233196086214656 8183233196086214656 8183233196086214656 8183233196086214656 1 +8184799300477943808 8184799300477943808 8184799300477943808 8184799300477943808 1 +8190539859890601984 8190539859890601984 8190539859890601984 8190539859890601984 1 +8190967051000659968 8190967051000659968 8190967051000659968 8190967051000659968 1 +8192304692696383488 8192304692696383488 8192304692696383488 8192304692696383488 1 +8195103847607967744 8195103847607967744 8195103847607967744 8195103847607967744 1 +8199513544090730496 8199513544090730496 8199513544090730496 8199513544090730496 1 +820 820 820 1640 2 +8201303040648052736 8201303040648052736 8201303040648052736 8201303040648052736 1 +8201491077550874624 8201491077550874624 8201491077550874624 8201491077550874624 1 +8208354137450766336 8208354137450766336 8208354137450766336 8208354137450766336 1 +8210813831744118784 8210813831744118784 8210813831744118784 8210813831744118784 1 +8213810702473183232 8213810702473183232 8213810702473183232 8213810702473183232 1 +8219326436390821888 8219326436390821888 8219326436390821888 8219326436390821888 1 +8220104397160169472 8220104397160169472 8220104397160169472 8220104397160169472 1 +8221561626658881536 8221561626658881536 8221561626658881536 8221561626658881536 1 +8222714144797368320 8222714144797368320 8222714144797368320 8222714144797368320 1 +8223732800007864320 8223732800007864320 8223732800007864320 8223732800007864320 1 +823 823 823 823 1 +8230371298967609344 8230371298967609344 8230371298967609344 8230371298967609344 1 +8235179243092090880 8235179243092090880 8235179243092090880 8235179243092090880 1 +8244041599171862528 8244041599171862528 8244041599171862528 8244041599171862528 1 +8254763178969915392 8254763178969915392 8254763178969915392 8254763178969915392 1 +8268875586442256384 8268875586442256384 8268875586442256384 8268875586442256384 1 +8269730157217062912 8269730157217062912 8269730157217062912 8269730157217062912 1 +8272001752345690112 8272001752345690112 8272001752345690112 8272001752345690112 1 +8279056098670198784 8279056098670198784 8279056098670198784 8279056098670198784 1 +8282648443538710528 8282648443538710528 8282648443538710528 8282648443538710528 1 +8283099811330506752 8283099811330506752 8283099811330506752 8283099811330506752 1 +8286706213485297664 8286706213485297664 8286706213485297664 8286706213485297664 1 +8287522765741301760 8287522765741301760 8287522765741301760 8287522765741301760 1 +8290014929764040704 8290014929764040704 8290014929764040704 8290014929764040704 1 +8290944180915871744 8290944180915871744 8290944180915871744 8290944180915871744 1 +8294315622451740672 8294315622451740672 8294315622451740672 8294315622451740672 1 +8295110846998233088 8295110846998233088 8295110846998233088 8295110846998233088 1 +83 83 83 83 1 +8302473563519950848 8302473563519950848 8302473563519950848 8302473563519950848 1 +8316336224427483136 8316336224427483136 8316336224427483136 8316336224427483136 1 +8323460620425330688 8323460620425330688 8323460620425330688 8323460620425330688 1 +8325227661920133120 8325227661920133120 8325227661920133120 8325227661920133120 1 +8332670681629106176 8332670681629106176 8332670681629106176 8332670681629106176 1 +8333523087360901120 8333523087360901120 8333523087360901120 8333523087360901120 1 +8337549596011102208 8337549596011102208 8337549596011102208 8337549596011102208 1 +8345435427356090368 8345435427356090368 8345435427356090368 8345435427356090368 1 +835 835 835 835 1 +8351163199364390912 8351163199364390912 8351163199364390912 8351163199364390912 1 +8362046808797306880 8362046808797306880 8362046808797306880 8362046808797306880 1 +8365058996333953024 8365058996333953024 8365058996333953024 8365058996333953024 1 +8367680396909404160 8367680396909404160 8367680396909404160 8367680396909404160 1 +8368012468775608320 8368012468775608320 8368012468775608320 8368012468775608320 1 +837 837 837 837 1 +8371939471056470016 8371939471056470016 8371939471056470016 8371939471056470016 1 +8372408423196270592 8372408423196270592 8372408423196270592 8372408423196270592 1 +8372588378498777088 8372588378498777088 8372588378498777088 8372588378498777088 1 +8374321007870836736 8374321007870836736 8374321007870836736 8374321007870836736 1 +8376440110255243264 8376440110255243264 8376440110255243264 8376440110255243264 1 +8383159090746204160 8383159090746204160 8383159090746204160 8383159090746204160 1 +8388363436324085760 8388363436324085760 8388363436324085760 8388363436324085760 1 +8391407951622815744 8391407951622815744 8391407951622815744 8391407951622815744 1 +8391785334471589888 8391785334471589888 8391785334471589888 8391785334471589888 1 +8396433451610652672 8396433451610652672 8396433451610652672 8396433451610652672 1 +8398862954249560064 8398862954249560064 8398862954249560064 8398862954249560064 1 +8407869317250220032 8407869317250220032 8407869317250220032 8407869317250220032 1 +8410599906334097408 8410599906334097408 8410599906334097408 8410599906334097408 1 +8411494452500930560 8411494452500930560 8411494452500930560 8411494452500930560 1 +8415171956168417280 8415171956168417280 8415171956168417280 8415171956168417280 1 +8416121695917498368 8416121695917498368 8416121695917498368 8416121695917498368 1 +8417381121663746048 8417381121663746048 8417381121663746048 8417381121663746048 1 +8419958579638157312 8419958579638157312 8419958579638157312 8419958579638157312 1 +8424515140664360960 8424515140664360960 8424515140664360960 8424515140664360960 1 +8435912708683087872 8435912708683087872 8435912708683087872 8435912708683087872 1 +845 845 845 845 1 +8451612303224520704 8451612303224520704 8451612303224520704 8451612303224520704 1 +8454154705460666368 8454154705460666368 8454154705460666368 8454154705460666368 1 +8455496814886002688 8455496814886002688 8455496814886002688 8455496814886002688 1 +8457906374051020800 8457906374051020800 8457906374051020800 8457906374051020800 1 +8461498293348065280 8461498293348065280 8461498293348065280 8461498293348065280 1 +8463868417649524736 8463868417649524736 8463868417649524736 8463868417649524736 1 +8467976965865799680 8467976965865799680 8467976965865799680 8467976965865799680 1 +8470141334513098752 8470141334513098752 8470141334513098752 8470141334513098752 1 +8472429318602268672 8472429318602268672 8472429318602268672 8472429318602268672 1 +8473699639908261888 8473699639908261888 8473699639908261888 8473699639908261888 1 +8487573502287478784 8487573502287478784 8487573502287478784 8487573502287478784 1 +8489584373231919104 8489584373231919104 8489584373231919104 8489584373231919104 1 +8489735221193138176 8489735221193138176 8489735221193138176 8489735221193138176 1 +85 85 85 85 1 +8501910015960735744 8501910015960735744 8501910015960735744 8501910015960735744 1 +8508401924853850112 8508401924853850112 8508401924853850112 8508401924853850112 1 +8509508263705477120 8509508263705477120 8509508263705477120 8509508263705477120 1 +8514851182589771776 8514851182589771776 8514851182589771776 8514851182589771776 1 +8514979402185596928 8514979402185596928 8514979402185596928 8514979402185596928 1 +8515682078777081856 8515682078777081856 8515682078777081856 8515682078777081856 1 +8518454006987948032 8518454006987948032 8518454006987948032 8518454006987948032 1 +8519937082746634240 8519937082746634240 8519937082746634240 8519937082746634240 1 +8523972434954510336 8523972434954510336 8523972434954510336 8523972434954510336 1 +8524940073536954368 8524940073536954368 8524940073536954368 8524940073536954368 1 +8525336514806317056 8525336514806317056 8525336514806317056 8525336514806317056 1 +8525894870444638208 8525894870444638208 8525894870444638208 8525894870444638208 1 +8532016240026279936 8532016240026279936 8532016240026279936 8532016240026279936 1 +8536948829863198720 8536948829863198720 8536948829863198720 8536948829863198720 1 +8540237852367446016 8540237852367446016 8540237852367446016 8540237852367446016 1 +8543177193114779648 8543177193114779648 8543177193114779648 8543177193114779648 1 +8547243497773457408 8547243497773457408 8547243497773457408 8547243497773457408 1 +8551446856960942080 8551446856960942080 8551446856960942080 8551446856960942080 1 +8553195689344991232 8553195689344991232 8553195689344991232 8553195689344991232 1 +8554899472487596032 8554899472487596032 8554899472487596032 8554899472487596032 1 +8555933456197828608 8555933456197828608 8555933456197828608 8555933456197828608 1 +8555948987770511360 8555948987770511360 8555948987770511360 8555948987770511360 1 +8557218322962644992 8557218322962644992 8557218322962644992 8557218322962644992 1 +8558000156325707776 8558000156325707776 8558000156325707776 8558000156325707776 1 +8560526613401714688 8560526613401714688 8560526613401714688 8560526613401714688 1 +8569030475428511744 8569030475428511744 8569030475428511744 8569030475428511744 1 +8570983266408103936 8570983266408103936 8570983266408103936 8570983266408103936 1 +8571268359622172672 8571268359622172672 8571268359622172672 8571268359622172672 1 +8573305425181941760 8573305425181941760 8573305425181941760 8573305425181941760 1 +8577096957495025664 8577096957495025664 8577096957495025664 8577096957495025664 1 +8579974641030365184 8579974641030365184 8579974641030365184 8579974641030365184 1 +8583916402383601664 8583916402383601664 8583916402383601664 8583916402383601664 1 +8613562211893919744 8613562211893919744 8613562211893919744 8613562211893919744 1 +8625937019655200768 8625937019655200768 8625937019655200768 8625937019655200768 1 +8631515095562887168 8631515095562887168 8631515095562887168 8631515095562887168 1 +8637720762289659904 8637720762289659904 8637720762289659904 8637720762289659904 1 +8639254009546055680 8639254009546055680 8639254009546055680 8639254009546055680 1 +8641221723991433216 8641221723991433216 8641221723991433216 8641221723991433216 1 +8643198489997254656 8643198489997254656 8643198489997254656 8643198489997254656 1 +8644602243484803072 8644602243484803072 8644602243484803072 8644602243484803072 1 +8649296591032172544 8649296591032172544 8649296591032172544 8649296591032172544 1 +8652485812846567424 8652485812846567424 8652485812846567424 8652485812846567424 1 +8656571350884048896 8656571350884048896 8656571350884048896 8656571350884048896 1 +8660248367767076864 8660248367767076864 8660248367767076864 8660248367767076864 1 +8665969966920990720 8665969966920990720 8665969966920990720 8665969966920990720 1 +8666178591503564800 8666178591503564800 8666178591503564800 8666178591503564800 1 +8677632093825916928 8677632093825916928 8677632093825916928 8677632093825916928 1 +8677794924343164928 8677794924343164928 8677794924343164928 8677794924343164928 1 +868 868 868 868 1 +8682955459667951616 8682955459667951616 8682955459667951616 8682955459667951616 1 +8687042963221159936 8687042963221159936 8687042963221159936 8687042963221159936 1 +8688483860094599168 8688483860094599168 8688483860094599168 8688483860094599168 1 +8693036785094565888 8693036785094565888 8693036785094565888 8693036785094565888 1 +8697823501349609472 8697823501349609472 8697823501349609472 8697823501349609472 1 +8698055291501543424 8698055291501543424 8698055291501543424 8698055291501543424 1 +8708232769657815040 8708232769657815040 8708232769657815040 8708232769657815040 1 +8708845895460577280 8708845895460577280 8708845895460577280 8708845895460577280 1 +871 871 871 871 1 +8714829359200747520 8714829359200747520 8714829359200747520 8714829359200747520 1 +8716401555586727936 8716401555586727936 8716401555586727936 8716401555586727936 1 +8720504651219001344 8720504651219001344 8720504651219001344 8720504651219001344 1 +8723248113030782976 8723248113030782976 8723248113030782976 8723248113030782976 1 +873 873 873 873 1 +8731960288562044928 8731960288562044928 8731960288562044928 8731960288562044928 1 +8734584858442498048 8734584858442498048 8734584858442498048 8734584858442498048 1 +8736061027343859712 8736061027343859712 8736061027343859712 8736061027343859712 1 +874 874 874 874 1 +8752150411997356032 8752150411997356032 8752150411997356032 8752150411997356032 1 +8759089349412847616 8759089349412847616 8759089349412847616 8759089349412847616 1 +8759184090543857664 8759184090543857664 8759184090543857664 8759184090543857664 1 +8760285623204290560 8760285623204290560 8760285623204290560 8760285623204290560 1 +8761174805938331648 8761174805938331648 8761174805938331648 8761174805938331648 1 +8769199243315814400 8769199243315814400 8769199243315814400 8769199243315814400 1 +8773222500321361920 8773222500321361920 8773222500321361920 8773222500321361920 1 +8775009214012456960 8775009214012456960 8775009214012456960 8775009214012456960 1 +8779073705407963136 8779073705407963136 8779073705407963136 8779073705407963136 1 +8779711700787298304 8779711700787298304 8779711700787298304 8779711700787298304 1 +878 878 878 878 1 +8780196485890555904 8780196485890555904 8780196485890555904 8780196485890555904 1 +8782900615468302336 8782900615468302336 8782900615468302336 8782900615468302336 1 +8783241818558193664 8783241818558193664 8783241818558193664 8783241818558193664 1 +8785153741735616512 8785153741735616512 8785153741735616512 8785153741735616512 1 +8792059919353348096 8792059919353348096 8792059919353348096 8792059919353348096 1 +8793387410919038976 8793387410919038976 8793387410919038976 8793387410919038976 1 +8795069490394882048 8795069490394882048 8795069490394882048 8795069490394882048 1 +8806507556248731648 8806507556248731648 8806507556248731648 8806507556248731648 1 +8808467247666241536 8808467247666241536 8808467247666241536 8808467247666241536 1 +8811693967537774592 8811693967537774592 8811693967537774592 8811693967537774592 1 +8815398225009967104 8815398225009967104 8815398225009967104 8815398225009967104 1 +8817665768680906752 8817665768680906752 8817665768680906752 8817665768680906752 1 +8822384228057604096 8822384228057604096 8822384228057604096 8822384228057604096 1 +8825059717746376704 8825059717746376704 8825059717746376704 8825059717746376704 1 +8829545979081744384 8829545979081744384 8829545979081744384 8829545979081744384 1 +883 883 883 883 1 +8836228556823977984 8836228556823977984 8836228556823977984 8836228556823977984 1 +8837420822750314496 8837420822750314496 8837420822750314496 8837420822750314496 1 +8849475396952514560 8849475396952514560 8849475396952514560 8849475396952514560 1 +8850055384477401088 8850055384477401088 8850055384477401088 8850055384477401088 1 +8853989376829833216 8853989376829833216 8853989376829833216 8853989376829833216 1 +8854495099223375872 8854495099223375872 8854495099223375872 8854495099223375872 1 +8854677881758162944 8854677881758162944 8854677881758162944 8854677881758162944 1 +8854715632851345408 8854715632851345408 8854715632851345408 8854715632851345408 1 +8856674723376668672 8856674723376668672 8856674723376668672 8856674723376668672 1 +8868529429494071296 8868529429494071296 8868529429494071296 8868529429494071296 1 +8871707618793996288 8871707618793996288 8871707618793996288 8871707618793996288 1 +8875745082589929472 8875745082589929472 8875745082589929472 8875745082589929472 1 +888 888 888 888 1 +8895174927321243648 8895174927321243648 8895174927321243648 8895174927321243648 1 +8896237972875370496 8896237972875370496 8896237972875370496 8896237972875370496 1 +8897901899039473664 8897901899039473664 8897901899039473664 8897901899039473664 1 +8899122608190930944 8899122608190930944 8899122608190930944 8899122608190930944 1 +8900180888218329088 8900180888218329088 8900180888218329088 8900180888218329088 1 +8900351886974279680 8900351886974279680 8900351886974279680 8900351886974279680 1 +8900545829211299840 8900545829211299840 8900545829211299840 8900545829211299840 1 +8905330479248064512 8905330479248064512 8905330479248064512 8905330479248064512 1 +8910706980937261056 8910706980937261056 8910706980937261056 8910706980937261056 1 +8920344895701393408 8920344895701393408 8920344895701393408 8920344895701393408 1 +8920533610804609024 8920533610804609024 8920533610804609024 8920533610804609024 1 +8927691194719174656 8927691194719174656 8927691194719174656 8927691194719174656 1 +8928133990107881472 8928133990107881472 8928133990107881472 8928133990107881472 1 +8935252708196999168 8935252708196999168 8935252708196999168 8935252708196999168 1 +8936639033158410240 8936639033158410240 8936639033158410240 8936639033158410240 1 +8939431770838810624 8939431770838810624 8939431770838810624 8939431770838810624 1 +8945004737083555840 8945004737083555840 8945004737083555840 8945004737083555840 1 +8945302550165004288 8945302550165004288 8945302550165004288 8945302550165004288 1 +8962097525980225536 8962097525980225536 8962097525980225536 8962097525980225536 1 +8972161729142095872 8972161729142095872 8972161729142095872 8972161729142095872 1 +8979012655944220672 8979012655944220672 8979012655944220672 8979012655944220672 1 +898 898 898 1796 2 +8983857919580209152 8983857919580209152 8983857919580209152 8983857919580209152 1 +8983912573761167360 8983912573761167360 8983912573761167360 8983912573761167360 1 +8984935029383389184 8984935029383389184 8984935029383389184 8984935029383389184 1 +8987827141270880256 8987827141270880256 8987827141270880256 8987827141270880256 1 +8991071342495531008 8991071342495531008 8991071342495531008 8991071342495531008 1 +8991442360387584000 8991442360387584000 8991442360387584000 8991442360387584000 1 +8994608999945125888 8994608999945125888 8994608999945125888 8994608999945125888 1 +8995562121346260992 8995562121346260992 8995562121346260992 8995562121346260992 1 +8996824426131390464 8996824426131390464 8996824426131390464 8996824426131390464 1 +9000633029632499712 9000633029632499712 9000633029632499712 9000633029632499712 1 +9001907486943993856 9001907486943993856 9001907486943993856 9001907486943993856 1 +9005866015985713152 9005866015985713152 9005866015985713152 9005866015985713152 1 +9016280522993975296 9016280522993975296 9016280522993975296 9016280522993975296 1 +9020143715350814720 9020143715350814720 9020143715350814720 9020143715350814720 1 +9023663198045544448 9023663198045544448 9023663198045544448 9023663198045544448 1 +9030480306789818368 9030480306789818368 9030480306789818368 9030480306789818368 1 +9038087402564657152 9038087402564657152 9038087402564657152 9038087402564657152 1 +9040958359122640896 9040958359122640896 9040958359122640896 9040958359122640896 1 +9043089884440068096 9043089884440068096 9043089884440068096 9043089884440068096 1 +9048002942653710336 9048002942653710336 9048002942653710336 9048002942653710336 1 +9048297564833079296 9048297564833079296 9048297564833079296 9048297564833079296 1 +9050032047355125760 9050032047355125760 9050032047355125760 9050032047355125760 1 +9053187076403060736 9053187076403060736 9053187076403060736 9053187076403060736 1 +9054887854393950208 9054887854393950208 9054887854393950208 9054887854393950208 1 +9062227900376203264 9062227900376203264 9062227900376203264 9062227900376203264 1 +9064847977742032896 9064847977742032896 9064847977742032896 9064847977742032896 1 +9067985867711291392 9067985867711291392 9067985867711291392 9067985867711291392 1 +9073672806863790080 9073672806863790080 9073672806863790080 9073672806863790080 1 +9075404705968840704 9075404705968840704 9075404705968840704 9075404705968840704 1 +9078604269481148416 9078604269481148416 9078604269481148416 9078604269481148416 1 +908 908 908 908 1 +9083076230151864320 9083076230151864320 9083076230151864320 9083076230151864320 1 +9083704659251798016 9083704659251798016 9083704659251798016 9083704659251798016 1 +9084402694981533696 9084402694981533696 9084402694981533696 9084402694981533696 1 +9085381906890203136 9085381906890203136 9085381906890203136 9085381906890203136 1 +9085434340468473856 9085434340468473856 9085434340468473856 9085434340468473856 1 +9086905513121890304 9086905513121890304 9086905513121890304 9086905513121890304 1 +9089435102788009984 9089435102788009984 9089435102788009984 9089435102788009984 1 +9091082386452684800 9091082386452684800 9091082386452684800 9091082386452684800 1 +9091085792947666944 9091085792947666944 9091085792947666944 9091085792947666944 1 +9094945190752903168 9094945190752903168 9094945190752903168 9094945190752903168 1 +9096395849845194752 9096395849845194752 9096395849845194752 9096395849845194752 1 +91 91 91 91 1 +9104574294205636608 9104574294205636608 9104574294205636608 9104574294205636608 1 +9107991000536498176 9107991000536498176 9107991000536498176 9107991000536498176 1 +9112400579327483904 9112400579327483904 9112400579327483904 9112400579327483904 1 +9114850402293882880 9114850402293882880 9114850402293882880 9114850402293882880 1 +9116137265342169088 9116137265342169088 9116137265342169088 9116137265342169088 1 +9117063974299148288 9117063974299148288 9117063974299148288 9117063974299148288 1 +9119046173224370176 9119046173224370176 9119046173224370176 9119046173224370176 1 +9123116008004288512 9123116008004288512 9123116008004288512 9123116008004288512 1 +913 913 913 913 1 +9131533983989358592 9131533983989358592 9131533983989358592 9131533983989358592 1 +9132009829414584320 9132009829414584320 9132009829414584320 9132009829414584320 1 +9136234417125007360 9136234417125007360 9136234417125007360 9136234417125007360 1 +9136548192574529536 9136548192574529536 9136548192574529536 9136548192574529536 1 +9139805788041134080 9139805788041134080 9139805788041134080 9139805788041134080 1 +914 914 914 914 1 +9148071980848742400 9148071980848742400 9148071980848742400 9148071980848742400 1 +9149216169284091904 9149216169284091904 9149216169284091904 9149216169284091904 1 +9165199002069458944 9165199002069458944 9165199002069458944 9165199002069458944 1 +9169248521377374208 9169248521377374208 9169248521377374208 9169248521377374208 1 +917 917 917 917 1 +9174894805640142848 9174894805640142848 9174894805640142848 9174894805640142848 1 +918 918 918 918 1 +9180098147855769600 9180098147855769600 9180098147855769600 9180098147855769600 1 +9182828596851990528 9182828596851990528 9182828596851990528 9182828596851990528 1 +9185458640237641728 9185458640237641728 9185458640237641728 9185458640237641728 1 +9185952983951343616 9185952983951343616 9185952983951343616 9185952983951343616 1 +9188173682239275008 9188173682239275008 9188173682239275008 9188173682239275008 1 +919 919 919 919 1 +9190466190353661952 9190466190353661952 9190466190353661952 9190466190353661952 1 +9191943992860327936 9191943992860327936 9191943992860327936 9191943992860327936 1 +9194388393453060096 9194388393453060096 9194388393453060096 9194388393453060096 1 +9199741683232399360 9199741683232399360 9199741683232399360 9199741683232399360 1 +9207107990561972224 9207107990561972224 9207107990561972224 9207107990561972224 1 +9207927479837319168 9207927479837319168 9207927479837319168 9207927479837319168 1 +9209153648361848832 9209153648361848832 9209153648361848832 9209153648361848832 1 +921 921 921 921 1 +9211455920344088576 9211455920344088576 9211455920344088576 9211455920344088576 1 +922 922 922 922 1 +923 923 923 923 1 +927 927 927 927 1 +928 928 928 928 1 +939 939 939 939 1 +94 94 94 94 1 +945 945 945 945 1 +947 947 947 947 1 +950 950 950 1900 2 +958 958 958 958 1 +961 961 961 961 1 +965 965 965 965 1 +967 967 967 967 1 +976 976 976 976 1 +979 979 979 979 1 +982 982 982 982 1 +987 987 987 987 1 +997 997 997 997 1 +999 999 999 999 1 +NULL NULL NULL NULL 0 diff --git ql/src/test/results/clientpositive/tez/vector_groupby6.q.out ql/src/test/results/clientpositive/tez/vector_groupby6.q.out new file mode 100644 index 0000000..eea8ad5 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby6.q.out @@ -0,0 +1,2029 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), t (type: tinyint), si (type: smallint), i (type: int) + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1), sum(_col1), min(_col2), max(_col2), sum(_col3), count(_col3), max(_col0) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: tinyint), _col2 (type: bigint), _col3 (type: smallint), _col4 (type: smallint), _col5 (type: bigint), _col6 (type: bigint), _col7 (type: bigint) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), sum(VALUE._col1), min(VALUE._col2), max(VALUE._col3), sum(VALUE._col4), count(VALUE._col5), max(VALUE._col6) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 36 36 -1307 -1307 -603273425 1 -6917607783359897600 +-6919476845891313664 124 124 8811 8811 710856472 1 -6919476845891313664 +-6920172215209426944 115 115 -26832 -26832 -764412063 1 -6920172215209426944 +-6921654334727036928 52 52 21673 21673 -1066775085 1 -6921654334727036928 +-6933565857643814912 -80 -80 NULL NULL 581259902 1 -6933565857643814912 +-6934304742087655424 77 77 NULL NULL 955171928 1 -6934304742087655424 +-6935038507792801792 55 55 -1928 -1928 174310705 1 -6935038507792801792 +-6935548339131138048 -85 -85 24858 24858 -1062159435 1 -6935548339131138048 +-6938706403992854528 -102 -102 30420 30420 980732494 1 -6938706403992854528 +-6941777546186579968 NULL NULL 21611 21611 121663320 1 -6941777546186579968 +-6947955278050181120 -63 -63 16357 16357 641695802 1 -6947955278050181120 +-6951350560260784128 -6 -6 12256 12256 1342923026 1 -6951350560260784128 +-6957946688477274112 -96 -96 28272 28272 1505168716 1 -6957946688477274112 +-6960947572095770624 -15 -15 -19343 -19343 1136976809 1 -6960947572095770624 +-6962271229404348416 -103 -103 -9734 -9734 1106995930 1 -6962271229404348416 +-6962292590214234112 -53 -53 20540 20540 -1147471772 1 -6962292590214234112 +-6968771079156654080 -7 -7 -25698 -25698 -939348081 1 -6968771079156654080 +-6968892545529896960 126 126 -16307 -16307 470993066 1 -6968892545529896960 +-6970396058557005824 81 81 2643 2643 2140632003 1 -6970396058557005824 +-6974654664348033024 -61 -61 26540 26540 -968377273 1 -6974654664348033024 +-6975459232300236800 -88 -88 16796 16796 1151752586 1 -6975459232300236800 +-6986178228432322560 60 60 18845 18845 -1369253050 1 -6986178228432322560 +-6988811476286873600 -53 -53 -15573 -15573 -1968097621 1 -6988811476286873600 +-6988970700649168896 -68 -68 NULL NULL -1230459100 1 -6988970700649168896 +-6992217501957169152 -32 -32 -32755 -32755 1472487454 1 -6992217501957169152 +-6997233584896229376 -118 -118 3486 3486 -76654979 1 -6997233584896229376 +-7000925438663041024 -115 -115 1755 1755 596045726 1 -7000925438663041024 +-7003696402314215424 -21 -21 -15348 -15348 -1458382451 1 -7003696402314215424 +-7011425384222244864 73 73 9017 9017 NULL 0 -7011425384222244864 +-7017212700635545600 115 115 20680 20680 304860245 1 -7017212700635545600 +-7020852530219171840 -104 -104 -25115 -25115 824836988 1 -7020852530219171840 +-7030489936116252672 58 58 24847 24847 1115197541 1 -7030489936116252672 +-7035132060308643840 -80 -80 21784 21784 NULL 0 -7035132060308643840 +-7036607470351654912 102 102 -31458 -31458 -1933192293 1 -7036607470351654912 +-7037375807670501376 20 20 1728 1728 -1168823523 1 -7037375807670501376 +-7037638331316469760 -104 -104 5093 5093 14573904 1 -7037638331316469760 +-7038455462786334720 74 74 343 343 524317972 1 -7038455462786334720 +-7040248820505149440 -82 -82 -10326 -10326 196581473 1 -7040248820505149440 +-7041362811802148864 -94 -94 9948 9948 -455114104 1 -7041362811802148864 +-7042183597114081280 121 121 22333 22333 658636280 1 -7042183597114081280 +-7046180371529351168 35 35 4397 4397 -117723745 1 -7046180371529351168 +-7049618574399692800 47 47 23441 23441 -978892011 1 -7049618574399692800 +-7052619594823221248 -46 -46 7821 7821 -1117358187 1 -7052619594823221248 +-7055619148037554176 22 22 -13008 -13008 -838656526 1 -7055619148037554176 +-7055760785575665664 53 53 -24478 -24478 759899363 1 -7055760785575665664 +-7057750467944931328 -26 -26 -10316 -10316 -71449585 1 -7057750467944931328 +-7058986555327307776 34 34 26796 26796 1942004879 1 -7058986555327307776 +-7063777488249085952 112 112 21991 21991 -507250351 1 -7063777488249085952 +-7078068944081002496 -101 -101 -32533 -32533 2013178181 1 -7078068944081002496 +-7079898537463537664 122 122 -31711 -31711 -1205034356 1 -7079898537463537664 +-7081500255163727872 52 52 -18283 -18283 -1969751342 1 -7081500255163727872 +-7083646746411720704 -24 -24 NULL NULL 780938234 1 -7083646746411720704 +-7085247548404178944 -84 -84 -31828 -31828 1640192895 1 -7085247548404178944 +-7093825013581979648 NULL NULL -17607 -17607 -628790799 1 -7093825013581979648 +-7094189393339678720 -91 -91 20349 20349 1796486238 1 -7094189393339678720 +-7094827141662539776 -42 -42 -24805 -24805 -632803945 1 -7094827141662539776 +-7104310188119834624 -69 -69 -10569 -10569 -1928197479 1 -7104310188119834624 +-7106210529681350656 -91 -91 30585 30585 1718167702 1 -7106210529681350656 +-7109790267244814336 22 22 11617 11617 -291577538 1 -7109790267244814336 +-7115054815375073280 -88 -88 -29977 -29977 NULL 0 -7115054815375073280 +-7120456708338688000 117 117 NULL NULL 1751468853 1 -7120456708338688000 +-7127548949860818944 -28 -28 28089 28089 260463232 1 -7127548949860818944 +-7138415011665043456 111 111 -29811 -29811 -1345391395 1 -7138415011665043456 +-7139677575412686848 -85 -85 -15762 -15762 -1556127172 1 -7139677575412686848 +-7140008543769042944 69 69 -30974 -30974 -1938290238 1 -7140008543769042944 +-7144791190333546496 -37 -37 -13426 -13426 -876122064 1 -7144791190333546496 +-7145585429014888448 26 26 29245 29245 -817093900 1 -7145585429014888448 +-7147490721376591872 25 25 -10312 -10312 1759741857 1 -7147490721376591872 +-7152177800841502720 -79 -79 -12463 -12463 -37773326 1 -7152177800841502720 +-7155539549555105792 -86 -86 -22421 -22421 -345542922 1 -7155539549555105792 +-7158472098920390656 -127 -127 -31998 -31998 -71305062 1 -7158472098920390656 +-7159700138947862528 5 5 26134 26134 -76430653 1 -7159700138947862528 +-7161165959057334272 56 56 -22949 -22949 1352649032 1 -7161165959057334272 +-7162299524557471744 84 84 NULL NULL 1813010930 1 -7162299524557471744 +-7172594404186693632 -105 -105 2234 2234 -1949359208 1 -7172594404186693632 +-7185369278665605120 73 73 1864 1864 -374337252 1 -7185369278665605120 +-7192529627893858304 -34 -34 10425 10425 -45439614 1 -7192529627893858304 +-7194281951646187520 8 8 5661 5661 -797889292 1 -7194281951646187520 +-7195217207163166720 85 85 -1767 -1767 -1977762695 1 -7195217207163166720 +-7198372044947275776 -101 -101 -28941 -28941 -1424770359 1 -7198372044947275776 +-7199983995864711168 69 69 -16570 -16570 -1870912732 1 -7199983995864711168 +-7201085131997011968 67 67 4111 4111 -1356601829 1 -7201085131997011968 +-7209060152494817280 NULL NULL -23284 -23284 -2071851852 1 -7209060152494817280 +-7213775605408178176 -33 -33 -32462 -32462 1222935237 1 -7213775605408178176 +-7220731681653604352 29 29 27796 27796 -851663638 1 -7220731681653604352 +-7221474017515347968 -75 -75 23220 23220 -1421860505 1 -7221474017515347968 +-7228589258642194432 -73 -73 NULL NULL 1958701268 1 -7228589258642194432 +-7240213957902663680 33 33 NULL NULL -841634659 1 -7240213957902663680 +-7242345057866285056 54 54 16799 16799 548375173 1 -7242345057866285056 +-7245872320493322240 -102 -102 4781 4781 -134686276 1 -7245872320493322240 +-7246123871306244096 -108 -108 -25959 -25959 1686537335 1 -7246123871306244096 +-7255010240787030016 18 18 2612 2612 1373871781 1 -7255010240787030016 +-7255686273677328384 45 45 -21005 -21005 2100839074 1 -7255686273677328384 +-7262049693594943488 79 79 -6142 -6142 1295073553 1 -7262049693594943488 +-7262384251828518912 109 109 NULL NULL 1647411522 1 -7262384251828518912 +-7262798781688651776 9 9 32212 32212 -423190290 1 -7262798781688651776 +-7263060340185194496 10 10 -30669 -30669 1590744669 1 -7263060340185194496 +-7265998318110711808 8 8 6144 6144 1437057145 1 -7265998318110711808 +-7266719102957125632 42 42 6036 6036 960187615 1 -7266719102957125632 +-7270034223527993344 NULL NULL 2542 2542 -1984079412 1 -7270034223527993344 +-7273590251991162880 84 84 4332 4332 994798486 1 -7273590251991162880 +-7273694358642851840 76 76 -25155 -25155 2009890220 1 -7273694358642851840 +-7276111129363046400 126 126 2683 2683 -1462604138 1 -7276111129363046400 +-7287583262310350848 36 36 31099 31099 -1108723753 1 -7287583262310350848 +-7292078334519894016 -28 -28 -3757 -3757 -785261879 1 -7292078334519894016 +-7296096276653391872 -6 -6 13632 13632 160290374 1 -7296096276653391872 +-7303847963918393344 -78 -78 13795 13795 -1769423338 1 -7303847963918393344 +-7319315187617587200 -54 -54 11077 11077 -235238928 1 -7319315187617587200 +-7326863346317598720 49 49 -5282 -5282 958866509 1 -7326863346317598720 +-7328087811698909184 -54 -54 -21795 -21795 -1017629298 1 -7328087811698909184 +-7329767178250018816 -8 -8 -23462 -23462 -448060992 1 -7329767178250018816 +-7329807949048193024 -69 -69 1519 1519 -369183838 1 -7329807949048193024 +-7330203470474985472 54 54 29015 29015 -1065248998 1 -7330203470474985472 +-7330413050756235264 -31 -31 14335 14335 -2024003241 1 -7330413050756235264 +-7333278178640953344 74 74 -15819 -15819 1393506704 1 -7333278178640953344 +-7333362172439035904 25 25 -11675 -11675 -835002549 1 -7333362172439035904 +-7340231535789727744 29 29 -14815 -14815 526502851 1 -7340231535789727744 +-7344146703223496704 -26 -26 -30907 -30907 789871166 1 -7344146703223496704 +-7344947507044466688 -77 -77 -19912 -19912 -340951385 1 -7344947507044466688 +-7345562788132315136 -6 -6 -16647 -16647 1750433588 1 -7345562788132315136 +-7356685674003021824 118 118 -21389 -21389 1319589591 1 -7356685674003021824 +-7357888618985873408 0 0 27116 27116 NULL 0 -7357888618985873408 +-7362189611124563968 -57 -57 11804 11804 -496915240 1 -7362189611124563968 +-7366430883634929664 -32 -32 20746 20746 1592153312 1 -7366430883634929664 +-7378096180613840896 37 37 29639 29639 218917585 1 -7378096180613840896 +-7380731416973295616 -94 -94 -22554 -22554 -1114208576 1 -7380731416973295616 +-7395343938785738752 96 96 28011 28011 830944953 1 -7395343938785738752 +-7395553021620731904 18 18 NULL NULL 1056997296 1 -7395553021620731904 +-7399631791131074560 92 92 -11110 -11110 -932921363 1 -7399631791131074560 +-7404052043914526720 -10 -10 29023 29023 -1349876582 1 -7404052043914526720 +-7404057145074712576 55 55 -15109 -15109 56316391 1 -7404057145074712576 +-7409317158045442048 NULL NULL 2955 2955 -1463884101 1 -7409317158045442048 +-7409653086454030336 77 77 -6884 -6884 -624029057 1 -7409653086454030336 +-7412431471807283200 113 113 27982 27982 622925063 1 -7412431471807283200 +-7413317118463164416 -12 -12 -9566 -9566 -507015439 1 -7413317118463164416 +-7419068456205385728 112 112 -5635 -5635 -4393552 1 -7419068456205385728 +-7420448501073051648 -8 -8 10600 10600 -1155174991 1 -7420448501073051648 +-7425160895830573056 -98 -98 22678 22678 -765102534 1 -7425160895830573056 +-7429331808102899712 96 96 9264 9264 -1057522129 1 -7429331808102899712 +-7433265617153343488 -69 -69 -20946 -20946 NULL 0 -7433265617153343488 +-7442593976514420736 -19 -19 -29228 -29228 1851805558 1 -7442593976514420736 +-7444070205513138176 -28 -28 26108 26108 -520725912 1 -7444070205513138176 +-7451660755269853184 97 97 10217 10217 1338047392 1 -7451660755269853184 +-7453525026342617088 -122 -122 4568 4568 1505665168 1 -7453525026342617088 +-7455898404374921216 17 17 18558 18558 1544482684 1 -7455898404374921216 +-7456869587112255488 NULL NULL -14783 -14783 -224865887 1 -7456869587112255488 +-7461750143936897024 -70 -70 -695 -695 -1343425152 1 -7461750143936897024 +-7464270453557993472 116 116 -12647 -12647 -1439293109 1 -7464270453557993472 +-7469660864676585472 -40 -40 25847 25847 85774760 1 -7469660864676585472 +-7470307155642245120 -95 -95 17489 17489 1137950964 1 -7470307155642245120 +-7476082621253402624 -29 -29 23928 23928 1083855659 1 -7476082621253402624 +-7483435388852559872 85 85 28041 28041 -914329027 1 -7483435388852559872 +-7488345684795342848 123 123 -458 -458 -1668736016 1 -7488345684795342848 +-7488415863027367936 35 35 28128 28128 1286367391 1 -7488415863027367936 +-7494411162675691520 -46 -46 -21358 -21358 1595326878 1 -7494411162675691520 +-7496839341561954304 -92 -92 21849 21849 868714547 1 -7496839341561954304 +-7497303453253402624 66 66 -26565 -26565 1415647436 1 -7497303453253402624 +-7500200359698907136 -2 -2 -5216 -5216 -423074450 1 -7500200359698907136 +-7501803640821456896 -2 -2 -27807 -27807 1809795770 1 -7501803640821456896 +-7506254246954500096 94 94 23766 23766 -511198293 1 -7506254246954500096 +-7507424948896415744 37 37 -14093 -14093 -828522499 1 -7507424948896415744 +-7507578199583694848 2 2 32133 32133 -1784633305 1 -7507578199583694848 +-7510418793070075904 -35 -35 27983 27983 975932228 1 -7510418793070075904 +-7511202710200885248 -84 -84 -22960 -22960 -2042647152 1 -7511202710200885248 +-7511952204985049088 105 105 -25664 -25664 -1351437382 1 -7511952204985049088 +-7512289590991544320 -85 -85 19350 19350 1409872356 1 -7512289590991544320 +-7512297136103800832 -36 -36 18439 18439 -1180153422 1 -7512297136103800832 +-7515996202498473984 -17 -17 26296 26296 344989592 1 -7515996202498473984 +-7524170566881329152 98 98 -27358 -27358 -1908696083 1 -7524170566881329152 +-7526793959592140800 48 48 28309 28309 -570632618 1 -7526793959592140800 +-7528526815026692096 NULL NULL -3896 -3896 2125479431 1 -7528526815026692096 +-7532751268425261056 100 100 -26433 -26433 1752520642 1 -7532751268425261056 +-7535857766791577600 -34 -34 11168 11168 1846184880 1 -7535857766791577600 +-7535958203887706112 NULL NULL -15862 -15862 656636097 1 -7535958203887706112 +-7536330682873937920 -87 -87 -134 -134 -1289501869 1 -7536330682873937920 +-7540104552219860992 -22 -22 -14675 -14675 1081187102 1 -7540104552219860992 +-7541860097718902784 -61 -61 -11571 -11571 -625788713 1 -7541860097718902784 +-7542857121910046720 79 79 20872 20872 1495575878 1 -7542857121910046720 +-7547245548870025216 75 75 -716 -716 1784291853 1 -7547245548870025216 +-7547432761381339136 90 90 2338 2338 434679307 1 -7547432761381339136 +-7551394356730339328 22 22 -6460 -6460 1179528290 1 -7551394356730339328 +-7557017910095650816 38 38 -14661 -14661 195281533 1 -7557017910095650816 +-7558524160894427136 35 35 18372 18372 375106978 1 -7558524160894427136 +-7571293705217687552 -89 -89 -10935 -10935 1240875512 1 -7571293705217687552 +-7571957778022178816 -43 -43 13595 13595 1042184256 1 -7571957778022178816 +-7572262898020278272 -59 -59 23683 23683 -1875699183 1 -7572262898020278272 +-7572962089372991488 5 5 30730 30730 -841268868 1 -7572962089372991488 +-7576194692683563008 -115 -115 28393 28393 2080249726 1 -7576194692683563008 +-7593363318079610880 -56 -56 -23387 -23387 -1811563127 1 -7593363318079610880 +-7594824008626372608 -57 -57 -24942 -24942 824743780 1 -7594824008626372608 +-7598782894648565760 90 90 12762 12762 -983874694 1 -7598782894648565760 +-7600138468036386816 53 53 17436 17436 -722294882 1 -7600138468036386816 +-7603467428164009984 0 0 NULL NULL -619311578 1 -7603467428164009984 +-7603569103205916672 -100 -100 -18358 -18358 390124976 1 -7603569103205916672 +-7610137349734883328 -46 -46 7356 7356 683320224 1 -7610137349734883328 +-7611584069753552896 -42 -42 -29864 -29864 -1765795567 1 -7611584069753552896 +-7612455481940246528 -92 -92 1558 1558 NULL 0 -7612455481940246528 +-7612466483992051712 29 29 39 39 -1969235238 1 -7612466483992051712 +-7616522969329262592 58 58 -2254 -2254 1924741890 1 -7616522969329262592 +-7617860842651017216 -101 -101 718 718 386741352 1 -7617860842651017216 +-7623047151287754752 -66 -66 -23325 -23325 -1050029724 1 -7623047151287754752 +-7623359796281999360 51 51 -27259 -27259 1829544791 1 -7623359796281999360 +-7623405558242500608 -103 -103 5235 5235 283322761 1 -7623405558242500608 +-7624057992767782912 -109 -109 31986 31986 -1218581850 1 -7624057992767782912 +-7629401308029976576 -17 -17 -12575 -12575 -1655030261 1 -7629401308029976576 +-7637494527844343808 52 52 -27372 -27372 2005560498 1 -7637494527844343808 +-7637755520917741568 -127 -127 -10662 -10662 648935848 1 -7637755520917741568 +-7642381493746483200 -72 -72 NULL NULL 583458404 1 -7642381493746483200 +-7647020450676146176 76 76 17286 17286 609917172 1 -7647020450676146176 +-7661192563533062144 -21 -21 NULL NULL -1319753324 1 -7661192563533062144 +-7661250850555633664 -106 -106 -25689 -25689 -693249555 1 -7661250850555633664 +-7663293054873812992 -56 -56 -6518 -6518 -1478812842 1 -7663293054873812992 +-7665186441284968448 NULL NULL -20218 -20218 791096295 1 -7665186441284968448 +-7668388017287020544 2 2 24244 24244 NULL 0 -7668388017287020544 +-7669169138124275712 57 57 -19535 -19535 -1484033125 1 -7669169138124275712 +-7673901622181953536 -16 -16 13154 13154 1141303816 1 -7673901622181953536 +-7679894005808693248 -67 -67 9943 9943 -306214368 1 -7679894005808693248 +-7686220526274502656 -51 -51 -20182 -20182 -892839693 1 -7686220526274502656 +-7687052294777208832 52 52 28360 28360 -1989778424 1 -7687052294777208832 +-7692192232238678016 90 90 -25683 -25683 745725681 1 -7692192232238678016 +-7695491171376291840 -122 -122 -15748 -15748 1225312439 1 -7695491171376291840 +-7700203302632210432 13 13 17531 17531 1805308672 1 -7700203302632210432 +-7703540456272994304 127 127 2458 2458 1312270193 1 -7703540456272994304 +-7707242953271500800 -34 -34 -13335 -13335 1568180994 1 -7707242953271500800 +-7707867749256445952 -98 -98 16734 16734 -596963345 1 -7707867749256445952 +-7708932208121225216 74 74 -17840 -17840 307333276 1 -7708932208121225216 +-7709958788604936192 -104 -104 5191 5191 595836061 1 -7709958788604936192 +-7712425776235274240 115 115 -26932 -26932 -1432316859 1 -7712425776235274240 +-7720966287634112512 -28 -28 -18659 -18659 NULL 0 -7720966287634112512 +-7739424919198187520 -90 -90 -12103 -12103 712625264 1 -7739424919198187520 +-7744462446680375296 -31 -31 17958 17958 2029657999 1 -7744462446680375296 +-7751265769984491520 74 74 -28914 -28914 700341242 1 -7751265769984491520 +-7751427073017544704 -79 -79 31581 31581 615619268 1 -7751427073017544704 +-7753051494275432448 -2 -2 28921 28921 -1599905147 1 -7753051494275432448 +-7759238919361888256 -122 -122 30119 30119 -2065287410 1 -7759238919361888256 +-7759425383684849664 46 46 NULL NULL -938762477 1 -7759425383684849664 +-7772064021830574080 -42 -42 NULL NULL -1201785350 1 -7772064021830574080 +-7773957003968675840 48 48 -9943 -9943 270090617 1 -7773957003968675840 +-7777884099756122112 -93 -93 16217 16217 914583645 1 -7777884099756122112 +-7778829032042790912 18 18 -26064 -26064 -807242371 1 -7778829032042790912 +-7779270198785875968 83 83 -15129 -15129 -1242677422 1 -7779270198785875968 +-7782344916178796544 92 92 -17356 -17356 -1213081886 1 -7782344916178796544 +-7784419454650843136 54 54 -3179 -3179 -1210907929 1 -7784419454650843136 +-7792903881635938304 -76 -76 27523 27523 -191899537 1 -7792903881635938304 +-7793447076762345472 56 56 17942 17942 1196151988 1 -7793447076762345472 +-7797149520019062784 6 6 -26439 -26439 -1262842192 1 -7797149520019062784 +-7797151404935618560 123 123 -14928 -14928 -507955215 1 -7797151404935618560 +-7800879252150779904 108 108 -8578 -8578 1352739140 1 -7800879252150779904 +-7802538500225777664 -11 -11 31334 31334 215759857 1 -7802538500225777664 +-7804116532814151680 -109 -109 11159 11159 -1146649990 1 -7804116532814151680 +-7805985795815342080 9 9 -11679 -11679 -2076886223 1 -7805985795815342080 +-7811060170911375360 -2 -2 -26128 -26128 1513689502 1 -7811060170911375360 +-7818454479651135488 79 79 -4491 -4491 -559270035 1 -7818454479651135488 +-7819437864839495680 118 118 -23389 -23389 -370093295 1 -7819437864839495680 +-7822452149325094912 69 69 24253 24253 60847311 1 -7822452149325094912 +-7824788571789279232 -105 -105 -14667 -14667 -1406691044 1 -7824788571789279232 +-7827420207675105280 -97 -97 6197 6197 -36682325 1 -7827420207675105280 +-7831320202242228224 -32 -32 -6637 -6637 -1726479726 1 -7831320202242228224 +-7831595638727565312 29 29 -7738 -7738 1626884085 1 -7831595638727565312 +-7833618000492109824 92 92 -27715 -27715 589546540 1 -7833618000492109824 +-7835907977757245440 4 4 -11165 -11165 -87470856 1 -7835907977757245440 +-7838598833900584960 95 95 -20789 -20789 1028204648 1 -7838598833900584960 +-7840338174858199040 66 66 3245 3245 -300717684 1 -7840338174858199040 +-7845896959112658944 78 78 -3061 -3061 -1688105985 1 -7845896959112658944 +-7848043121524228096 101 101 30222 30222 1667594394 1 -7848043121524228096 +-7849504559236210688 110 110 -23248 -23248 -2052386812 1 -7849504559236210688 +-7858505678035951616 34 34 -32240 -32240 NULL 0 -7858505678035951616 +-7866079955473989632 96 96 NULL NULL 196980893 1 -7866079955473989632 +-7867219225874571264 NULL NULL -11123 -11123 -1078579367 1 -7867219225874571264 +-7868306678534193152 103 103 18395 18395 -2144138362 1 -7868306678534193152 +-7873753603299540992 93 93 NULL NULL -971698865 1 -7873753603299540992 +-7875953567586451456 -99 -99 -29601 -29601 816439627 1 -7875953567586451456 +-7877598807023386624 -48 -48 -22938 -22938 340384179 1 -7877598807023386624 +-7878145001776152576 -25 -25 26744 26744 -1489628668 1 -7878145001776152576 +-7879864376629567488 93 93 24677 24677 -472303419 1 -7879864376629567488 +-7881262505761710080 51 51 -1034 -1034 -103219371 1 -7881262505761710080 +-7881351200983613440 14 14 -20180 -20180 720703232 1 -7881351200983613440 +-7883252982752665600 -75 -75 -12782 -12782 1136548971 1 -7883252982752665600 +-7884460946615984128 127 127 -14936 -14936 1772349172 1 -7884460946615984128 +-7888051992910274560 89 89 12045 12045 1818213677 1 -7888051992910274560 +-7892780594910871552 119 119 -12571 -12571 -779743333 1 -7892780594910871552 +-7893577088764174336 -71 -71 NULL NULL 268888160 1 -7893577088764174336 +-7894382303337832448 -66 -66 -24368 -24368 1832650234 1 -7894382303337832448 +-7895991410072928256 72 72 17394 17394 1467284000 1 -7895991410072928256 +-7902517224300036096 74 74 41 41 -950738312 1 -7902517224300036096 +-7903158849011843072 21 21 7128 7128 -217930632 1 -7903158849011843072 +-7904188195431661568 49 49 27697 27697 -442839889 1 -7904188195431661568 +-7907355742053883904 102 102 28247 28247 794783516 1 -7907355742053883904 +-7910019233726242816 96 96 1409 1409 -1259611508 1 -7910019233726242816 +-7911421221625077760 48 48 7401 7401 476704350 1 -7911421221625077760 +-7915999634274369536 -72 -72 -7178 -7178 1814570016 1 -7915999634274369536 +-7916510129632296960 26 26 23468 23468 -2136052026 1 -7916510129632296960 +-7928062266382778368 -54 -54 1436 1436 152654715 1 -7928062266382778368 +-7928440849566146560 -99 -99 -31352 -31352 -800975421 1 -7928440849566146560 +-7939634346485858304 -79 -79 4363 4363 1012843193 1 -7939634346485858304 +-7949309059286163456 -57 -57 11814 11814 88774647 1 -7949309059286163456 +-7949445503604604928 -87 -87 -17082 -17082 1695098246 1 -7949445503604604928 +-7953426740065312768 -11 -11 1847 1847 22308780 1 -7953426740065312768 +-7964801953178091520 -116 -116 -18867 -18867 661659208 1 -7964801953178091520 +-7966960765508280320 60 60 -19517 -19517 -884109192 1 -7966960765508280320 +-7978782649203228672 89 89 16250 16250 491016124 1 -7978782649203228672 +-7989766326847807488 -2 -2 8675 8675 -1731820254 1 -7989766326847807488 +-7998947380180819968 110 110 -9759 -9759 -136514115 1 -7998947380180819968 +-8007017894942638080 31 31 -31582 -31582 1219616145 1 -8007017894942638080 +-8013397854633648128 -98 -98 -18295 -18295 -1391183008 1 -8013397854633648128 +-8016589197379289088 -48 -48 4715 4715 -1721763321 1 -8016589197379289088 +-8017791189288869888 -101 -101 4447 4447 -2057666812 1 -8017791189288869888 +-8018511948141748224 NULL NULL 3523 3523 661380540 1 -8018511948141748224 +-8021859935185928192 -61 -61 32019 32019 1420099773 1 -8021859935185928192 +-8022573309127000064 -96 -96 28828 28828 1194243726 1 -8022573309127000064 +-8023708819947323392 35 35 24178 24178 198539698 1 -8023708819947323392 +-8028275725610909696 72 72 -28682 -28682 -1937640350 1 -8028275725610909696 +-8028910243475038208 -87 -87 22557 22557 873035819 1 -8028910243475038208 +-8030058711611629568 -99 -99 6734 6734 -752222556 1 -8030058711611629568 +-8034414142083170304 4 4 18984 18984 -267130580 1 -8034414142083170304 +-8046189486447017984 96 96 22603 22603 925032386 1 -8046189486447017984 +-8046238369820344320 -69 -69 -16027 -16027 819069589 1 -8046238369820344320 +-8047774491688255488 49 49 -25301 -25301 -1339495001 1 -8047774491688255488 +-8051395538179063808 NULL NULL 20969 20969 -469749219 1 -8051395538179063808 +-8051587217208967168 78 78 -9398 -9398 51376784 1 -8051587217208967168 +-8051871680800120832 -94 -94 -14229 -14229 NULL 0 -8051871680800120832 +-8054581198284668928 -6 -6 5601 5601 1395450272 1 -8054581198284668928 +-8067243114610532352 68 68 -9365 -9365 214068706 1 -8067243114610532352 +-8070535484085895168 45 45 -7865 -7865 829101712 1 -8070535484085895168 +-8076479329071955968 119 119 -12605 -12605 2017314998 1 -8076479329071955968 +-8082793390939193344 88 88 6761 6761 -1878838836 1 -8082793390939193344 +-8084716955963252736 64 64 21103 21103 -1609864597 1 -8084716955963252736 +-8086577583338061824 -33 -33 20120 20120 -340462064 1 -8086577583338061824 +-8088337436168830976 8 8 30839 30839 2124297747 1 -8088337436168830976 +-8099313480512716800 -103 -103 -3091 -3091 -392713245 1 -8099313480512716800 +-8103788088118018048 -106 -106 25835 25835 -533227056 1 -8103788088118018048 +-8104684579106914304 19 19 -17269 -17269 -1091003492 1 -8104684579106914304 +-8108693586698706944 118 118 -13603 -13603 -896261100 1 -8108693586698706944 +-8115963579415650304 NULL NULL 32092 32092 -951728053 1 -8115963579415650304 +-8117838333114212352 -18 -18 -19786 -19786 -1642207005 1 -8117838333114212352 +-8122639684164501504 -82 -82 -23630 -23630 1425456189 1 -8122639684164501504 +-8127494999848919040 -30 -30 -24670 -24670 1701817607 1 -8127494999848919040 +-8131997716860526592 91 91 -32364 -32364 -457341338 1 -8131997716860526592 +-8136227554401107968 14 14 12187 12187 127917714 1 -8136227554401107968 +-8140349174954893312 -38 -38 19894 19894 NULL 0 -8140349174954893312 +-8142667274351345664 -113 -113 32581 32581 453613037 1 -8142667274351345664 +-8147405381260345344 14 14 25381 25381 659397992 1 -8147405381260345344 +-8158011642485825536 NULL NULL -25344 -25344 NULL 0 -8158011642485825536 +-8161047750470279168 106 106 -32180 -32180 -621365995 1 -8161047750470279168 +-8172827216441573376 83 83 -29675 -29675 -113253627 1 -8172827216441573376 +-8182421179156905984 25 25 6980 6980 -1892816721 1 -8182421179156905984 +-8191825921746305024 -82 -82 16082 16082 703111607 1 -8191825921746305024 +-8194062064124362752 -96 -96 13845 13845 1482983157 1 -8194062064124362752 +-8203008052020879360 -68 -68 -29685 -29685 -1127100849 1 -8203008052020879360 +-8203075743525806080 93 93 15815 15815 -626484313 1 -8203075743525806080 +-8205148279289085952 -12 -12 27693 27693 768198315 1 -8205148279289085952 +-8214462866994339840 109 109 -5097 -5097 NULL 0 -8214462866994339840 +-8219876839318716416 -44 -44 30883 30883 1452244326 1 -8219876839318716416 +-8232763638546694144 -122 -122 24455 24455 -514010922 1 -8232763638546694144 +-8240034910581153792 56 56 5599 5599 -665623523 1 -8240034910581153792 +-8240684139569233920 18 18 -31663 -31663 -1721368386 1 -8240684139569233920 +-8243487285852766208 29 29 10891 10891 1153811197 1 -8243487285852766208 +-8244116388227104768 38 38 31411 31411 1893512909 1 -8244116388227104768 +-8244657976255889408 -115 -115 -28939 -28939 688547276 1 -8244657976255889408 +-8260340354454503424 82 82 -13539 -13539 1456367662 1 -8260340354454503424 +-8269917980278980608 -117 -117 -17297 -17297 -1700451326 1 -8269917980278980608 +-8270479187688816640 -70 -70 -22726 -22726 1519993904 1 -8270479187688816640 +-8275337702906757120 78 78 -19677 -19677 210003006 1 -8275337702906757120 +-8280276629934981120 -35 -35 5266 5266 -588160623 1 -8280276629934981120 +-8293833565967810560 21 21 30075 30075 -1464514590 1 -8293833565967810560 +-8297230235506343936 102 102 -18601 -18601 283618733 1 -8297230235506343936 +-8300526097982226432 120 120 27101 27101 1314531900 1 -8300526097982226432 +-8300764106868350976 -45 -45 NULL NULL -1196101029 1 -8300764106868350976 +-8302817097848307712 -127 -127 32553 32553 -1021859098 1 -8302817097848307712 +-8317591428117274624 96 96 -28730 -28730 -670925379 1 -8317591428117274624 +-8318886086186213376 -124 -124 -10095 -10095 1033609549 1 -8318886086186213376 +-8322751250650218496 -107 -107 13792 13792 -1212524805 1 -8322751250650218496 +-8330233444291084288 62 62 -776 -776 -409404534 1 -8330233444291084288 +-8335810316927213568 45 45 -6045 -6045 -1562552002 1 -8335810316927213568 +-8340523561480437760 120 120 -18214 -18214 39723411 1 -8340523561480437760 +-8345065519816695808 9 9 -18796 -18796 654939016 1 -8345065519816695808 +-8347088645602050048 127 127 -20559 -20559 76299337 1 -8347088645602050048 +-8357136656913686528 107 107 11999 11999 1517915751 1 -8357136656913686528 +-8358130693961195520 -14 -14 28008 28008 -122391516 1 -8358130693961195520 +-8359839265974165504 62 62 -2559 -2559 1572563948 1 -8359839265974165504 +-8368269352975982592 77 77 -30890 -30890 NULL 0 -8368269352975982592 +-8368487814665895936 -66 -66 17165 17165 156101201 1 -8368487814665895936 +-8369487968903897088 52 52 4701 4701 -194270271 1 -8369487968903897088 +-8379109122834997248 -28 -28 -11740 -11740 1566607834 1 -8379109122834997248 +-8379964450833367040 9 9 20766 20766 -181122344 1 -8379964450833367040 +-8384695077413412864 -104 -104 22213 22213 -1818456584 1 -8384695077413412864 +-8387347109404286976 2 2 -6487 -6487 -2011708220 1 -8387347109404286976 +-8387536830476820480 -103 -103 9969 9969 -1703620970 1 -8387536830476820480 +-8395998375405912064 38 38 -15944 -15944 -1141801925 1 -8395998375405912064 +-8400045653258444800 -117 -117 -5869 -5869 1523657918 1 -8400045653258444800 +-8411282676082565120 61 61 2677 2677 253621570 1 -8411282676082565120 +-8418913260807217152 96 96 -10126 -10126 -41864614 1 -8418913260807217152 +-8425998949410889728 -62 -62 -16793 -16793 -656478771 1 -8425998949410889728 +-8426531414463545344 8 8 -10872 -10872 1701761102 1 -8426531414463545344 +-8430283518005846016 NULL NULL -21156 -21156 -16094879 1 -8430283518005846016 +-8430370933326536704 -64 -64 23229 23229 NULL 0 -8430370933326536704 +-8431492599012163584 123 123 31427 31427 -1131684944 1 -8431492599012163584 +-8438554249514491904 NULL NULL 28775 28775 232405034 1 -8438554249514491904 +-8445801063348281344 27 27 7899 7899 -1247325089 1 -8445801063348281344 +-8453491903284994048 -26 -26 -14223 -14223 1524010024 1 -8453491903284994048 +-8454143651040444416 27 27 -31454 -31454 516479816 1 -8454143651040444416 +-8465978403747037184 33 33 16430 16430 1347876055 1 -8465978403747037184 +-8469607298426437632 94 94 26031 26031 374283948 1 -8469607298426437632 +-8471480409335513088 102 102 -9724 -9724 1891680787 1 -8471480409335513088 +-8485389240529354752 -36 -36 3213 3213 -1528033060 1 -8485389240529354752 +-8488247955875618816 33 33 -20343 -20343 1802498539 1 -8488247955875618816 +-8490382417169408000 92 92 -24208 -24208 987917448 1 -8490382417169408000 +-8494118409594650624 28 28 25518 25518 631207613 1 -8494118409594650624 +-8503342882470019072 -9 -9 32017 32017 1367179645 1 -8503342882470019072 +-8503573595507761152 47 47 NULL NULL 2068018858 1 -8503573595507761152 +-8507279516485566464 -119 -119 28064 28064 631711489 1 -8507279516485566464 +-8509547439040757760 44 44 -18581 -18581 -1749415887 1 -8509547439040757760 +-8518060755719585792 -23 -23 17964 17964 -1100641049 1 -8518060755719585792 +-8518258741831680000 -40 -40 29502 29502 -809805200 1 -8518258741831680000 +-8521578237232529408 -57 -57 -3602 -3602 -373034494 1 -8521578237232529408 +-8522878384019169280 NULL NULL 6899 6899 633813435 1 -8522878384019169280 +-8523434203900674048 -19 -19 6306 6306 -590374062 1 -8523434203900674048 +-8525212657458348032 NULL NULL -20100 -20100 -1280919769 1 -8525212657458348032 +-8535957064499879936 -73 -73 -15866 -15866 -99205196 1 -8535957064499879936 +-8536369662934401024 -48 -48 12358 12358 447426619 1 -8536369662934401024 +-8543982423727128576 76 76 10382 10382 -607667405 1 -8543982423727128576 +-8544299740525461504 -1 -1 17534 17534 -846450672 1 -8544299740525461504 +-8545239748068941824 NULL NULL 24439 24439 -897586947 1 -8545239748068941824 +-8546758906409312256 -28 -28 -9278 -9278 -1236536142 1 -8546758906409312256 +-8552393882631389184 NULL NULL 21984 21984 1920863389 1 -8552393882631389184 +-8555709701170552832 -99 -99 -9619 -9619 -1364322216 1 -8555709701170552832 +-8559008501282832384 -127 -127 29365 29365 895945459 1 -8559008501282832384 +-8559252110266564608 44 44 -18090 -18090 259204652 1 -8559252110266564608 +-8562524688907485184 -54 -54 -4364 -4364 1775355987 1 -8562524688907485184 +-8566856504746352640 48 48 -921 -921 2018442973 1 -8566856504746352640 +-8566940231897874432 -47 -47 20307 20307 -1409508377 1 -8566940231897874432 +-8570933074545745920 125 125 6836 6836 -749042352 1 -8570933074545745920 +-8572823448513445888 NULL NULL -19738 -19738 -101960322 1 -8572823448513445888 +-8572949572756774912 48 48 NULL NULL 1787826883 1 -8572949572756774912 +-8581765103969312768 -38 -38 -28098 -28098 -890374552 1 -8581765103969312768 +-8581979259158929408 -57 -57 15379 15379 -674478103 1 -8581979259158929408 +-8584520406368493568 1 1 28656 28656 -19116270 1 -8584520406368493568 +-8585134536083660800 22 22 8786 8786 -1196808950 1 -8585134536083660800 +-8585966098173870080 -31 -31 -16978 -16978 318631333 1 -8585966098173870080 +-8593419958317056000 88 88 7057 7057 6266567 1 -8593419958317056000 +-8603817012434198528 9 9 11059 11059 1114521964 1 -8603817012434198528 +-8604758220106014720 -108 -108 4475 4475 -1798573685 1 -8604758220106014720 +-8607195685207408640 74 74 -21648 -21648 -1111937842 1 -8607195685207408640 +-8615168537390571520 -21 -21 -4539 -4539 1469775272 1 -8615168537390571520 +-8619303037130301440 -53 -53 10430 10430 -2074079977 1 -8619303037130301440 +-8623238306523824128 -107 -107 17373 17373 -1442424087 1 -8623238306523824128 +-8623965248051789824 -34 -34 15015 15015 1637295757 1 -8623965248051789824 +-8632237187473088512 -74 -74 -12876 -12876 NULL 0 -8632237187473088512 +-8649711322250362880 5 5 NULL NULL -500921094 1 -8649711322250362880 +-8651641150831362048 -52 -52 -12809 -12809 -1533934649 1 -8651641150831362048 +-8654433008222797824 NULL NULL 30052 30052 -1728171376 1 -8654433008222797824 +-8654797319350927360 82 82 -1367 -1367 895763504 1 -8654797319350927360 +-8658387566611996672 -15 -15 6493 6493 NULL 0 -8658387566611996672 +-8659643752269242368 -18 -18 31370 31370 1204834275 1 -8659643752269242368 +-8659692318743314432 -103 -103 -33 -33 25400543 1 -8659692318743314432 +-8660149447361404928 -115 -115 28301 28301 1317690178 1 -8660149447361404928 +-8664374244449050624 -44 -44 -22919 -22919 1059212450 1 -8664374244449050624 +-8664806103426252800 -81 -81 -28536 -28536 964810954 1 -8664806103426252800 +-8665218198816497664 -7 -7 NULL NULL -1031592590 1 -8665218198816497664 +-8665764757143658496 NULL NULL 23725 23725 -45460011 1 -8665764757143658496 +-8675661101615489024 -101 -101 -8857 -8857 -1918651448 1 -8675661101615489024 +-8675892979328212992 20 20 6372 6372 1478365409 1 -8675892979328212992 +-8683802826440105984 -104 -104 19636 19636 -1344287228 1 -8683802826440105984 +-8688153842294595584 NULL NULL -3206 -3206 -1741895392 1 -8688153842294595584 +-8689606130068611072 -79 -79 NULL NULL 488559595 1 -8689606130068611072 +-8694818694700048384 41 41 29011 29011 94220511 1 -8694818694700048384 +-8696162322976997376 -9 -9 -21117 -21117 1228837108 1 -8696162322976997376 +-8703026916864802816 5 5 -22582 -22582 -397683105 1 -8703026916864802816 +-8704234107608203264 25 25 24014 24014 -1318045616 1 -8704234107608203264 +-8705403811649355776 -112 -112 -29907 -29907 206121314 1 -8705403811649355776 +-8710298418608619520 -27 -27 16664 16664 -1817938378 1 -8710298418608619520 +-8714995808835444736 19 19 24718 24718 206454818 1 -8714995808835444736 +-8719510423723155456 48 48 -19357 -19357 -327648289 1 -8719510423723155456 +-8730803262481580032 71 71 NULL NULL NULL 0 -8730803262481580032 +-8731068123910987776 -86 -86 12915 12915 -1434562279 1 -8731068123910987776 +-8746702976270385152 26 26 -24538 -24538 1767359228 1 -8746702976270385152 +-8754966081778565120 79 79 3251 3251 -125419186 1 -8754966081778565120 +-8754992450211692544 92 92 7066 7066 1785455842 1 -8754992450211692544 +-8756989568739835904 -101 -101 -13743 -13743 -158420748 1 -8756989568739835904 +-8760655406971863040 19 19 -9243 -9243 -1249011023 1 -8760655406971863040 +-8763062627136864256 40 40 -9130 -9130 -454598288 1 -8763062627136864256 +-8768744394742235136 -68 -68 -26481 -26481 -726879427 1 -8768744394742235136 +-8782213262837530624 100 100 6743 6743 1565313938 1 -8782213262837530624 +-8783777723063099392 -75 -75 -15431 -15431 877053605 1 -8783777723063099392 +-8789178184387641344 -30 -30 NULL NULL -1045771991 1 -8789178184387641344 +-8797972842900307968 -3 -3 29992 29992 284646137 1 -8797972842900307968 +-8807361476639629312 -44 -44 -16218 -16218 NULL 0 -8807361476639629312 +-8813211231120031744 -68 -68 27630 27630 1575300276 1 -8813211231120031744 +-8831091081349758976 40 40 -21772 -21772 -1832606512 1 -8831091081349758976 +-8832750849949892608 20 20 5947 5947 -66010816 1 -8832750849949892608 +-8833019327569510400 25 25 1691 1691 -189393743 1 -8833019327569510400 +-8835408234247168000 127 127 -26526 -26526 -938112972 1 -8835408234247168000 +-8836899523028312064 114 114 27046 27046 397255100 1 -8836899523028312064 +-8843859708698583040 55 55 -24194 -24194 2008211296 1 -8843859708698583040 +-8844949406948671488 -105 -105 -4953 -4953 315973457 1 -8844949406948671488 +-8845239510002753536 97 97 -14537 -14537 -1358159222 1 -8845239510002753536 +-8852770376039219200 -123 -123 7959 7959 311478497 1 -8852770376039219200 +-8853553406533894144 NULL NULL 240 240 -1820436871 1 -8853553406533894144 +-8856151919723003904 58 58 -25176 -25176 -575513309 1 -8856151919723003904 +-8856821118526734336 -41 -41 4233 4233 618321042 1 -8856821118526734336 +-8857335871148171264 -28 -28 31721 31721 1061043704 1 -8857335871148171264 +-8858063395050110976 28 28 27340 27340 -1117019030 1 -8858063395050110976 +-8859107121649893376 -58 -58 -2118 -2118 -37876543 1 -8859107121649893376 +-8866442231663067136 68 68 26697 26697 -1079633326 1 -8866442231663067136 +-8870186814744420352 -110 -110 29461 29461 NULL 0 -8870186814744420352 +-8870673219965001728 1 1 30824 30824 -1620148746 1 -8870673219965001728 +-8875546987176206336 104 104 16856 16856 414645489 1 -8875546987176206336 +-8877053610728161280 NULL NULL -6474 -6474 706823078 1 -8877053610728161280 +-8877431933441327104 63 63 -22184 -22184 1650676897 1 -8877431933441327104 +-8879742387365429248 NULL NULL -13973 -13973 1912175355 1 -8879742387365429248 +-8881446757271846912 79 79 18857 18857 1224662770 1 -8881446757271846912 +-8887058200926093312 3 3 -17916 -17916 -191704948 1 -8887058200926093312 +-8892963883085578240 -115 -115 NULL NULL -2087815643 1 -8892963883085578240 +-8896045754034978816 -127 -127 -21432 -21432 1392980712 1 -8896045754034978816 +-8914039133569400832 -62 -62 18827 18827 1332042427 1 -8914039133569400832 +-8916987977485312000 -73 -73 NULL NULL -839176151 1 -8916987977485312000 +-8922409715403112448 -81 -81 32567 32567 -536315467 1 -8922409715403112448 +-8923529803981905920 -32 -32 -24178 -24178 1148500740 1 -8923529803981905920 +-8927968289860370432 45 45 20254 20254 1033836308 1 -8927968289860370432 +-8930307926221807616 116 116 7258 7258 -966979668 1 -8930307926221807616 +-8938849835283677184 -80 -80 -15299 -15299 1318606691 1 -8938849835283677184 +-8940944155843461120 -98 -98 -15526 -15526 -858439361 1 -8940944155843461120 +-8941201923743703040 NULL NULL 9127 9127 NULL 0 -8941201923743703040 +-8946656952763777024 4 4 NULL NULL -759911896 1 -8946656952763777024 +-8948335470186373120 79 79 -15946 -15946 -1078397698 1 -8948335470186373120 +-8959796625322680320 -76 -76 31509 31509 1318956413 1 -8959796625322680320 +-8961059046745669632 63 63 150 150 1783034168 1 -8961059046745669632 +-8962547695651323904 -100 -100 NULL NULL 1091736925 1 -8962547695651323904 +-8965578088652095488 -74 -74 -22241 -22241 -1216166764 1 -8965578088652095488 +-8989473881707921408 -110 -110 NULL NULL 1310360849 1 -8989473881707921408 +-8990843030306717696 NULL NULL -6283 -6283 -311437801 1 -8990843030306717696 +-8992599250893979648 78 78 -7850 -7850 1677494300 1 -8992599250893979648 +-8996954350906294272 -95 -95 28923 28923 -1769037737 1 -8996954350906294272 +-9002912355472736256 -51 -51 23417 23417 -561932449 1 -9002912355472736256 +-9004892183139811328 -91 -91 3796 3796 -1949698319 1 -9004892183139811328 +-9008631121684832256 98 98 -23943 -23943 704038411 1 -9008631121684832256 +-9012093603044245504 -1 -1 -19464 -19464 538766635 1 -9012093603044245504 +-9013952631912325120 -42 -42 -15695 -15695 -1052493316 1 -9013952631912325120 +-9014145341570203648 -4 -4 NULL NULL 273256071 1 -9014145341570203648 +-9022154842129547264 118 118 3253 3253 1130043800 1 -9022154842129547264 +-9032650742739836928 -31 -31 27028 27028 1102561039 1 -9032650742739836928 +-9049720998034137088 27 27 17023 17023 1747664003 1 -9049720998034137088 +-9051477157204770816 -15 -15 -15119 -15119 -1648991909 1 -9051477157204770816 +-9058029636530003968 NULL NULL -11010 -11010 -1197602595 1 -9058029636530003968 +-9066993118333706240 -86 -86 8488 8488 -425196209 1 -9066993118333706240 +-9071565764086521856 -1 -1 -5593 -5593 2058640744 1 -9071565764086521856 +-9075302542655684608 76 76 -26087 -26087 -295186284 1 -9075302542655684608 +-9075486079396069376 3 3 6451 6451 -1805915233 1 -9075486079396069376 +-9078662294976061440 80 80 -22426 -22426 -235819331 1 -9078662294976061440 +-9079801920509001728 -112 -112 19350 19350 -705887590 1 -9079801920509001728 +-9080568167841226752 -46 -46 24913 24913 906074599 1 -9080568167841226752 +-9080956291212132352 -31 -31 -9482 -9482 1330219997 1 -9080956291212132352 +-9084940280061485056 122 122 9177 9177 128430191 1 -9084940280061485056 +-9088239683374350336 -78 -78 -2993 -2993 -18917438 1 -9088239683374350336 +-9091113592821972992 55 55 -12295 -12295 1861276585 1 -9091113592821972992 +-9095689235523264512 11 11 10940 10940 1687784247 1 -9095689235523264512 +-9101953184875757568 86 86 -16390 -16390 -1918847735 1 -9101953184875757568 +-9102482277760983040 78 78 -10439 -10439 742866312 1 -9102482277760983040 +-9105358806324035584 97 97 -21388 -21388 1679381813 1 -9105358806324035584 +-9105701280936501248 -31 -31 -15633 -15633 1109664665 1 -9105701280936501248 +-9109392978217484288 -84 -84 -16327 -16327 407098216 1 -9109392978217484288 +-9117959922369060864 -79 -79 -11393 -11393 936133387 1 -9117959922369060864 +-9126793997498957824 NULL NULL -10821 -10821 770574055 1 -9126793997498957824 +-9136398397785948160 78 78 -22358 -22358 376076075 1 -9136398397785948160 +-9142610685888192512 86 86 12271 12271 -387395264 1 -9142610685888192512 +-9145593811310010368 -1 -1 NULL NULL -202409329 1 -9145593811310010368 +-9148197394287779840 -5 -5 13247 13247 -1568536214 1 -9148197394287779840 +-9149719074367946752 11 11 14376 14376 234452496 1 -9149719074367946752 +-9157613004431998976 -78 -78 25683 25683 1362740312 1 -9157613004431998976 +-9175038118837149696 20 20 -23241 -23241 -1701492480 1 -9175038118837149696 +-9175279464813223936 106 106 2326 2326 2080412555 1 -9175279464813223936 +-9178166810751909888 -26 -26 -14810 -14810 -1407817977 1 -9178166810751909888 +-9187662685618348032 -26 -26 -20949 -20949 NULL 0 -9187662685618348032 +-9189155542884474880 18 18 -1660 -1660 -1955545912 1 -9189155542884474880 +-9203804401302323200 -14 -14 -5357 -5357 -671853199 1 -9203804401302323200 +-9203942396257984512 87 87 -22431 -22431 -1625800024 1 -9203942396257984512 +-9206329156028112896 -68 -68 22588 22588 2084666529 1 -9206329156028112896 +-9210275791460499456 124 124 9165 9165 601376532 1 -9210275791460499456 +-9213132862973829120 -42 -42 4948 4948 -1216206795 1 -9213132862973829120 +-9215144824304721920 99 99 -79 -79 -399643110 1 -9215144824304721920 +-9218875542187065344 -61 -61 -4371 -4371 785382955 1 -9218875542187065344 +-9219066990552760320 -117 -117 -15708 -15708 2090044777 1 -9219066990552760320 +1021 31 31 -22423 -22423 -1884780525 1 1021 +1030 25 25 -17429 -17429 -300429552 1 1030 +1032 107 107 -8241 -8241 -1914210382 1 1032 +1039 -26 -26 10261 10261 914062370 1 1039 +1046 -55 -55 NULL NULL -990781312 1 1046 +1048 -124 -124 -30109 -30109 -249150336 1 1048 +1053 -100 -100 13491 13491 -1369302744 1 1053 +1055 33 33 -3103 -3103 371383749 1 1055 +1058 82 82 -4550 -4550 -1497098905 1 1058 +1065 -44 -44 5542 5542 1194089079 1 1065 +1066 -105 -105 22150 22150 1767019352 1 1066 +1074 125 125 16516 16516 161210995 1 1074 +1075 -33 -101 -30100 32260 1609470119 2 1075 +108 100 100 -5919 -5919 -835107230 1 108 +1086 33 33 24776 24776 -1341627565 1 1086 +1093 82 82 NULL NULL NULL 0 1093 +1094 -4 -4 -23271 -23271 -359194591 1 1094 +1095 -86 -86 -28097 -28097 291866793 1 1095 +1099 -127 -127 14408 14408 1390704286 1 1099 +1115 108 108 NULL NULL -144862954 1 1115 +112 107 107 8095 8095 -2147071655 1 112 +1127 7 7 -1180 -1180 -423378447 1 1127 +1128 12 12 -2546 -2546 -932525608 1 1128 +1132 88 88 -9076 -9076 239078089 1 1132 +1134 -19 -19 -8781 -8781 187718349 1 1134 +1141 -39 -39 16858 16858 -540820650 1 1141 +1142 -92 -92 -10015 -10015 1184001017 1 1142 +1145 114 114 20265 20265 669484010 1 1145 +1153 -41 -41 27758 27758 1646811064 1 1153 +1157 29 29 67 67 590719541 1 1157 +1158 36 36 -10972 -10972 990246086 1 1158 +1165 -3 -83 -32266 -8852 1630946897 2 1165 +1168 77 77 21511 21511 NULL 0 1168 +1177 -117 -117 530 530 1182595271 1 1177 +1187 123 123 -25183 -25183 69110370 1 1187 +1189 108 108 27636 27636 215508794 1 1189 +1198 -57 -57 -20329 -20329 -1857500489 1 1198 +120 117 117 -28489 -28489 29680001 1 120 +1201 6 6 1773 1773 945911081 1 1201 +1217 58 58 6675 6675 -1802746460 1 1217 +1234 -46 -46 9447 9447 -1921909135 1 1234 +1243 63 63 -28374 -28374 1938788165 1 1243 +1247 -77 -77 -13238 -13238 -866304147 1 1247 +1252 98 98 19215 19215 30036142 1 1252 +1261 18 18 -13466 -13466 -343173797 1 1261 +1270 -127 -127 14180 14180 1969239701 1 1270 +1280 46 46 -31765 -31765 991397535 1 1280 +1282 NULL NULL -18151 -18151 -1140071443 1 1282 +1286 83 83 -10781 -10781 -480058682 1 1286 +1287 70 70 4491 4491 -1362178985 1 1287 +1290 27 27 -7204 -7204 177837042 1 1290 +1291 -90 -90 9110 9110 1398486099 1 1291 +1299 64 64 -24682 -24682 765656980 1 1299 +130 5 5 20183 20183 -2081501748 1 130 +1307 79 79 -11015 -11015 882331889 1 1307 +1312 -114 -114 101 101 742059797 1 1312 +1316 -3 -3 -5897 -5897 997193329 1 1316 +1321 -90 -90 -14652 -14652 731241198 1 1321 +1337 48 48 23320 23320 -1948257321 1 1337 +1341 -98 -98 7197 7197 492120544 1 1341 +1342 -48 -48 18142 18142 1203482872 1 1342 +1343 114 114 17164 17164 -217785690 1 1343 +1345 -10 -10 -20262 -20262 -600315936 1 1345 +1346 89 89 -24801 -24801 -158233823 1 1346 +135 5 5 -6114 -6114 198017473 1 135 +1366 48 48 6080 6080 748358417 1 1366 +1368 55 -40 14606 26529 1427261767 2 1368 +1371 35 12 15644 27169 -1220509644 2 1371 +138 36 36 -7046 -7046 843282593 1 138 +1386 1 1 4939 4939 2081152819 1 1386 +1398 84 84 -14445 -14445 955267058 1 1398 +1409 13 13 -15389 -15389 865013617 1 1409 +1422 93 93 NULL NULL -1402821064 1 1422 +1423 -90 -90 -13424 -13424 631954352 1 1423 +1436 109 109 25118 25118 1765173148 1 1436 +1439 -5 -5 14783 14783 531459992 1 1439 +1447 53 53 -950 -950 NULL 0 1447 +1450 NULL NULL -29171 -29171 740883263 1 1450 +1454 27 27 21904 21904 NULL 0 1454 +1458 NULL NULL 7197 7197 -1001529082 1 1458 +1462 -112 -112 14286 14286 287239980 1 1462 +1466 -124 -124 -5267 -5267 574069547 1 1466 +1470 NULL NULL -27871 -27871 1406029775 1 1470 +1477 83 83 17769 17769 -707228984 1 1477 +1481 -15 -37 -24576 -15276 1842582526 2 1481 +1489 -36 -36 -17697 -17697 766737781 1 1489 +1493 -60 -60 -4501 -4501 557053197 1 1493 +1495 -65 -65 21299 21299 -1222897252 1 1495 +1501 -28 -28 -21648 -21648 1081920048 1 1501 +1506 121 121 -27998 -27998 1893632113 1 1506 +1508 79 79 22366 22366 1632769786 1 1508 +1509 -24 -107 -3309 -3309 3225474919 2 1509 +1518 -102 -102 -3360 -3360 824235855 1 1518 +1520 -31 -31 20391 20391 NULL 0 1520 +1521 -67 -67 -1443 -1443 -993029335 1 1521 +1524 -61 -61 6741 6741 -1851280202 1 1524 +1530 92 92 22013 22013 1934970004 1 1530 +1537 -23 -55 -18151 11788 257940904 2 1537 +154 -12 -113 -10623 12583 553439267 2 154 +1541 60 60 -23853 -23853 -1430903652 1 1541 +1542 -116 -116 32324 32324 NULL 0 1542 +1545 51 51 -800 -800 564366133 1 1545 +1556 25 25 2295 2295 -1202975006 1 1556 +1559 36 36 20018 20018 -206177972 1 1559 +1561 -111 -111 30736 30736 NULL 0 1561 +1566 -60 -60 -23750 -23750 747122546 1 1566 +1604 NULL NULL 2677 2677 -2077771325 1 1604 +1606 -82 -82 -5259 -5259 -1901806083 1 1606 +1608 99 99 -3257 -3257 142722637 1 1608 +1613 -33 -33 23844 23844 -1422780798 1 1613 +1614 -79 -79 -19571 -19571 -296195507 1 1614 +1620 -5 -5 31374 31374 -1989378509 1 1620 +1638 NULL NULL -2287 -2287 92777932 1 1638 +1641 115 115 32640 32640 NULL 0 1641 +1643 -74 -74 -23109 -23109 1346627771 1 1643 +1648 65 65 -24591 -24591 -496870819 1 1648 +1651 -91 -91 -31335 -31335 -1575588203 1 1651 +1667 -5 -5 9716 9716 -499533481 1 1667 +1671 1 1 19276 19276 1504919241 1 1671 +1674 -68 -68 -4142 -4142 1488440165 1 1674 +1676 6 6 -25033 -25033 -393723522 1 1676 +1678 NULL NULL -22163 -22163 -1104268719 1 1678 +168 119 119 25931 25931 -53587991 1 168 +1681 -111 -111 13488 13488 929751599 1 1681 +169 -67 -67 16236 16236 -1759354458 1 169 +1693 68 68 -2441 -2441 -1545572711 1 1693 +1701 6 -59 -13607 5785 755580328 2 1701 +1704 64 64 32309 32309 -605370177 1 1704 +1719 -115 -242 -20828 7353 -469198712 2 1719 +1726 -35 -35 -4509 -4509 NULL 0 1726 +1728 118 118 16105 16105 626251612 1 1728 +1745 -75 -75 32420 32420 368170021 1 1745 +1751 38 38 29288 29288 -667383951 1 1751 +1752 -78 -78 -9094 -9094 -1538978853 1 1752 +1769 -104 -104 30201 30201 805672638 1 1769 +1774 -29 -29 14773 14773 -1974777102 1 1774 +1775 32 32 -6564 -6564 1928365430 1 1775 +1777 37 37 -16282 20128 1061638369 1 1777 +1780 17 17 -9585 -9585 -71433796 1 1780 +1781 60 60 22378 22378 NULL 0 1781 +1785 55 55 4319 4319 -524189419 1 1785 +1786 31 31 -10258 -10258 -1009249550 1 1786 +1788 42 42 NULL NULL -997463353 1 1788 +1789 12 12 -4618 -4618 -1098379914 1 1789 +1791 -19 -19 -25973 -25973 -1900369503 1 1791 +1796 -79 -79 4397 4397 -1625062942 1 1796 +1806 -45 -45 NULL NULL -40284975 1 1806 +181 -49 -49 31651 31651 1742536084 1 181 +1811 -41 -41 10278 10278 -922200749 1 1811 +1813 -69 -69 -13410 -13410 -738157651 1 1813 +1826 27 27 -13623 -13623 505902480 1 1826 +1827 -53 -53 12836 12836 -956668825 1 1827 +1835 -96 -96 NULL NULL 1768399622 1 1835 +1837 77 77 26749 26749 290921475 1 1837 +1845 -59 -59 -2113 -2113 -909024258 1 1845 +1846 114 114 19513 19513 418182899 1 1846 +1856 53 -72 -29323 -15605 -1828994565 2 1856 +1862 113 113 -22215 -22215 674547678 1 1862 +1863 99 99 -3318 -3318 -1017027298 1 1863 +1864 104 104 NULL NULL NULL 0 1864 +1866 104 104 -8706 -8706 -400501472 1 1866 +187 -27 -27 10161 10161 2133950868 1 187 +1870 -68 -68 11572 11572 25644069 1 1870 +188 -127 -127 11451 11451 316438994 1 188 +1880 23 23 -32383 -32383 1293876597 1 1880 +1890 56 56 19568 19568 -1660344634 1 1890 +1892 31 31 26298 26298 596595603 1 1892 +1899 52 52 30457 30457 734267314 1 1899 +19 48 -71 -20879 28973 -2337280360 2 19 +1906 -107 -107 -13 -13 1070989126 1 1906 +1910 30 30 -28244 -28244 1978200605 1 1910 +1914 124 185 -21833 -21833 -2608386973 2 1914 +1926 -6 -6 -16722 -16722 -490337498 1 1926 +1937 -79 -79 12954 12954 -987995271 1 1937 +1940 0 0 -31365 -31365 950997304 1 1940 +1941 -116 -116 -31182 -31182 -54793232 1 1941 +1948 33 -73 -18263 11895 -1338846770 3 1948 +1955 -53 -53 7537 7537 -316678117 1 1955 +1965 70 70 -13309 -13309 1173098061 1 1965 +1972 NULL NULL 3694 3694 -1404921781 1 1972 +1981 87 87 6875 6875 -980869630 1 1981 +1983 50 50 -12085 -12085 -1954890941 1 1983 +1987 121 121 -6219 -6219 65956045 1 1987 +1990 -71 -71 30090 30090 1050809633 1 1990 +1995 113 113 -27401 -27401 1012230484 1 1995 +1999 -89 -89 8721 8721 -9958400 1 1999 +2001 -30 -30 31795 31795 217476429 1 2001 +2002 105 105 -13847 -13847 1535954353 1 2002 +2004 102 102 -6073 -6073 1464703053 1 2004 +2009 NULL NULL -28519 -28519 -1471147786 1 2009 +2011 -92 -92 -23671 -23671 33234633 1 2011 +2013 -15 -15 17581 17581 1142098316 1 2013 +2016 -50 -50 13078 13078 135341845 1 2016 +2017 97 97 -12111 -12111 44628821 1 2017 +2020 75 117 -7949 -7949 -207047446 2 2020 +2025 NULL NULL -16477 -16477 989475408 1 2025 +2026 51 51 -9883 -9883 -1454941039 1 2026 +2029 NULL NULL NULL NULL 546555204 1 2029 +203 -3 -3 24819 24819 2070969353 1 203 +204 72 72 11317 11317 2018249426 1 204 +2046 -98 -98 4809 4809 363981930 1 2046 +2056 -6 -6 21162 21162 1941527322 1 2056 +2067 92 92 28003 28003 NULL 0 2067 +2072 -118 -118 13138 13138 -1652600376 1 2072 +2073 32 32 29023 29023 -856843296 1 2073 +2085 -114 -114 6893 6893 -1179668872 1 2085 +2089 89 89 20014 20014 945683736 1 2089 +2092 -21 -21 -23540 -23540 1678261510 1 2092 +2105 84 84 28641 28641 1550112473 1 2105 +2106 -125 -125 -22641 -22641 1597303154 1 2106 +2108 108 108 -10687 -10687 977292235 1 2108 +213 121 3 -16813 26503 -1443273080 2 213 +2131 7 7 -29895 -29895 -464804906 1 2131 +2138 4 4 15070 15070 -1048181367 1 2138 +2140 123 123 25603 25603 -1319686435 1 2140 +2144 69 69 12779 12779 117620760 1 2144 +2155 NULL NULL 12291 12291 1126157283 1 2155 +2177 -55 -55 NULL NULL -1960344717 1 2177 +2179 72 72 6651 6651 1394370866 1 2179 +2180 -51 -51 -19413 -19413 -120704505 1 2180 +2183 28 28 -9196 -9196 -1947868215 1 2183 +2186 110 110 -24095 -24095 -1655396452 1 2186 +2187 -8 -8 26625 26625 -906986958 1 2187 +2189 -119 -119 26880 26880 NULL 0 2189 +2193 91 107 7939 7939 -2636180757 2 2193 +2194 -24 -24 29892 29892 -853967587 1 2194 +22 81 81 -22937 -22937 176792505 1 22 +2201 19 19 -26060 -26060 1425362689 1 2201 +2205 48 48 8929 8929 2013376408 1 2205 +2214 -125 -125 20784 20784 1602631923 1 2214 +2217 -30 -30 -25469 -25469 479566810 1 2217 +2218 26 26 16312 16312 NULL 0 2218 +2223 127 127 -6806 -6806 1605596441 1 2223 +2227 55 55 -26304 -26304 1054864168 1 2227 +2229 -101 -101 -32455 -32455 516843026 1 2229 +2232 17 17 28606 28606 277582670 1 2232 +2241 -46 -46 -28501 -28501 810157660 1 2241 +2244 -87 -87 19739 19739 -1699049982 1 2244 +2255 -91 -91 5014 5014 -1561738723 1 2255 +2262 -25 -25 25967 25967 1283898734 1 2262 +2264 119 119 5639 5639 -425103007 1 2264 +2270 -92 -92 4203 4203 -1429346144 1 2270 +2274 -35 -35 7474 7474 -1676261015 1 2274 +2277 -70 -70 26232 26232 -1447263708 1 2277 +2279 NULL NULL -22534 -22534 -1412187081 1 2279 +228 121 121 -18533 -18533 167432368 1 228 +2283 -50 -50 11929 11929 530274409 1 2283 +2285 -35 -35 -24968 -3427 1874746988 2 2285 +2295 101 101 NULL NULL -1914072976 1 2295 +2306 31 31 6900 6900 -604362582 1 2306 +2320 111 111 32231 32231 -1919939921 1 2320 +2323 29 29 -4772 -4772 -2028355450 1 2323 +2325 26 14 -24847 16592 3116981291 2 2325 +2335 55 55 999 999 1281277970 1 2335 +2341 -85 -85 30376 30376 1951869763 1 2341 +2348 30 30 -12880 -12880 -40407627 1 2348 +2358 69 69 -7058 -7058 -370798230 1 2358 +236 25 25 -11129 -11129 514833409 1 236 +2373 -64 -64 6163 6163 -1602792666 1 2373 +238 45 45 32348 32348 713031549 1 238 +2386 NULL NULL 12722 12722 930008274 1 2386 +2393 -18 -72 -2636 31049 2753810053 2 2393 +2398 98 98 -26361 -26361 1489169773 1 2398 +2400 64 64 -11848 -11848 663222148 1 2400 +2410 75 75 -23638 -23638 NULL 0 2410 +2412 -5 -42 7307 23750 -2637504979 2 2412 +2420 -7 -7 31706 31706 480849725 1 2420 +2426 NULL NULL -21574 -21574 62293025 1 2426 +2434 -42 -42 9028 9028 1621606222 1 2434 +244 -25 -25 12471 12471 860708524 1 244 +2461 58 58 -13525 -13525 -1668974292 1 2461 +2463 75 114 -30492 31390 2507326063 3 2463 +2465 NULL NULL 6490 6490 -1819075185 1 2465 +2469 -42 -42 -14423 -14423 524808 1 2469 +2475 66 66 1100 1100 -1116100266 1 2475 +2476 78 78 -32755 -32755 -1210261177 1 2476 +2485 -5 -100 -4037 -4037 1214463625 2 2485 +2487 -73 -73 -7873 -7873 NULL 0 2487 +2492 12 12 21415 21415 -270683864 1 2492 +2494 59 59 27852 27852 -1830870295 1 2494 +2502 73 73 1077 1077 -336625622 1 2502 +2506 42 42 9158 9158 776606164 1 2506 +2509 -126 -126 -31537 -31537 693331761 1 2509 +2512 63 63 17680 17680 -1164833898 1 2512 +2514 -38 -38 -26054 -26054 407233168 1 2514 +2515 -86 -86 23850 23850 -601946913 1 2515 +2517 34 34 -28784 -28784 198624903 1 2517 +2524 -34 -34 10646 10646 -1081766449 1 2524 +2533 74 74 -17056 -17056 672266669 1 2533 +2539 36 36 6892 6892 1090344463 1 2539 +2540 -32 -32 8407 8407 1103878879 1 2540 +255 102 102 -25939 -25939 -1106469823 1 255 +2551 -88 -88 -3286 -3286 -1762037754 1 2551 +2553 12 12 -19479 -19479 1112783661 1 2553 +2560 13 -97 23076 23076 -3439306295 2 2560 +2563 -94 -94 -1613 -1613 -1141652793 1 2563 +2565 97 97 -9378 -9378 -1302592941 1 2565 +2569 -75 -75 -17873 -17873 -837503491 1 2569 +2579 39 39 8410 8410 1640445482 1 2579 +2580 51 51 -31881 -31881 1933545427 1 2580 +2587 46 46 -9148 -9148 -1125605439 1 2587 +259 -113 -113 -30515 -30515 -922875124 1 259 +2599 -101 -101 5539 5539 -1903090602 1 2599 +2607 111 111 NULL NULL NULL 0 2607 +2608 41 41 15417 15417 335359004 1 2608 +2619 -42 -100 -8895 26236 -123535819 2 2619 +2625 96 96 24366 24366 -1897998366 1 2625 +2626 107 107 -15779 -15779 1620529246 1 2626 +263 125 225 -11048 -11048 2902136672 2 263 +2637 30 30 -26180 -26180 1522208504 1 2637 +2647 80 80 -1223 -1223 92834720 1 2647 +2649 102 102 21102 21102 659343542 1 2649 +2662 -16 -16 -1749 -1749 209430502 1 2662 +2663 39 39 -16820 -16820 43983130 1 2663 +2675 -44 -44 17014 17014 1305668933 1 2675 +268 -42 -136 -21451 10479 657241842 2 268 +2680 -44 -44 -9845 -9845 825977391 1 2680 +2682 38 38 -28867 -28867 -675125724 1 2682 +2688 86 86 -19493 -19493 -1249134513 1 2688 +2689 35 35 6015 6015 -1343327 1 2689 +2692 67 67 -31596 -31596 NULL 0 2692 +2700 -81 -81 25454 25454 -123529324 1 2700 +2712 -62 -62 -28146 -28146 -901778330 1 2712 +2714 NULL NULL -15341 -15341 1284956108 1 2714 +2715 67 -52 -30263 -21412 2531982336 2 2715 +2719 -127 -127 9863 9863 1516149502 1 2719 +2724 -105 -105 -18269 -18269 922373046 1 2724 +2725 38 38 11067 11067 257821327 1 2725 +2735 66 66 29834 29834 1307148254 1 2735 +2745 39 39 -2410 -2410 1134416796 1 2745 +275 -109 -109 23031 23031 1517488324 1 275 +2752 -83 -83 -21268 -21268 962091264 1 2752 +2762 37 37 -24696 -24696 314232856 1 2762 +2772 -57 -57 -16290 -16290 1835749815 1 2772 +2776 73 73 -6046 -6046 -1801684055 1 2776 +2786 -101 -218 5805 20084 -1773917592 2 2786 +279 11 11 29507 29507 -1709246310 1 279 +2790 -27 -27 21792 21792 686081268 1 2790 +2791 -109 -109 -25692 -25692 -714594143 1 2791 +2803 52 53 -13402 16134 2005164945 3 2803 +2805 -69 -69 14041 14041 -295751373 1 2805 +281 83 83 -5635 -5635 -42151403 1 281 +2810 126 126 NULL NULL 1844415080 1 2810 +2811 -92 -92 22075 22075 -170643477 1 2811 +2816 -108 -108 6226 6226 -912429611 1 2816 +2821 95 95 1911 1911 829055499 1 2821 +2824 -52 -52 30926 30926 -1679120527 1 2824 +2835 117 117 -32688 -32688 144428297 1 2835 +2842 125 125 5469 5469 889772203 1 2842 +2843 -17 -70 -14705 20814 -2509512115 2 2843 +2846 10 10 -27667 -27667 -121162464 1 2846 +2847 NULL NULL NULL NULL 1634441052 1 2847 +2848 29 29 20270 20270 -985817478 1 2848 +2850 90 90 32669 32669 1618123796 1 2850 +2855 117 212 -31857 -25151 -13657610 2 2855 +2862 -86 -86 -12071 -12071 1956887369 1 2862 +2878 9 9 -3885 -3885 -906545548 1 2878 +2886 40 40 -32296 -32296 84231802 1 2886 +289 114 114 -2828 -2828 -1144976744 1 289 +2897 4 -65 4718 8948 1164210518 2 2897 +2900 102 102 -26461 -26461 2114363167 1 2900 +2903 NULL NULL -14593 -14593 1552351592 1 2903 +2905 8 8 -32491 -32491 -1232183416 1 2905 +2911 -47 -47 23564 23564 1483580941 1 2911 +2915 45 45 20124 20124 -470798506 1 2915 +2919 -88 -88 27039 27039 1002132158 1 2919 +2933 3 -35 -19833 31923 -3159411453 2 2933 +2938 -44 -44 -24561 -24561 -2032576637 1 2938 +294 86 86 -8927 -8927 -1817096156 1 294 +2941 31 31 11050 11050 -1862095575 1 2941 +2942 -40 -40 -26367 -26367 1638471881 1 2942 +296 -21 -92 -18503 30367 -750491170 2 296 +2962 109 109 -28299 -28299 1042237722 1 2962 +2968 -17 -106 3226 22194 1556919269 1 2968 +2971 -60 -60 4725 4725 -373541958 1 2971 +2977 90 90 -16129 -16129 -2007662579 1 2977 +2979 37 37 30056 30056 131031898 1 2979 +2984 19 19 -16815 -16815 1440427914 1 2984 +2986 85 85 18508 18508 -933324607 1 2986 +2988 0 0 24600 24600 492639283 1 2988 +2991 -38 -38 6451 6451 NULL 0 2991 +3002 -100 -100 2376 2376 -1538558250 1 3002 +3006 114 114 364 364 1328225044 1 3006 +301 -65 -65 -24092 -24092 -1924909143 1 301 +302 -58 -58 -31395 -31395 -1730740504 1 302 +3021 -59 -131 1361 30184 -182818671 2 3021 +3024 62 62 23881 23881 -891543038 1 3024 +3029 50 50 -4676 -4676 -1198036877 1 3029 +3031 -5 -5 25683 25683 NULL 0 3031 +3036 120 120 22111 22111 -449333854 1 3036 +3043 -115 -115 325 325 692666133 1 3043 +3054 119 119 32671 32671 -973128166 1 3054 +3055 -108 -108 -23194 -23194 -1198465530 1 3055 +3058 106 106 21976 21976 -1144920802 1 3058 +3059 92 92 -11247 -11247 1386071996 1 3059 +3060 34 34 -21818 30216 -1304196353 2 3060 +3067 38 38 2085 2085 1256676429 1 3067 +3071 -52 -52 7076 7076 1129173487 1 3071 +3073 116 116 9572 9572 722737062 1 3073 +3079 -24 -151 -4252 10161 -882028850 1 3079 +3083 -70 -70 6484 6484 -385247581 1 3083 +3084 -75 -75 15532 15532 1333148555 1 3084 +3089 -98 -98 -18646 -18646 584084934 1 3089 +3094 114 114 -28840 -28840 1335803002 1 3094 +3103 -121 -121 -11956 -11956 -1622653291 1 3103 +311 33 33 18430 18430 -1850492820 1 311 +3111 10 10 -27295 -27295 -1299159155 1 3111 +3118 7 7 725 725 NULL 0 3118 +3119 82 82 -17995 -17995 673904922 1 3119 +3144 -17 -17 28899 28899 -758231588 1 3144 +3147 -96 -96 -7065 -7065 1102069050 1 3147 +3159 48 29 16950 28558 1048839219 2 3159 +3163 NULL NULL 8461 8461 26270580 1 3163 +3174 46 46 -24248 -24248 -1871446009 1 3174 +3183 -23 -23 -24763 -24763 1363459426 1 3183 +3190 -124 -124 NULL NULL 297577612 1 3190 +3197 -66 -66 21168 21168 976870621 1 3197 +3199 86 86 -6306 -6306 -2086352100 1 3199 +320 0 0 19001 19001 1198172036 1 320 +3203 6 6 -15576 -15576 -491377296 1 3203 +3206 77 77 -10392 -10392 -733756717 1 3206 +3208 -72 -72 -5907 -5907 -211669740 1 3208 +3212 10 10 19458 19458 900992177 1 3212 +3213 -57 -57 -31163 -31163 -1171326281 1 3213 +3231 NULL NULL -705 -705 -817383093 1 3231 +3232 59 59 3270 3270 1434588588 1 3232 +3235 -14 -14 -8003 -8003 -287400633 1 3235 +3244 -40 -40 3354 3354 1303632852 1 3244 +3245 -3 -3 18240 18240 1385883394 1 3245 +3248 29 29 29434 29434 1202720813 1 3248 +3249 -124 -124 NULL NULL 206942178 1 3249 +3253 61 61 22786 22786 -1218871391 1 3253 +3255 23 23 -9368 -9368 -1212433954 1 3255 +3263 NULL NULL NULL NULL -419335927 1 3263 +3286 5 5 31688 31688 -1078214868 1 3286 +3300 NULL NULL -22858 -22858 1743696703 1 3300 +3307 -115 -115 -5240 -5240 -1128317466 1 3307 +3322 -120 -120 29775 29775 -1544877665 1 3322 +3333 11 11 NULL NULL -462541618 1 3333 +3352 -28 -28 -8532 -8532 -1621814212 1 3352 +336 -83 -83 23910 23910 1376818328 1 336 +3365 29 29 -2734 -2734 1712411993 1 3365 +3366 -55 -55 21440 21440 -606214770 1 3366 +3397 -26 -26 -20787 -20787 -2066134281 1 3397 +34 -15 -15 7988 7988 1969650228 1 34 +3401 NULL NULL -6735 -6735 -2138343289 1 3401 +3407 -105 -105 -20835 -20835 NULL 0 3407 +3409 89 89 NULL NULL -337586880 1 3409 +341 126 126 5516 5516 278643258 1 341 +3418 -89 -214 -8267 -8267 -153939256 2 3418 +342 -121 -121 -32403 -32403 -884796655 1 342 +3421 -117 -117 -10533 -10533 -1878572820 1 3421 +3430 -110 -110 29515 29515 -395499919 1 3430 +3443 120 120 -4507 -4507 -1006768637 1 3443 +3446 -80 -80 -11081 -11081 440393309 1 3446 +345 -87 -87 NULL NULL NULL 0 345 +3456 97 97 NULL NULL NULL 0 3456 +346 NULL NULL -31217 -11767 -2819634111 2 346 +3460 -95 -95 5736 5736 1204325852 1 3460 +3462 122 114 -22390 12014 -1412216754 3 3462 +3467 58 69 -4720 4905 -537984108 2 3467 +347 30 30 5683 5683 -414207254 1 347 +3472 -30 -30 -12628 -12628 868717604 1 3472 +3478 -40 -40 18675 18675 1772545157 1 3478 +3493 37 37 -26666 -26666 -890552359 1 3493 +350 59 59 -13144 -13144 330302407 1 350 +3507 -126 -126 -21180 -21180 2032271149 1 3507 +3510 -104 -104 -3190 -3190 197056787 1 3510 +3512 60 60 31396 31396 636901402 1 3512 +3533 -52 -52 NULL NULL 1076088102 1 3533 +3534 -5 -5 -26284 -26284 NULL 0 3534 +3541 104 104 NULL NULL -996953616 1 3541 +3542 -59 -59 -15053 -15053 459269456 1 3542 +355 48 48 -24884 -24884 1258721737 1 355 +3554 -39 -39 NULL NULL 48554395 1 3554 +3555 43 43 -17366 10124 499253776 2 3555 +3563 -76 -76 -7533 -7533 1332181668 1 3563 +3566 -79 -79 -3883 -3883 -519978947 1 3566 +3567 -56 -56 11238 11238 410340192 1 3567 +3568 -96 -96 -10516 -10516 NULL 0 3568 +3579 121 121 29828 29828 -1426893312 1 3579 +3588 98 62 20939 27156 1546855030 2 3588 +3599 -27 -27 -25112 -25112 2069258195 1 3599 +3606 -86 -86 -11286 -11286 -1032306832 1 3606 +3608 56 56 21814 21814 773730574 1 3608 +3609 104 104 10457 10457 -1380191654 1 3609 +361 103 103 24663 24663 -434747475 1 361 +3613 59 59 -25531 -25531 1191238870 1 3613 +3622 100 127 -8398 410 474041784 2 3622 +3625 123 123 -1433 -1433 -1656822229 1 3625 +3630 -80 -80 27981 27981 693876030 1 3630 +3637 -51 -51 -20411 -20411 929560791 1 3637 +364 32 32 4138 4138 1336365018 1 364 +3648 81 81 -17502 -17502 1142481557 1 3648 +3663 31 31 -1900 -1900 -886741158 1 3663 +3664 58 58 -10247 -10247 -186600427 1 3664 +367 -112 -112 22505 22505 -1324624386 1 367 +3672 76 76 -27707 -27707 1825828852 1 3672 +3673 126 126 -10629 -10629 -362603422 1 3673 +3677 NULL NULL 18190 18190 470575409 1 3677 +3680 67 67 -9614 -9614 1124269631 1 3680 +3682 3 3 -1510 -1510 -1718163874 1 3682 +3690 57 57 7678 7678 1500437122 1 3690 +3691 124 124 3714 3714 -664111469 1 3691 +3701 -105 -105 -4059 -4059 760466914 1 3701 +3702 NULL NULL 4416 4416 -1423467446 1 3702 +3703 20 20 32096 32096 1796950944 1 3703 +3707 87 87 1387 1387 1377359511 1 3707 +3722 41 41 -5283 -5283 -1322736153 1 3722 +3724 42 42 -7323 -7323 1625751062 1 3724 +3725 68 111 1762 25170 -207705473 2 3725 +3728 113 164 -24313 -21146 -1739142068 2 3728 +3739 -60 -60 17242 17242 -192181579 1 3739 +3747 -114 -114 16062 16062 1001732850 1 3747 +3749 -38 -38 18482 18482 1027147837 1 3749 +375 -75 -75 14493 14493 -1754347372 1 375 +3755 -86 -86 NULL NULL -7929246 1 3755 +3763 18 18 -909 -909 -679230165 1 3763 +3764 95 95 27922 27922 -2027812975 1 3764 +3769 95 95 -7531 -7531 -1431196400 1 3769 +3770 66 48 4446 24975 -3354369862 2 3770 +378 -55 -55 -20876 -20876 -1270523286 1 378 +3781 -16 -56 -31164 -5085 -20392256 2 3781 +3789 -4 -4 -21281 -21281 -139448716 1 3789 +379 34 34 -2518 -2518 1625699061 1 379 +3810 107 107 -30534 -30534 -1043413503 1 3810 +3812 -116 -116 -31793 -31793 -870900240 1 3812 +3823 -13 -13 -32541 -32541 1563120121 1 3823 +3824 111 111 -260 -260 1372224352 1 3824 +383 -24 -90 -13948 11363 872090024 2 383 +3830 58 58 -31551 -31551 1443426396 1 3830 +3835 -27 -27 -3540 -3540 133276416 1 3835 +3841 1 1 8466 8466 -901079162 1 3841 +3848 93 93 22594 22594 1436480682 1 3848 +3858 97 97 -5435 -5435 1925283040 1 3858 +3860 75 75 31892 31892 -423945469 1 3860 +3866 91 116 -7932 -7932 347517645 2 3866 +3874 50 50 15589 15589 -1603071732 1 3874 +3879 -121 -121 -30818 -30818 461680901 1 3879 +388 108 108 -6933 -6933 -66112513 1 388 +3887 53 53 24715 24715 476919973 1 3887 +3901 18 18 -27139 -27139 -1909635960 1 3901 +3904 -55 -55 -20532 -20532 1473503196 1 3904 +3907 -69 -69 -13474 -13474 -373038706 1 3907 +391 NULL NULL -9375 -9375 1107258026 1 391 +3910 62 62 26288 26288 NULL 0 3910 +3911 -43 -43 -14055 -14055 -1283465451 1 3911 +3913 -14 -14 -23852 -23852 1506907734 1 3913 +392 51 51 -13904 -13904 1664736741 1 392 +3932 -85 -85 -31707 -31707 2145269593 1 3932 +3940 15 15 -7024 -7024 923353533 1 3940 +3941 -122 -122 7654 7654 -734921821 1 3941 +3945 -30 -30 3891 3891 -1758125445 1 3945 +3946 -37 -37 8727 8727 523289079 1 3946 +3949 -59 -59 -28646 -28646 1797164732 1 3949 +3958 -34 -34 NULL NULL 65172363 1 3958 +3960 -16 -16 -19213 -19213 1509573831 1 3960 +3961 40 40 -302 -302 -1955647385 1 3961 +3962 -10 -10 -27035 -27035 NULL 0 3962 +3965 -91 -91 -10452 -10452 771827308 1 3965 +3974 47 35 6813 15266 417582711 2 3974 +3980 82 82 -6334 -6334 -564495517 1 3980 +3990 -86 -86 -15393 -15393 -1392487784 1 3990 +4018 -34 -34 -12896 -12896 -396852483 1 4018 +4020 -113 -113 20052 20052 -1447140800 1 4020 +4024 -28 -28 -25412 -25412 -202035134 1 4024 +4030 -105 -105 -21693 -21693 -216495498 1 4030 +4037 -71 -71 2335 2335 1003667927 1 4037 +4051 -55 -55 12642 12642 1052255272 1 4051 +4054 -40 -40 -733 -733 1998185704 1 4054 +4056 -52 -52 -23527 -23527 -1516259168 1 4056 +4075 80 80 -18547 -18547 NULL 0 4075 +4078 -118 -118 16437 16437 727802564 1 4078 +4088 15 15 5972 5972 947846543 1 4088 +41 37 37 31740 31740 -203911033 1 41 +412 127 91 -27312 813 1638575351 2 412 +417 -49 -49 NULL NULL 152891873 1 417 +425 20 20 32584 32584 1336194583 1 425 +443 98 98 -11929 -11929 596242714 1 443 +454 7 7 17107 17107 -1227085134 1 454 +455 93 93 -254 -254 1159353899 1 455 +462 105 105 -7871 -7871 1677444379 1 462 +470 -63 -63 -7846 -7846 -181523892 1 470 +471 -26 -26 -30730 -30730 -207899360 1 471 +481 -51 -51 NULL NULL 536235636 1 481 +482 4 4 NULL NULL 765084282 1 482 +485 -80 -80 11979 11979 874824958 1 485 +489 4 4 -21009 -21009 -928013434 1 489 +49 -47 -47 -20729 -20729 1673218677 1 49 +490 -95 -95 -2617 -2617 1229172951 1 490 +491 -93 -93 4747 4747 -201554470 1 491 +5 120 120 -18933 -18933 -1063673827 1 5 +500 71 71 NULL NULL 1216016081 1 500 +501 63 32 8018 28748 -754130393 2 501 +504 -43 -43 2671 2671 851975276 1 504 +522 111 111 22074 22074 -853606287 1 522 +523 0 0 15923 15923 149701884 1 523 +524 -91 -91 -29218 -29218 -1326025787 1 524 +530 82 82 -22558 -22558 -1851680302 1 530 +535 64 64 NULL NULL 888896424 1 535 +579 -34 -34 3009 3009 -1804244259 1 579 +583 -120 -120 26859 26859 -1554325042 1 583 +584 88 88 -24305 -24305 -2017279089 1 584 +586 113 113 5011 5011 -310343273 1 586 +587 116 116 -4799 -4799 1485934602 1 587 +590 53 53 -16247 -16247 -186764959 1 590 +597 -65 -65 -9584 -9584 1577999613 1 597 +601 -60 -60 17086 17086 -592568201 1 601 +612 -81 -81 -7564 -7564 1131663263 1 612 +615 50 50 23956 23956 2097519027 1 615 +618 -27 -27 32063 32063 -412333994 1 618 +65 -90 -90 -8685 -8685 919363072 1 65 +650 -58 -58 -6494 -6494 1222217404 1 650 +658 -103 -103 32210 32210 -1254129998 1 658 +66 70 70 -32498 -32498 2013444562 1 66 +661 -2 -2 26557 26557 638630670 2 661 +663 -31 -31 -4209 -4209 -1261099087 1 663 +664 113 113 24019 24019 899810881 1 664 +677 57 57 -3449 -3449 -1038565721 1 677 +68 -53 -53 -4169 -4169 879290165 1 68 +681 -31 -31 -22701 -22701 -893863493 1 681 +687 -52 -52 32124 32124 1888675011 1 687 +688 -96 -96 16764 16764 NULL 0 688 +690 102 102 NULL NULL -1112062809 1 690 +691 54 54 25636 25636 -1156193121 1 691 +6923604860394528768 78 78 -13325 -13325 -1095938490 1 6923604860394528768 +6924820982050758656 87 87 26324 26324 -1709117770 1 6924820982050758656 +6926925215281774592 -57 -57 7826 7826 987734049 1 6926925215281774592 +6927260280037097472 120 120 15578 15578 1668094749 1 6927260280037097472 +6928080429732536320 0 0 -17840 -17840 1300798829 1 6928080429732536320 +6933001829416034304 NULL NULL -16998 -16998 2089198703 1 6933001829416034304 +6933451028794925056 39 39 -16367 -16367 1776456512 1 6933451028794925056 +6933731240564056064 111 111 18910 18910 780859673 1 6933731240564056064 +6934570741217755136 22 22 -17642 -17642 491758252 1 6934570741217755136 +694 -36 -36 NULL NULL -2015780444 1 694 +6947488599548215296 14 14 15279 15279 1141595012 1 6947488599548215296 +695 -13 -13 17132 17132 -521886983 1 695 +6960137166475911168 50 50 -11769 -11769 -558456218 1 6960137166475911168 +6962726713896484864 48 48 -4923 -4923 2051470532 1 6962726713896484864 +6963217546192322560 NULL NULL 10083 10083 -1340213051 1 6963217546192322560 +6964585306125008896 31 31 10544 10544 2146312499 1 6964585306125008896 +6967631925774639104 82 82 NULL NULL 373031319 1 6967631925774639104 +6969599299897163776 108 108 -5135 -5135 -2042831105 1 6969599299897163776 +6974475559697768448 -64 -64 -1725 -1725 1493555718 1 6974475559697768448 +6982145326341423104 -68 -68 -27049 -27049 -941433219 1 6982145326341423104 +6987889924212203520 -53 -53 25197 25197 -2053551539 1 6987889924212203520 +6991316084916879360 48 48 20655 20655 -1345085327 1 6991316084916879360 +6996686091335884800 -81 -81 -29442 -29442 -1738775004 1 6996686091335884800 +7006803044329021440 80 80 -398 -398 1614297403 1 7006803044329021440 +7013693841855774720 -116 -116 26158 26158 656187584 1 7013693841855774720 +7014537632150224896 -72 -72 -4451 -4451 -44426049 1 7014537632150224896 +7017956982081404928 -75 -75 -244 -244 -828724467 1 7017956982081404928 +7022349041913978880 93 93 505 505 -1096013673 1 7022349041913978880 +7027529814236192768 -60 -60 -4804 -4804 -1988508336 1 7027529814236192768 +7031339012080549888 -121 -121 -696 -696 1182390248 1 7031339012080549888 +7039820685967343616 41 41 -3517 -3517 -483740394 1 7039820685967343616 +7045967493826387968 105 105 7066 7066 -1669227632 1 7045967493826387968 +7049773031131283456 -57 -57 -4726 -4726 814544198 1 7049773031131283456 +7052226236896256000 41 41 -19270 -19270 1119976718 1 7052226236896256000 +7054271419461812224 50 50 -12422 -12422 -1266138408 1 7054271419461812224 +7054938591408996352 -119 -119 -23137 -23137 -352146259 1 7054938591408996352 +7060236714847412224 -98 -98 552 552 -1858443953 1 7060236714847412224 +7061498706968428544 -50 -50 29999 29999 -290558484 1 7061498706968428544 +7061809776248545280 38 38 28413 28413 -469870330 1 7061809776248545280 +7062382339142156288 4 4 -10513 -10513 536876888 1 7062382339142156288 +7062605127422894080 -35 -35 NULL NULL -1614194712 1 7062605127422894080 +7065344324692443136 7 7 -18672 -18672 -1881263242 1 7065344324692443136 +7068517339681259520 55 55 -24186 -24186 -1871209811 1 7068517339681259520 +7069729473166090240 21 21 -20517 -20517 NULL 0 7069729473166090240 +707 -3 -3 22320 22320 1343581455 1 707 +7077311975029555200 112 112 20348 20348 1103797891 1 7077311975029555200 +7078641038157643776 -87 -87 -13499 -13499 NULL 0 7078641038157643776 +7080269176324218880 -100 -100 -19374 -19374 -337073639 1 7080269176324218880 +7084659344078970880 -40 -40 22655 22655 963854010 1 7084659344078970880 +7086206629592252416 -117 -117 21418 21418 -1106685577 1 7086206629592252416 +7091300332052062208 54 54 13145 13145 NULL 0 7091300332052062208 +7099005292698550272 72 72 -10874 -10874 917891418 1 7099005292698550272 +71 -62 -62 NULL NULL -20639382 1 71 +7107604675626008576 -56 -56 11120 11120 1949494660 1 7107604675626008576 +7125231541858205696 104 104 -7467 -7467 -2111312205 1 7125231541858205696 +7128222874437238784 54 54 29171 29171 -283378057 1 7128222874437238784 +7130159794259353600 -20 -20 4104 4104 -837506172 1 7130159794259353600 +7130306447560826880 -14 -14 -7715 -7715 77063155 1 7130306447560826880 +7149417430082027520 113 113 -22915 -22915 -1352545619 1 7149417430082027520 +7153922334283776000 110 110 -17426 -17426 NULL 0 7153922334283776000 +7157247449513484288 49 49 NULL NULL -36038293 1 7157247449513484288 +7164349895861829632 -121 -121 3316 3316 -1153978907 1 7164349895861829632 +7165364563962191872 -101 -101 -24518 -24518 -1272838092 1 7165364563962191872 +7166263463731421184 101 101 -15578 -15578 -1838281337 1 7166263463731421184 +7175638927948562432 -83 -83 30532 30532 596280431 1 7175638927948562432 +7186401810812059648 10 10 8243 8243 1430614653 1 7186401810812059648 +7195454019231834112 -13 -13 25777 25777 -1419573027 1 7195454019231834112 +7198687580227043328 14 14 -20192 -20192 563507584 1 7198687580227043328 +7199539820886958080 -27 -27 NULL NULL NULL 0 7199539820886958080 +7204802700490858496 -22 -22 15176 15176 -1719427168 1 7204802700490858496 +7210160489915236352 NULL NULL -12755 -12755 -1353470095 1 7210160489915236352 +7212016545671348224 59 59 NULL NULL 1309976380 1 7212016545671348224 +7212090742612467712 -98 -98 5549 5549 -1067083033 1 7212090742612467712 +7217123582035116032 113 113 -3165 -3165 -90029636 1 7217123582035116032 +7220131672176058368 80 80 -25780 -25780 1017953606 1 7220131672176058368 +7220581538170413056 28 28 21402 21402 615661052 1 7220581538170413056 +7223569671814987776 NULL NULL -14973 -14973 -1004204053 1 7223569671814987776 +7226360892091416576 -26 -26 NULL NULL -935723237 1 7226360892091416576 +7229607057201127424 16 16 NULL NULL -1818380492 1 7229607057201127424 +723 NULL NULL -13972 -13972 1616782308 1 723 +7231399302953377792 -41 -41 21665 21665 1990792684 1 7231399302953377792 +7232273749940838400 -83 -83 -3373 -3373 -1231821948 1 7232273749940838400 +7235109456886816768 -114 -114 26181 26181 -2098078720 1 7235109456886816768 +7237310132329488384 -45 -45 15011 15011 -1061859761 1 7237310132329488384 +7238339720750948352 38 38 -12193 -12193 -1770229099 1 7238339720750948352 +724 -28 -28 -20663 -20663 -616724730 1 724 +7242751359672631296 -120 -120 -31659 -31659 -2016985611 1 7242751359672631296 +7249443195032985600 NULL NULL 7180 7180 -51612681 1 7249443195032985600 +7250237407877382144 52 52 8918 8918 -772236518 1 7250237407877382144 +7254710367022645248 67 67 14741 14741 1911809937 1 7254710367022645248 +7255302164215013376 -108 -108 -5118 -5118 1281159709 1 7255302164215013376 +7259955893466931200 10 10 21509 21509 NULL 0 7259955893466931200 +7260908278294560768 43 43 -23250 -23250 826519029 1 7260908278294560768 +7265141874315517952 -99 -99 26910 26910 -571587579 1 7265141874315517952 +7266437490436341760 -41 -41 22870 22870 177391521 1 7266437490436341760 +7271786885641666560 -61 -61 -19291 -19291 936752497 1 7271786885641666560 +7271887863395459072 23 23 -21708 -21708 -94709066 1 7271887863395459072 +7274777328897802240 21 21 32611 32611 482977302 1 7274777328897802240 +7291432593139507200 3 3 21529 21529 1570238232 1 7291432593139507200 +7295502697317097472 NULL NULL -28906 -28906 210728566 1 7295502697317097472 +7295926343524163584 -35 -35 -28366 -28366 1182646662 1 7295926343524163584 +7296164580491075584 -111 -111 -797 -797 1412102605 1 7296164580491075584 +7299197687217856512 8 8 -12564 -12564 172075892 1 7299197687217856512 +73 69 69 -3405 -3405 488014426 1 73 +7304839835188609024 -8 -8 -25417 -25417 1961954939 1 7304839835188609024 +7308289763456000000 NULL NULL -1335 -1335 -1423477356 1 7308289763456000000 +7309156463509061632 -100 -100 1211 1211 1304431147 1 7309156463509061632 +7310869618402910208 -45 -45 -16301 -16301 -359943425 1 7310869618402910208 +7319711402123149312 -95 -95 31125 31125 1036391201 1 7319711402123149312 +7333512171174223872 -8 -8 -24885 -24885 -332125121 1 7333512171174223872 +7339426767877390336 7 7 19302 19302 538268118 1 7339426767877390336 +7343171468838567936 -93 -93 4032 4032 879289168 1 7343171468838567936 +7344029858387820544 115 115 12263 12263 -1669848306 1 7344029858387820544 +7345991518378442752 -28 -28 10916 10916 849859032 1 7345991518378442752 +7347732772348870656 -78 -78 -670 -670 -1800413845 1 7347732772348870656 +7348598907182800896 -101 -101 12411 12411 -1940205653 1 7348598907182800896 +735 65 65 6240 6240 115111911 1 735 +7354813692542304256 77 77 -11232 -11232 1426152053 1 7354813692542304256 +7359004378440146944 -108 -108 11811 11811 1082837515 1 7359004378440146944 +736 -4 -4 -31514 -31514 -1183469360 1 736 +7368920486374989824 64 64 -15064 -15064 -1822850051 1 7368920486374989824 +7370078518278397952 -48 -48 -27284 -27284 -215703544 1 7370078518278397952 +7370803940448305152 -18 -18 25621 25621 -533281137 1 7370803940448305152 +7375521127126089728 102 102 NULL NULL -688296901 1 7375521127126089728 +7376467688511455232 5 5 -6611 -6611 -348628614 1 7376467688511455232 +7378993334503694336 -45 -45 -24911 -24911 1870464222 1 7378993334503694336 +738 26 26 -14597 -14597 -453739759 1 738 +7381659098423926784 -1 -1 22463 22463 867587289 1 7381659098423926784 +7384150968511315968 103 103 NULL NULL 1447462863 1 7384150968511315968 +7386087924003676160 3 3 7603 7603 2038381675 1 7386087924003676160 +7391208370547269632 -1 -1 -22217 -22217 -743680989 1 7391208370547269632 +7393308503950548992 95 95 4400 4400 -849551464 1 7393308503950548992 +7394967727502467072 30 30 -23672 -23672 -1983567458 1 7394967727502467072 +7401968422230032384 -15 -15 14021 14021 -504529358 1 7401968422230032384 +7410096605330227200 38 38 -7948 -7948 1987336880 1 7410096605330227200 +7410872053689794560 -38 -38 -15115 -15115 -916344293 1 7410872053689794560 +7411793502161182720 -5 -5 -32000 -32000 -177025818 1 7411793502161182720 +7412924364686458880 -123 -123 12674 12674 1817671655 1 7412924364686458880 +7414865343000322048 48 48 15626 15626 -829717122 1 7414865343000322048 +7418271723644403712 56 56 24768 24768 1202593021 1 7418271723644403712 +743 18 18 -10277 -10277 1004241194 1 743 +7432428551399669760 23 23 -9171 -9171 -805288503 1 7432428551399669760 +7432998950057975808 59 59 -24336 -24336 -434656160 1 7432998950057975808 +7436133434239229952 112 112 -6874 -6874 203688965 1 7436133434239229952 +7440265908266827776 NULL NULL -6396 -6396 -1425942083 1 7440265908266827776 +7450416810848313344 0 0 29498 29498 1393262450 1 7450416810848313344 +7452756603516190720 110 110 -11008 -11008 -2009569943 1 7452756603516190720 +7454442625055145984 80 80 21377 21377 -267554590 1 7454442625055145984 +7454632396542074880 -97 -97 4749 4749 859140926 1 7454632396542074880 +7461153404961128448 -33 -33 -17166 -17166 -23865350 1 7461153404961128448 +7471208109437304832 -110 -110 18346 18346 -1603374745 1 7471208109437304832 +7473537548003352576 35 35 1350 1350 -1439424023 1 7473537548003352576 +7486884806277611520 -87 -87 5190 5190 1516236846 1 7486884806277611520 +7487338208419823616 59 59 5445 5445 1974939899 1 7487338208419823616 +7487538600082554880 -32 -32 -19330 -19330 2068538934 1 7487538600082554880 +7490717730239250432 64 64 -3219 -3219 -1829691116 1 7490717730239250432 +7491898395977523200 -43 -43 -12811 -12811 1265528735 1 7491898395977523200 +7492436934952574976 -98 -98 20179 20179 NULL 0 7492436934952574976 +7497276415392407552 122 122 -21805 -21805 1543611951 1 7497276415392407552 +7497306924248834048 -78 -78 10807 10807 550594651 1 7497306924248834048 +7500716020874674176 11 11 20243 20243 -1953605752 1 7500716020874674176 +7514552840617558016 59 59 26338 26338 334208532 1 7514552840617558016 +7517159036469575680 58 58 7697 7697 -1437126017 1 7517159036469575680 +7524958388842078208 -78 -78 -7027 -7027 -664856187 1 7524958388842078208 +7528074274555305984 100 100 27999 27999 550186724 1 7528074274555305984 +7528211148397944832 33 33 -17944 -17944 -512198016 1 7528211148397944832 +7534042483076857856 -59 -59 -21662 -21662 1645753684 1 7534042483076857856 +7534145866886782976 54 54 26155 26155 -532755480 1 7534145866886782976 +7534549597202194432 70 70 -30163 -30163 2044130430 1 7534549597202194432 +7545689659010949120 -33 -33 6756 6756 -1380678829 1 7545689659010949120 +7548958830580563968 119 119 6913 6913 1836499981 1 7548958830580563968 +7549858023389003776 53 53 -13226 -13226 NULL 0 7549858023389003776 +7555301305375858688 -105 -105 2652 2652 1916363472 1 7555301305375858688 +7566273236152721408 -13 -13 12814 12814 881673558 1 7566273236152721408 +7569249672628789248 -113 -113 -28689 -28689 -1952235832 1 7569249672628789248 +7570474972934488064 50 50 28118 28118 -432218419 1 7570474972934488064 +7573530789362262016 7 7 -12626 -12626 NULL 0 7573530789362262016 +7575087487730196480 15 15 -30020 -30020 1421779455 1 7575087487730196480 +7581052107944361984 -37 -37 -15538 -15538 1493152791 1 7581052107944361984 +7581614118458335232 -77 -77 -2421 -2421 -1129489281 1 7581614118458335232 +7584007864107778048 41 41 -22910 -22910 1410516523 1 7584007864107778048 +7592440105065308160 85 85 -13713 -13713 NULL 0 7592440105065308160 +7593521922173419520 37 37 20023 20023 1260480653 1 7593521922173419520 +7596563216912211968 -44 -44 31242 31242 605946758 1 7596563216912211968 +7599019810193211392 94 94 -11528 -11528 -2112149052 1 7599019810193211392 +7608447395949109248 -119 -119 1356 1356 882762933 1 7608447395949109248 +7614435638888210432 -113 -113 17129 17129 735600165 1 7614435638888210432 +7620183559667081216 -20 -20 15688 15688 -1967660827 1 7620183559667081216 +7621013099259527168 -59 -59 -6927 -6927 -553349593 1 7621013099259527168 +7625728883085025280 -92 -92 28558 28558 -1699044525 1 7625728883085025280 +7626715182847090688 -77 -77 7153 7153 1905812339 1 7626715182847090688 +763 -31 -31 -408 -408 -1933374662 1 763 +7637152193832886272 -33 -33 20036 20036 1880017800 1 7637152193832886272 +7647481735646363648 7 7 -15024 -15024 1164895226 1 7647481735646363648 +7648729477297987584 2 2 -28551 -28551 NULL 0 7648729477297987584 +7652123583449161728 66 66 -1679 -1679 472901914 1 7652123583449161728 +7659279803863146496 31 31 -9609 -9609 1541249928 1 7659279803863146496 +7662037650719850496 -100 -100 820 820 -175727228 1 7662037650719850496 +7675009476762918912 23 23 -12709 -12709 522895626 1 7675009476762918912 +7678790769408172032 -69 -69 -19681 -19681 -1313618168 1 7678790769408172032 +7682327310082531328 -12 -12 30154 30154 879500678 1 7682327310082531328 +7686992843032010752 -77 -77 14144 14144 -897622427 1 7686992843032010752 +7689489436826804224 33 33 20884 20884 -909127123 1 7689489436826804224 +7690986322714066944 -41 -41 276 276 -2124994385 1 7690986322714066944 +7691062622443044864 98 98 -17531 -17531 1516165279 1 7691062622443044864 +7696737688942567424 -18 -18 20059 20059 -269702086 1 7696737688942567424 +7697541332524376064 -96 -96 -6950 -6950 -1070951602 1 7697541332524376064 +7700734109530767360 -60 -60 30199 30199 194754262 1 7700734109530767360 +7701723309715685376 101 101 14261 14261 -1831957182 1 7701723309715685376 +7705445437881278464 47 47 3374 3374 527598540 1 7705445437881278464 +7710447533880614912 61 61 -11158 -11158 -583908704 1 7710447533880614912 +7718825401976684544 -22 -22 10761 10761 -1226425562 1 7718825401976684544 +7720187583697502208 -72 -72 22837 22837 -1366059787 1 7720187583697502208 +7731443941834678272 -112 -112 31948 31948 -1092872261 1 7731443941834678272 +7735566678126616576 -28 -28 -4819 -4819 1626868156 1 7735566678126616576 +774 -114 -114 -28736 -28736 449788961 1 774 +7741854854673367040 93 93 27830 27830 -1743938290 1 7741854854673367040 +7746402369011277824 -50 -50 -30748 -30748 -1735287250 1 7746402369011277824 +7747874976739016704 89 89 -11384 -11384 315055746 1 7747874976739016704 +7748799008146366464 85 85 6074 6074 -540401598 1 7748799008146366464 +7752740515534422016 NULL NULL 28447 28447 1851654062 1 7752740515534422016 +7753359568986636288 -81 -81 23910 23910 -816661030 1 7753359568986636288 +7753882935005880320 16 16 -14888 -14888 1190302173 1 7753882935005880320 +7761834341179375616 90 90 -30360 -30360 1273877405 1 7761834341179375616 +7762823913046556672 123 123 16767 16767 1198701102 1 7762823913046556672 +7765456790394871808 -98 -98 -4286 -4286 1074488452 1 7765456790394871808 +7768984605670604800 116 116 21606 21606 NULL 0 7768984605670604800 +7775034125776363520 -90 -90 11877 11877 -1628799508 1 7775034125776363520 +7778936842502275072 17 17 -6502 -6502 -1702587308 1 7778936842502275072 +7779486624537370624 124 124 -8795 -8795 -1998652546 1 7779486624537370624 +7779735136559579136 120 120 -13393 -13393 -1228063838 1 7779735136559579136 +7782245855193874432 73 73 6320 6320 618991041 1 7782245855193874432 +7784169796350730240 120 120 -11083 -11083 -958165276 1 7784169796350730240 +7784489776013295616 5 5 26915 26915 -158848747 1 7784489776013295616 +779 62 62 -24422 -24422 -1939362279 1 779 +7790728456522784768 -23 -23 32589 32589 1575091509 1 7790728456522784768 +7792036342592348160 36 36 -10317 -10317 -538812082 1 7792036342592348160 +7794244032613703680 90 90 -3222 -3222 1301426600 1 7794244032613703680 +78 -19 -19 133 133 95356298 1 78 +780 103 103 -29646 -29646 -737624128 1 780 +7800332581637259264 123 123 -17772 -17772 592011541 1 7800332581637259264 +7801697837312884736 -41 -41 -11863 -11863 -116484575 1 7801697837312884736 +7818464507324121088 92 92 2833 2833 -2119724898 1 7818464507324121088 +782 -56 -56 10702 10702 -1552053883 1 782 +7823874904139849728 -125 -125 -23546 -23546 344239980 1 7823874904139849728 +784 75 75 21407 21407 44595790 1 784 +7843804446688264192 -6 -6 -23124 -23124 -397951021 1 7843804446688264192 +7844258063629852672 -1 -1 -20591 -20591 972835688 1 7844258063629852672 +7845953007588401152 120 120 -27232 -27232 NULL 0 7845953007588401152 +7857878068300898304 -50 -50 2616 2616 977624089 1 7857878068300898304 +7868367829080506368 56 56 NULL NULL 658008867 1 7868367829080506368 +7870277756614623232 -105 -105 -20752 -20752 985634256 1 7870277756614623232 +7871189141676998656 79 79 -11006 -11006 1363568842 1 7871189141676998656 +7871554728617025536 6 6 28146 28146 -309571354 1 7871554728617025536 +7874764415950176256 NULL NULL -11187 -11187 2127682701 1 7874764415950176256 +7885697257930588160 NULL NULL -3813 -3813 1992977592 1 7885697257930588160 +7888238729321496576 124 124 NULL NULL 978044705 1 7888238729321496576 +789 -119 -119 31140 31140 NULL 0 789 +7892026679115554816 22 22 -22922 -22922 626941809 1 7892026679115554816 +7892281003266408448 46 46 -26138 -26138 -371779520 1 7892281003266408448 +7898670840507031552 98 98 -22689 -22689 776459017 1 7898670840507031552 +7909645665163804672 -109 -109 -20188 -20188 -1289665817 1 7909645665163804672 +7917494645725765632 -61 -61 20411 20411 2076370203 1 7917494645725765632 +7919597361814577152 70 70 6781 6781 2125311222 1 7919597361814577152 +7921639119138070528 112 112 31432 31432 -1030565036 1 7921639119138070528 +7922443154272395264 39 39 -12904 -12904 -1333770335 1 7922443154272395264 +7926898770090491904 85 85 14176 14176 1582537271 1 7926898770090491904 +7933040277013962752 121 121 -30677 -30677 -1061222139 1 7933040277013962752 +7936149988210212864 -27 -27 -10815 -10815 1769324649 1 7936149988210212864 +7944741547145502720 0 0 -12203 -12203 372099650 1 7944741547145502720 +7947544013461512192 -52 -52 -15501 -15501 -1184620079 1 7947544013461512192 +7948803266578161664 -69 -69 -28864 -28864 1766517223 1 7948803266578161664 +7955126053367119872 -8 -8 -25988 -25988 1447438548 1 7955126053367119872 +7961515985722605568 NULL NULL NULL NULL 866084887 1 7961515985722605568 +7961909238130270208 85 85 22852 22852 -1138530007 1 7961909238130270208 +797 87 87 5550 5550 996831203 1 797 +7983789401706094592 -14 -14 -29239 -29239 230954385 1 7983789401706094592 +7989119273552158720 -55 -55 -4877 -4877 NULL 0 7989119273552158720 +7989160253372817408 -58 -58 1393 1393 1848935036 1 7989160253372817408 +7997694023324975104 -116 -116 10216 10216 -1826997220 1 7997694023324975104 +7998357471114969088 84 84 -18387 -18387 346562088 1 7998357471114969088 +7998687089080467456 -50 -50 5591 5591 NULL 0 7998687089080467456 +80 105 105 NULL NULL NULL 0 80 +8000440057238052864 111 111 4989 4989 1251556414 1 8000440057238052864 +8002769767000145920 -106 -106 -12016 -12016 1668446119 1 8002769767000145920 +8004633750273925120 21 21 21081 21081 -1754203978 1 8004633750273925120 +8011181697250631680 -73 -73 -6948 -6948 1773417290 1 8011181697250631680 +8011602724663336960 -98 -98 756 756 667283966 1 8011602724663336960 +8014986215157530624 -117 -117 -21922 -21922 -799249885 1 8014986215157530624 +8017403886247927808 35 35 13020 13020 -1491722659 1 8017403886247927808 +803 96 96 -11047 -11047 -2096425960 1 803 +8045070943673671680 68 68 30764 30764 435407142 1 8045070943673671680 +8048726769133592576 -30 -30 -12239 -12239 -406264741 1 8048726769133592576 +8059284960252731392 -57 -57 896 896 -251576563 1 8059284960252731392 +8069531888205086720 43 43 9469 9469 1978171687 1 8069531888205086720 +8071961599867387904 105 105 -4218 -4218 52667480 1 8071961599867387904 +8073733016154431488 52 52 -22923 -22923 1815882183 1 8073733016154431488 +8079573715140485120 -49 -49 NULL NULL 503752931 1 8079573715140485120 +808 -5 -5 4536 4536 -1836166334 1 808 +8087737899452432384 -1 -1 18900 18900 -2137168636 1 8087737899452432384 +809 28 28 -21506 -21506 -682333536 1 809 +8091421389575282688 91 91 22232 22232 NULL 0 8091421389575282688 +8099215208813903872 -39 -39 -16680 -16680 492968645 1 8099215208813903872 +8100036735858401280 54 54 -30304 -30304 -146961490 1 8100036735858401280 +8109381965028548608 -121 -121 -11110 -11110 2022944702 1 8109381965028548608 +8111757081791733760 -79 -79 -5314 -5314 -234758376 1 8111757081791733760 +8113585123802529792 67 67 -17254 -17254 129675822 1 8113585123802529792 +8116738401948377088 89 89 24782 24782 1914993018 1 8116738401948377088 +812 71 71 19874 19874 -954480325 1 812 +8120593157178228736 -50 -50 -31709 -31709 -1379039356 1 8120593157178228736 +8129551357032259584 40 40 26664 26664 323817967 1 8129551357032259584 +8135164922674872320 51 51 -3436 -3436 -1459528251 1 8135164922674872320 +8142241016679735296 96 96 -5699 -5699 -163859725 1 8142241016679735296 +8143462899383345152 37 37 2784 2784 644934949 1 8143462899383345152 +8144552446127972352 -103 -103 4081 4081 2083836439 1 8144552446127972352 +8145745969573666816 -88 -88 -21233 -21233 467753905 1 8145745969573666816 +8145750910080745472 -6 -6 -30482 -30482 1275228381 1 8145750910080745472 +8146288732715196416 87 87 -8293 -8293 -728015067 1 8146288732715196416 +8146492373537660928 94 94 18535 18535 1316369941 1 8146492373537660928 +8148211378319933440 -8 -8 26869 26869 NULL 0 8148211378319933440 +815 74 74 23177 23177 1910930064 1 815 +8150115791664340992 -109 -109 -32022 -32022 793047956 1 8150115791664340992 +8156018594610790400 -49 -49 -12071 -12071 1384071499 1 8156018594610790400 +8156782979767238656 63 63 2756 2756 -1651993300 1 8156782979767238656 +8160569434550403072 -90 -90 19986 19986 -1808960215 1 8160569434550403072 +8160662610166194176 12 12 27077 27077 -310584775 1 8160662610166194176 +8163948965373386752 0 0 -2835 -2835 1968813171 1 8163948965373386752 +8168742078705262592 -50 -50 -8286 -8286 -303747347 1 8168742078705262592 +8169878743136043008 76 76 -19545 -19545 1765874562 1 8169878743136043008 +8171188598958407680 NULL NULL NULL NULL 1996235654 1 8171188598958407680 +8183233196086214656 57 57 -2827 -2827 1450881368 1 8183233196086214656 +8184799300477943808 -68 -68 9069 9069 -579916775 1 8184799300477943808 +8190539859890601984 12 12 7343 7343 1418228573 1 8190539859890601984 +8190967051000659968 42 42 -562 -562 604460005 1 8190967051000659968 +8192304692696383488 95 95 -9528 -9528 494570380 1 8192304692696383488 +8195103847607967744 58 58 18555 18555 15020431 1 8195103847607967744 +8199513544090730496 -50 -50 16693 16693 758926227 1 8199513544090730496 +820 125 21 20428 26867 337231116 2 820 +8201303040648052736 -52 -52 -18385 -18385 -774406989 1 8201303040648052736 +8201491077550874624 NULL NULL -19295 -19295 1677197847 1 8201491077550874624 +8208354137450766336 -55 -55 23205 23205 1377144283 1 8208354137450766336 +8210813831744118784 -46 -46 31502 31502 139661585 1 8210813831744118784 +8213810702473183232 -83 -83 -6513 -6513 587797446 1 8213810702473183232 +8219326436390821888 -57 -57 -17689 -17689 2064448036 1 8219326436390821888 +8220104397160169472 -50 -50 27071 27071 -1274158260 1 8220104397160169472 +8221561626658881536 -29 -29 -4211 -4211 -1626062014 1 8221561626658881536 +8222714144797368320 -78 -78 -10532 -10532 -318380015 1 8222714144797368320 +8223732800007864320 -91 -91 7579 7579 -599396052 1 8223732800007864320 +823 96 96 NULL NULL 1660088606 1 823 +8230371298967609344 57 57 24436 24436 1660278264 1 8230371298967609344 +8235179243092090880 -78 -78 -28932 -28932 187893585 1 8235179243092090880 +8244041599171862528 -111 -111 -7201 -7201 402173272 1 8244041599171862528 +8254763178969915392 -80 -80 18972 18972 658850444 1 8254763178969915392 +8268875586442256384 -104 -104 6115 6115 1271280812 1 8268875586442256384 +8269730157217062912 7 7 4952 4952 127051381 1 8269730157217062912 +8272001752345690112 -118 -118 22006 22006 3999930 1 8272001752345690112 +8279056098670198784 -115 -115 -240 -240 2133492883 1 8279056098670198784 +8282648443538710528 0 0 -19427 -19427 -402441123 1 8282648443538710528 +8283099811330506752 73 73 16195 16195 737149747 1 8283099811330506752 +8286706213485297664 3 3 6587 6587 -916495008 1 8286706213485297664 +8287522765741301760 45 45 -27705 -27705 -1817564067 1 8287522765741301760 +8290014929764040704 -124 -124 -25624 -25624 -1424027104 1 8290014929764040704 +8290944180915871744 20 20 -24115 -24115 684561551 1 8290944180915871744 +8294315622451740672 70 70 29922 29922 -43858652 1 8294315622451740672 +8295110846998233088 -107 -107 19917 19917 -1945738830 1 8295110846998233088 +83 11 11 -23836 -23836 -684022323 1 83 +8302473563519950848 69 69 28358 28358 -1524081566 1 8302473563519950848 +8316336224427483136 84 84 -18485 -18485 345556325 1 8316336224427483136 +8323460620425330688 -43 -43 24298 24298 -1524554771 1 8323460620425330688 +8325227661920133120 -61 -61 28000 28000 -178568841 1 8325227661920133120 +8332670681629106176 -65 -65 21932 21932 -314935936 1 8332670681629106176 +8333523087360901120 23 23 NULL NULL -442732016 1 8333523087360901120 +8337549596011102208 -127 -127 16110 16110 904604938 1 8337549596011102208 +8345435427356090368 -88 -88 198 198 323919214 1 8345435427356090368 +835 30 30 -4159 -4159 -1054609414 1 835 +8351163199364390912 -48 -48 -232 -232 391186487 1 8351163199364390912 +8362046808797306880 45 45 -31764 -31764 89366322 1 8362046808797306880 +8365058996333953024 62 62 -14280 -14280 -2043805661 1 8365058996333953024 +8367680396909404160 14 14 -12517 -12517 -1269216718 1 8367680396909404160 +8368012468775608320 -98 -98 21941 21941 -1665164127 1 8368012468775608320 +837 74 74 13161 13161 170870820 1 837 +8371939471056470016 -29 -29 -22000 -22000 826143442 1 8371939471056470016 +8372408423196270592 73 73 -29468 -29468 564349193 1 8372408423196270592 +8372588378498777088 62 62 30936 30936 1321678350 1 8372588378498777088 +8374321007870836736 46 46 -15874 -15874 -329336519 1 8374321007870836736 +8376440110255243264 -58 -58 3325 3325 1665724041 1 8376440110255243264 +8383159090746204160 NULL NULL -19276 -19276 605141554 1 8383159090746204160 +8388363436324085760 -120 -120 22678 22678 -707108808 1 8388363436324085760 +8391407951622815744 107 107 19968 19968 NULL 0 8391407951622815744 +8391785334471589888 -72 -72 -15957 -15957 -630900418 1 8391785334471589888 +8396433451610652672 -7 -7 28940 28940 -180280420 1 8396433451610652672 +8398862954249560064 -48 -48 -22447 -22447 669871113 1 8398862954249560064 +8407869317250220032 -55 -55 NULL NULL -1240912824 1 8407869317250220032 +8410599906334097408 -6 -6 17701 17701 -1606567895 1 8410599906334097408 +8411494452500930560 13 13 28551 28551 -1568646283 1 8411494452500930560 +8415171956168417280 -111 -111 19862 19862 541118710 1 8415171956168417280 +8416121695917498368 93 93 18140 18140 63706286 1 8416121695917498368 +8417381121663746048 55 55 -24267 -24267 1458051497 1 8417381121663746048 +8419958579638157312 -114 -114 18690 18690 -99916247 1 8419958579638157312 +8424515140664360960 -111 -111 -20112 -20112 1847210729 1 8424515140664360960 +8435912708683087872 -52 -52 -19028 -19028 -2081809883 1 8435912708683087872 +845 NULL NULL 14234 14234 -1026746699 1 845 +8451612303224520704 -113 -113 26241 26241 -971203543 1 8451612303224520704 +8454154705460666368 12 12 -8321 -8321 -1421396891 1 8454154705460666368 +8455496814886002688 68 68 6379 6379 107680423 1 8455496814886002688 +8457906374051020800 -98 -98 -30244 -30244 106847364 1 8457906374051020800 +8461498293348065280 49 49 3186 3186 1636364987 1 8461498293348065280 +8463868417649524736 -81 -81 25986 25986 -1643714866 1 8463868417649524736 +8467976965865799680 22 22 -23622 -23622 916057807 1 8467976965865799680 +8470141334513098752 -8 -8 30861 30861 NULL 0 8470141334513098752 +8472429318602268672 NULL NULL -16518 -16518 -308225568 1 8472429318602268672 +8473699639908261888 -86 -86 -5829 -5829 -591879497 1 8473699639908261888 +8487573502287478784 -8 -8 27787 27787 1895282160 1 8487573502287478784 +8489584373231919104 -22 -22 -18659 -18659 1416850873 1 8489584373231919104 +8489735221193138176 -89 -89 29333 29333 -1124028213 1 8489735221193138176 +85 -91 -91 -3202 -3202 -913906252 1 85 +8501910015960735744 19 19 -2060 -2060 1579460630 1 8501910015960735744 +8508401924853850112 108 108 -2825 -2825 -1578387726 1 8508401924853850112 +8509508263705477120 -103 -103 -20934 -20934 1107757211 1 8509508263705477120 +8514851182589771776 52 52 -13805 -13805 415234946 1 8514851182589771776 +8514979402185596928 -77 -77 NULL NULL 1902676205 1 8514979402185596928 +8515682078777081856 98 98 14331 14331 -1026458834 1 8515682078777081856 +8518454006987948032 -78 -78 -22941 -22941 -379174037 1 8518454006987948032 +8519937082746634240 -3 -3 -28566 -28566 -1745449855 1 8519937082746634240 +8523972434954510336 -52 -52 17720 17720 2134433675 1 8523972434954510336 +8524940073536954368 52 52 24488 24488 476858779 1 8524940073536954368 +8525336514806317056 119 119 -14405 -14405 350802495 1 8525336514806317056 +8525894870444638208 13 13 -9735 -9735 1216287232 1 8525894870444638208 +8532016240026279936 -67 -67 -7172 -7172 -1726585032 1 8532016240026279936 +8536948829863198720 100 100 -6024 -6024 1723691683 1 8536948829863198720 +8540237852367446016 92 92 2728 2728 398960205 1 8540237852367446016 +8543177193114779648 51 51 18637 18637 2048533360 1 8543177193114779648 +8547243497773457408 42 42 29721 29721 -534991774 1 8547243497773457408 +8551446856960942080 72 72 24446 24446 -1312782341 1 8551446856960942080 +8553195689344991232 45 45 -9065 -9065 566646177 1 8553195689344991232 +8554899472487596032 -24 -24 -13978 -13978 -491882534 1 8554899472487596032 +8555933456197828608 29 29 24105 24105 NULL 0 8555933456197828608 +8555948987770511360 -54 -54 18071 18071 107941738 1 8555948987770511360 +8557218322962644992 42 42 22278 22278 -1210550573 1 8557218322962644992 +8558000156325707776 6 6 -30638 -30638 -370901197 1 8558000156325707776 +8560526613401714688 17 17 -16622 -16622 1592467112 1 8560526613401714688 +8569030475428511744 -55 -55 -25166 -25166 1743671220 1 8569030475428511744 +8570983266408103936 106 106 NULL NULL 950545385 1 8570983266408103936 +8571268359622172672 119 119 -6384 -6384 1187495452 1 8571268359622172672 +8573305425181941760 115 115 14089 14089 1583280136 1 8573305425181941760 +8577096957495025664 125 125 7954 7954 NULL 0 8577096957495025664 +8579974641030365184 -97 -97 -3619 -3619 -1545388906 1 8579974641030365184 +8583916402383601664 56 56 8551 8551 -733239404 1 8583916402383601664 +8613562211893919744 98 98 -21357 -21357 -1109134719 1 8613562211893919744 +8625937019655200768 -104 -104 -6736 -6736 272086526 1 8625937019655200768 +8631515095562887168 -77 -77 -9494 -9494 -1244527286 1 8631515095562887168 +8637720762289659904 1 1 NULL NULL 1669519977 1 8637720762289659904 +8639254009546055680 NULL NULL 26952 26952 477584560 1 8639254009546055680 +8641221723991433216 -46 -46 18350 18350 -1531040609 1 8641221723991433216 +8643198489997254656 94 94 10273 10273 -1079086534 1 8643198489997254656 +8644602243484803072 79 79 -23663 -23663 -1218592418 1 8644602243484803072 +8649296591032172544 -92 -92 -13979 -13979 -1744964279 1 8649296591032172544 +8652485812846567424 42 42 10699 10699 1372705672 1 8652485812846567424 +8656571350884048896 -19 -19 -16002 -16002 NULL 0 8656571350884048896 +8660248367767076864 -122 -122 -16872 -16872 1520375588 1 8660248367767076864 +8665969966920990720 -105 -105 -25596 -25596 1372982791 1 8665969966920990720 +8666178591503564800 -104 -104 -21025 -21025 -1565785026 1 8666178591503564800 +8677632093825916928 21 21 30632 30632 2040926345 1 8677632093825916928 +8677794924343164928 123 123 -20409 -20409 115470151 1 8677794924343164928 +868 NULL NULL -14644 -14644 -2133145181 1 868 +8682955459667951616 96 96 -25282 -25282 2009215103 1 8682955459667951616 +8687042963221159936 -61 -61 3063 3063 -870624802 1 8687042963221159936 +8688483860094599168 -96 -96 -25734 -25734 -273937943 1 8688483860094599168 +8693036785094565888 41 41 NULL NULL 2090496825 1 8693036785094565888 +8697823501349609472 -2 -2 -14597 -14597 922553769 1 8697823501349609472 +8698055291501543424 71 71 27905 27905 -1755088362 1 8698055291501543424 +8708232769657815040 -13 -13 31135 31135 6526476 1 8708232769657815040 +8708845895460577280 -34 -34 -27553 -27553 1860113703 1 8708845895460577280 +871 -31 -31 -9496 -9496 915505006 1 871 +8714829359200747520 -11 -11 23834 23834 672919099 1 8714829359200747520 +8716401555586727936 92 92 8188 8188 -789126455 1 8716401555586727936 +8720504651219001344 -93 -93 18820 18820 825677248 1 8720504651219001344 +8723248113030782976 -8 -8 NULL NULL 144499388 1 8723248113030782976 +873 8 8 NULL NULL 842283345 1 873 +8731960288562044928 15 15 7392 7392 869288953 1 8731960288562044928 +8734584858442498048 -71 -71 9962 9962 -946830673 1 8734584858442498048 +8736061027343859712 79 79 -28084 -28084 -1974972123 1 8736061027343859712 +874 NULL NULL 6367 6367 58313734 1 874 +8752150411997356032 -97 -97 913 913 -1502924486 1 8752150411997356032 +8759089349412847616 NULL NULL 16439 16439 1972940844 1 8759089349412847616 +8759184090543857664 -2 -2 -373 -373 435426302 1 8759184090543857664 +8760285623204290560 100 100 -24296 -24296 -573787626 1 8760285623204290560 +8761174805938331648 -114 -114 28048 28048 1205391962 1 8761174805938331648 +8769199243315814400 -123 -123 25732 25732 2100377172 1 8769199243315814400 +8773222500321361920 -74 -74 4261 4261 217823040 1 8773222500321361920 +8775009214012456960 113 113 -29988 -29988 -213198503 1 8775009214012456960 +8779073705407963136 -75 -75 -31967 -31967 -1979314577 1 8779073705407963136 +8779711700787298304 71 71 27960 27960 -859535015 1 8779711700787298304 +878 106 106 -21723 -21723 290601612 1 878 +8780196485890555904 48 48 -9183 -9183 -607285491 1 8780196485890555904 +8782900615468302336 88 88 -12396 -12396 -1411407810 1 8782900615468302336 +8783241818558193664 -102 -102 NULL NULL -714270951 1 8783241818558193664 +8785153741735616512 -107 -107 15530 15530 1028092807 1 8785153741735616512 +8792059919353348096 41 41 -10569 -10569 -745678338 1 8792059919353348096 +8793387410919038976 -73 -73 -1011 -1011 -1058166020 1 8793387410919038976 +8795069490394882048 6 6 -5946 -5946 1366402722 1 8795069490394882048 +8806507556248731648 89 89 32734 32734 1190554937 1 8806507556248731648 +8808467247666241536 59 59 297 297 -1706867123 1 8808467247666241536 +8811693967537774592 NULL NULL 24299 24299 1731764471 1 8811693967537774592 +8815398225009967104 103 103 NULL NULL -1701502632 1 8815398225009967104 +8817665768680906752 -82 -82 -24320 -24320 1550375386 1 8817665768680906752 +8822384228057604096 85 85 26579 26579 -1371840597 1 8822384228057604096 +8825059717746376704 75 75 12802 12802 872554087 1 8825059717746376704 +8829545979081744384 90 90 -27844 -27844 NULL 0 8829545979081744384 +883 62 62 12048 12048 -1554130090 1 883 +8836228556823977984 49 49 -26061 -26061 1499399891 1 8836228556823977984 +8837420822750314496 -23 -23 -29475 -29475 2052773366 1 8837420822750314496 +8849475396952514560 -28 -28 NULL NULL 718692886 1 8849475396952514560 +8850055384477401088 21 21 -20657 -20657 1503176016 1 8850055384477401088 +8853989376829833216 82 82 5196 5196 -1505397109 1 8853989376829833216 +8854495099223375872 -49 -49 -12588 -12588 2065408093 1 8854495099223375872 +8854677881758162944 NULL NULL -32263 -32263 1883400319 1 8854677881758162944 +8854715632851345408 49 49 22511 22511 1301997393 1 8854715632851345408 +8856674723376668672 NULL NULL NULL NULL -4943292 1 8856674723376668672 +8868529429494071296 52 52 19003 19003 1830870769 1 8868529429494071296 +8871707618793996288 23 23 NULL NULL -677778959 1 8871707618793996288 +8875745082589929472 -50 -50 -28968 -28968 -1460613213 1 8875745082589929472 +888 -6 -6 15862 15862 1012696613 1 888 +8895174927321243648 -57 -57 30921 30921 -522450861 1 8895174927321243648 +8896237972875370496 -54 -54 -31404 -31404 1540680149 1 8896237972875370496 +8897901899039473664 39 39 3228 3228 -535056977 1 8897901899039473664 +8899122608190930944 124 124 -1067 -1067 -2146432765 1 8899122608190930944 +8900180888218329088 87 87 13048 13048 -1058356124 1 8900180888218329088 +8900351886974279680 -83 -83 -15497 -15497 1000106109 1 8900351886974279680 +8900545829211299840 -102 -102 256 256 352214248 1 8900545829211299840 +8905330479248064512 46 46 27675 27675 NULL 0 8905330479248064512 +8910706980937261056 118 118 -12506 -12506 1166237779 1 8910706980937261056 +8920344895701393408 81 81 7299 7299 -1126628450 1 8920344895701393408 +8920533610804609024 84 84 7569 7569 1739911574 1 8920533610804609024 +8927691194719174656 76 76 5025 5025 -917062754 1 8927691194719174656 +8928133990107881472 -70 -70 23063 23063 -1511162508 1 8928133990107881472 +8935252708196999168 97 97 12327 12327 1603612975 1 8935252708196999168 +8936639033158410240 -57 -57 21469 21469 -1305139473 1 8936639033158410240 +8939431770838810624 -108 -108 -18292 -18292 -934008333 1 8939431770838810624 +8945004737083555840 15 15 19887 19887 252169185 1 8945004737083555840 +8945302550165004288 -116 -116 22118 22118 1117805438 1 8945302550165004288 +8962097525980225536 NULL NULL -26946 -26946 -329695030 1 8962097525980225536 +8972161729142095872 90 90 NULL NULL 1709983738 1 8972161729142095872 +8979012655944220672 -16 -16 -29722 -29722 -120692484 1 8979012655944220672 +898 56 32 -22608 28077 104527563 2 898 +8983857919580209152 16 16 -29285 -29285 1273798925 1 8983857919580209152 +8983912573761167360 -95 -95 -17690 -17690 NULL 0 8983912573761167360 +8984935029383389184 -96 -96 NULL NULL -1565671389 1 8984935029383389184 +8987827141270880256 -42 -42 -27015 -27015 -1024500955 1 8987827141270880256 +8991071342495531008 -59 -59 15655 15655 -574475259 1 8991071342495531008 +8991442360387584000 -10 -10 -5468 -5468 2081243058 1 8991442360387584000 +8994608999945125888 113 113 -23323 -23323 -839512271 1 8994608999945125888 +8995562121346260992 2 2 11664 11664 -618505946 1 8995562121346260992 +8996824426131390464 0 0 28774 28774 -214166042 1 8996824426131390464 +9000633029632499712 -35 -35 -10420 -10420 -641062448 1 9000633029632499712 +9001907486943993856 NULL NULL 7483 7483 -1974257754 1 9001907486943993856 +9005866015985713152 -98 -98 -5374 -5374 652118640 1 9005866015985713152 +9016280522993975296 -8 -8 20794 20794 388707554 1 9016280522993975296 +9020143715350814720 4 4 16565 16565 NULL 0 9020143715350814720 +9023663198045544448 0 0 22388 22388 1145627305 1 9023663198045544448 +9030480306789818368 -91 -91 NULL NULL -758973175 1 9030480306789818368 +9038087402564657152 74 74 -14836 -14836 NULL 0 9038087402564657152 +9040958359122640896 -48 -48 -30157 -30157 -1635301453 1 9040958359122640896 +9043089884440068096 33 33 -19020 -19020 -1527024213 1 9043089884440068096 +9048002942653710336 -15 -15 14982 14982 -1079231269 1 9048002942653710336 +9048297564833079296 7 7 29851 29851 -1534307678 1 9048297564833079296 +9050032047355125760 -52 -52 27527 27527 -1240048334 1 9050032047355125760 +9053187076403060736 73 73 -32208 -32208 1075444504 1 9053187076403060736 +9054887854393950208 75 75 13522 13522 -1517536924 1 9054887854393950208 +9062227900376203264 30 30 4206 4206 1260101584 1 9062227900376203264 +9064847977742032896 3 3 10727 10727 -1849091666 1 9064847977742032896 +9067985867711291392 126 126 NULL NULL 43672187 1 9067985867711291392 +9073672806863790080 116 116 -32119 -32119 -2144241640 1 9073672806863790080 +9075404705968840704 -17 -17 22289 22289 712816880 1 9075404705968840704 +9078604269481148416 90 90 -8309 -8309 -298221893 1 9078604269481148416 +908 -73 -73 -9102 -9102 266601601 1 908 +9083076230151864320 126 126 -23667 -23667 2111462911 1 9083076230151864320 +9083704659251798016 57 57 1280 1280 -1359838019 1 9083704659251798016 +9084402694981533696 52 52 28570 28570 NULL 0 9084402694981533696 +9085381906890203136 71 71 -11066 -11066 -240529113 1 9085381906890203136 +9085434340468473856 -1 -1 -14551 -14551 76381404 1 9085434340468473856 +9086905513121890304 -126 -126 -4808 -4808 1796013407 1 9086905513121890304 +9089435102788009984 11 11 -21274 -21274 2102440065 1 9089435102788009984 +9091082386452684800 70 70 -25463 -25463 748185058 1 9091082386452684800 +9091085792947666944 64 64 22618 22618 254921167 1 9091085792947666944 +9094945190752903168 -19 -19 -32480 -32480 2126491387 1 9094945190752903168 +9096395849845194752 -122 -122 25038 25038 100270148 1 9096395849845194752 +91 -21 -21 15628 15628 -1288198020 1 91 +9104574294205636608 -20 -20 -20834 -20834 1257621270 1 9104574294205636608 +9107991000536498176 30 30 10615 10615 -847235873 1 9107991000536498176 +9112400579327483904 -65 -65 17073 17073 1111985530 1 9112400579327483904 +9114850402293882880 107 107 -23153 -23153 1571267481 1 9114850402293882880 +9116137265342169088 NULL NULL NULL NULL -236700442 1 9116137265342169088 +9117063974299148288 42 42 29954 29954 -297664578 1 9117063974299148288 +9119046173224370176 -94 -94 -6088 -6088 1604076720 1 9119046173224370176 +9123116008004288512 NULL NULL -1801 -1801 1882932986 1 9123116008004288512 +913 -62 -62 -25077 -25077 1845797092 1 913 +9131533983989358592 4 4 -7178 -7178 -1234163924 1 9131533983989358592 +9132009829414584320 107 107 -2027 -2027 -1856034030 1 9132009829414584320 +9136234417125007360 -71 -71 -21820 -21820 NULL 0 9136234417125007360 +9136548192574529536 44 44 -19926 -19926 1121512594 1 9136548192574529536 +9139805788041134080 -45 -45 -5338 -5338 881396599 1 9139805788041134080 +914 -91 -91 -7300 -7300 -1257859205 1 914 +9148071980848742400 -77 -77 30619 30619 1370723240 1 9148071980848742400 +9149216169284091904 -72 -72 -31033 -31033 -694520014 1 9149216169284091904 +9165199002069458944 -6 -6 312 312 430686478 1 9165199002069458944 +9169248521377374208 86 86 32547 32547 1566958573 1 9169248521377374208 +917 25 25 -15493 -15493 -2076460151 1 917 +9174894805640142848 -94 -94 -30397 -30397 1336842978 1 9174894805640142848 +918 -105 -105 -21292 -21292 1359437295 1 918 +9180098147855769600 111 111 -6349 -6349 1950882901 1 9180098147855769600 +9182828596851990528 -87 -87 21091 21091 -1012329052 1 9182828596851990528 +9185458640237641728 -6 -6 31316 31316 -1011125931 1 9185458640237641728 +9185952983951343616 -68 -68 -14315 -14315 889733679 1 9185952983951343616 +9188173682239275008 50 50 -17236 -17236 -1248781172 1 9188173682239275008 +919 120 120 30166 30166 -357680544 1 919 +9190466190353661952 14 14 18823 18823 1918230406 1 9190466190353661952 +9191943992860327936 22 22 -16940 -16940 -595769210 1 9191943992860327936 +9194388393453060096 -11 -11 -16362 -16362 1002519329 1 9194388393453060096 +9199741683232399360 -125 -125 22704 22704 -1096771844 1 9199741683232399360 +9207107990561972224 122 122 13265 13265 -765190882 1 9207107990561972224 +9207927479837319168 116 116 18354 18354 2066707767 1 9207927479837319168 +9209153648361848832 77 77 2952 2952 471464395 1 9209153648361848832 +921 92 92 -23550 -23550 1238986437 1 921 +9211455920344088576 54 54 -15936 -15936 166320811 1 9211455920344088576 +922 28 28 -16425 -16425 932774185 1 922 +923 -37 -37 20704 20704 -1506324615 1 923 +927 84 84 NULL NULL 1044196568 1 927 +928 -9 -9 -11160 -11160 413090363 1 928 +939 -31 -31 -739 -739 -982238309 1 939 +94 87 87 -5837 -5837 NULL 0 94 +945 -43 -43 27454 27454 219415594 1 945 +947 -85 -85 30237 30237 -896274896 1 947 +950 37 45 -13601 -7230 -3606362766 2 950 +958 46 46 -4910 -4910 NULL 0 958 +961 -27 -27 10473 10473 1805139501 1 961 +965 125 125 26292 26292 1336951982 1 965 +967 -57 -57 11843 11843 -1240208945 1 967 +976 72 72 7058 7058 -1563676282 1 976 +979 123 123 -9798 -9798 1022214896 1 979 +982 -98 -98 -18140 -18140 -835198551 1 982 +987 NULL NULL -19159 -19159 1807877618 1 987 +997 -14 -14 15342 15342 -742707249 1 997 +999 107 107 11159 11159 -346607939 1 999 +NULL 127 -1065 -32371 32563 -9784926725 80 NULL diff --git ql/src/test/results/clientpositive/tez/vector_groupby7.q.out ql/src/test/results/clientpositive/tez/vector_groupby7.q.out new file mode 100644 index 0000000..c048887 --- /dev/null +++ ql/src/test/results/clientpositive/tez/vector_groupby7.q.out @@ -0,0 +1,2029 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Tez + Edges: + Reducer 2 <- Map 1 (SIMPLE_EDGE) +#### A masked pattern was here #### + Vertices: + Map 1 + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), t (type: tinyint), i (type: int) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1), sum(_col1), count(), sum(_col2), count(_col2), max(_col0) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: tinyint), _col2 (type: bigint), _col3 (type: bigint), _col4 (type: bigint), _col5 (type: bigint), _col6 (type: bigint) + Execution mode: vectorized + Reducer 2 + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), sum(VALUE._col1), count(VALUE._col2), sum(VALUE._col3), count(VALUE._col4), max(VALUE._col5) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 36 36 1 -603273425 1 -6917607783359897600 +-6919476845891313664 124 124 1 710856472 1 -6919476845891313664 +-6920172215209426944 115 115 1 -764412063 1 -6920172215209426944 +-6921654334727036928 52 52 1 -1066775085 1 -6921654334727036928 +-6933565857643814912 -80 -80 1 581259902 1 -6933565857643814912 +-6934304742087655424 77 77 1 955171928 1 -6934304742087655424 +-6935038507792801792 55 55 1 174310705 1 -6935038507792801792 +-6935548339131138048 -85 -85 1 -1062159435 1 -6935548339131138048 +-6938706403992854528 -102 -102 1 980732494 1 -6938706403992854528 +-6941777546186579968 NULL NULL 1 121663320 1 -6941777546186579968 +-6947955278050181120 -63 -63 1 641695802 1 -6947955278050181120 +-6951350560260784128 -6 -6 1 1342923026 1 -6951350560260784128 +-6957946688477274112 -96 -96 1 1505168716 1 -6957946688477274112 +-6960947572095770624 -15 -15 1 1136976809 1 -6960947572095770624 +-6962271229404348416 -103 -103 1 1106995930 1 -6962271229404348416 +-6962292590214234112 -53 -53 1 -1147471772 1 -6962292590214234112 +-6968771079156654080 -7 -7 1 -939348081 1 -6968771079156654080 +-6968892545529896960 126 126 1 470993066 1 -6968892545529896960 +-6970396058557005824 81 81 1 2140632003 1 -6970396058557005824 +-6974654664348033024 -61 -61 1 -968377273 1 -6974654664348033024 +-6975459232300236800 -88 -88 1 1151752586 1 -6975459232300236800 +-6986178228432322560 60 60 1 -1369253050 1 -6986178228432322560 +-6988811476286873600 -53 -53 1 -1968097621 1 -6988811476286873600 +-6988970700649168896 -68 -68 1 -1230459100 1 -6988970700649168896 +-6992217501957169152 -32 -32 1 1472487454 1 -6992217501957169152 +-6997233584896229376 -118 -118 1 -76654979 1 -6997233584896229376 +-7000925438663041024 -115 -115 1 596045726 1 -7000925438663041024 +-7003696402314215424 -21 -21 1 -1458382451 1 -7003696402314215424 +-7011425384222244864 73 73 1 NULL 0 -7011425384222244864 +-7017212700635545600 115 115 1 304860245 1 -7017212700635545600 +-7020852530219171840 -104 -104 1 824836988 1 -7020852530219171840 +-7030489936116252672 58 58 1 1115197541 1 -7030489936116252672 +-7035132060308643840 -80 -80 1 NULL 0 -7035132060308643840 +-7036607470351654912 102 102 1 -1933192293 1 -7036607470351654912 +-7037375807670501376 20 20 1 -1168823523 1 -7037375807670501376 +-7037638331316469760 -104 -104 1 14573904 1 -7037638331316469760 +-7038455462786334720 74 74 1 524317972 1 -7038455462786334720 +-7040248820505149440 -82 -82 1 196581473 1 -7040248820505149440 +-7041362811802148864 -94 -94 1 -455114104 1 -7041362811802148864 +-7042183597114081280 121 121 1 658636280 1 -7042183597114081280 +-7046180371529351168 35 35 1 -117723745 1 -7046180371529351168 +-7049618574399692800 47 47 1 -978892011 1 -7049618574399692800 +-7052619594823221248 -46 -46 1 -1117358187 1 -7052619594823221248 +-7055619148037554176 22 22 1 -838656526 1 -7055619148037554176 +-7055760785575665664 53 53 1 759899363 1 -7055760785575665664 +-7057750467944931328 -26 -26 1 -71449585 1 -7057750467944931328 +-7058986555327307776 34 34 1 1942004879 1 -7058986555327307776 +-7063777488249085952 112 112 1 -507250351 1 -7063777488249085952 +-7078068944081002496 -101 -101 1 2013178181 1 -7078068944081002496 +-7079898537463537664 122 122 1 -1205034356 1 -7079898537463537664 +-7081500255163727872 52 52 1 -1969751342 1 -7081500255163727872 +-7083646746411720704 -24 -24 1 780938234 1 -7083646746411720704 +-7085247548404178944 -84 -84 1 1640192895 1 -7085247548404178944 +-7093825013581979648 NULL NULL 1 -628790799 1 -7093825013581979648 +-7094189393339678720 -91 -91 1 1796486238 1 -7094189393339678720 +-7094827141662539776 -42 -42 1 -632803945 1 -7094827141662539776 +-7104310188119834624 -69 -69 1 -1928197479 1 -7104310188119834624 +-7106210529681350656 -91 -91 1 1718167702 1 -7106210529681350656 +-7109790267244814336 22 22 1 -291577538 1 -7109790267244814336 +-7115054815375073280 -88 -88 1 NULL 0 -7115054815375073280 +-7120456708338688000 117 117 1 1751468853 1 -7120456708338688000 +-7127548949860818944 -28 -28 1 260463232 1 -7127548949860818944 +-7138415011665043456 111 111 1 -1345391395 1 -7138415011665043456 +-7139677575412686848 -85 -85 1 -1556127172 1 -7139677575412686848 +-7140008543769042944 69 69 1 -1938290238 1 -7140008543769042944 +-7144791190333546496 -37 -37 1 -876122064 1 -7144791190333546496 +-7145585429014888448 26 26 1 -817093900 1 -7145585429014888448 +-7147490721376591872 25 25 1 1759741857 1 -7147490721376591872 +-7152177800841502720 -79 -79 1 -37773326 1 -7152177800841502720 +-7155539549555105792 -86 -86 1 -345542922 1 -7155539549555105792 +-7158472098920390656 -127 -127 1 -71305062 1 -7158472098920390656 +-7159700138947862528 5 5 1 -76430653 1 -7159700138947862528 +-7161165959057334272 56 56 1 1352649032 1 -7161165959057334272 +-7162299524557471744 84 84 1 1813010930 1 -7162299524557471744 +-7172594404186693632 -105 -105 1 -1949359208 1 -7172594404186693632 +-7185369278665605120 73 73 1 -374337252 1 -7185369278665605120 +-7192529627893858304 -34 -34 1 -45439614 1 -7192529627893858304 +-7194281951646187520 8 8 1 -797889292 1 -7194281951646187520 +-7195217207163166720 85 85 1 -1977762695 1 -7195217207163166720 +-7198372044947275776 -101 -101 1 -1424770359 1 -7198372044947275776 +-7199983995864711168 69 69 1 -1870912732 1 -7199983995864711168 +-7201085131997011968 67 67 1 -1356601829 1 -7201085131997011968 +-7209060152494817280 NULL NULL 1 -2071851852 1 -7209060152494817280 +-7213775605408178176 -33 -33 1 1222935237 1 -7213775605408178176 +-7220731681653604352 29 29 1 -851663638 1 -7220731681653604352 +-7221474017515347968 -75 -75 1 -1421860505 1 -7221474017515347968 +-7228589258642194432 -73 -73 1 1958701268 1 -7228589258642194432 +-7240213957902663680 33 33 1 -841634659 1 -7240213957902663680 +-7242345057866285056 54 54 1 548375173 1 -7242345057866285056 +-7245872320493322240 -102 -102 1 -134686276 1 -7245872320493322240 +-7246123871306244096 -108 -108 1 1686537335 1 -7246123871306244096 +-7255010240787030016 18 18 1 1373871781 1 -7255010240787030016 +-7255686273677328384 45 45 1 2100839074 1 -7255686273677328384 +-7262049693594943488 79 79 1 1295073553 1 -7262049693594943488 +-7262384251828518912 109 109 1 1647411522 1 -7262384251828518912 +-7262798781688651776 9 9 1 -423190290 1 -7262798781688651776 +-7263060340185194496 10 10 1 1590744669 1 -7263060340185194496 +-7265998318110711808 8 8 1 1437057145 1 -7265998318110711808 +-7266719102957125632 42 42 1 960187615 1 -7266719102957125632 +-7270034223527993344 NULL NULL 1 -1984079412 1 -7270034223527993344 +-7273590251991162880 84 84 1 994798486 1 -7273590251991162880 +-7273694358642851840 76 76 1 2009890220 1 -7273694358642851840 +-7276111129363046400 126 126 1 -1462604138 1 -7276111129363046400 +-7287583262310350848 36 36 1 -1108723753 1 -7287583262310350848 +-7292078334519894016 -28 -28 1 -785261879 1 -7292078334519894016 +-7296096276653391872 -6 -6 1 160290374 1 -7296096276653391872 +-7303847963918393344 -78 -78 1 -1769423338 1 -7303847963918393344 +-7319315187617587200 -54 -54 1 -235238928 1 -7319315187617587200 +-7326863346317598720 49 49 1 958866509 1 -7326863346317598720 +-7328087811698909184 -54 -54 1 -1017629298 1 -7328087811698909184 +-7329767178250018816 -8 -8 1 -448060992 1 -7329767178250018816 +-7329807949048193024 -69 -69 1 -369183838 1 -7329807949048193024 +-7330203470474985472 54 54 1 -1065248998 1 -7330203470474985472 +-7330413050756235264 -31 -31 1 -2024003241 1 -7330413050756235264 +-7333278178640953344 74 74 1 1393506704 1 -7333278178640953344 +-7333362172439035904 25 25 1 -835002549 1 -7333362172439035904 +-7340231535789727744 29 29 1 526502851 1 -7340231535789727744 +-7344146703223496704 -26 -26 1 789871166 1 -7344146703223496704 +-7344947507044466688 -77 -77 1 -340951385 1 -7344947507044466688 +-7345562788132315136 -6 -6 1 1750433588 1 -7345562788132315136 +-7356685674003021824 118 118 1 1319589591 1 -7356685674003021824 +-7357888618985873408 0 0 1 NULL 0 -7357888618985873408 +-7362189611124563968 -57 -57 1 -496915240 1 -7362189611124563968 +-7366430883634929664 -32 -32 1 1592153312 1 -7366430883634929664 +-7378096180613840896 37 37 1 218917585 1 -7378096180613840896 +-7380731416973295616 -94 -94 1 -1114208576 1 -7380731416973295616 +-7395343938785738752 96 96 1 830944953 1 -7395343938785738752 +-7395553021620731904 18 18 1 1056997296 1 -7395553021620731904 +-7399631791131074560 92 92 1 -932921363 1 -7399631791131074560 +-7404052043914526720 -10 -10 1 -1349876582 1 -7404052043914526720 +-7404057145074712576 55 55 1 56316391 1 -7404057145074712576 +-7409317158045442048 NULL NULL 1 -1463884101 1 -7409317158045442048 +-7409653086454030336 77 77 1 -624029057 1 -7409653086454030336 +-7412431471807283200 113 113 1 622925063 1 -7412431471807283200 +-7413317118463164416 -12 -12 1 -507015439 1 -7413317118463164416 +-7419068456205385728 112 112 1 -4393552 1 -7419068456205385728 +-7420448501073051648 -8 -8 1 -1155174991 1 -7420448501073051648 +-7425160895830573056 -98 -98 1 -765102534 1 -7425160895830573056 +-7429331808102899712 96 96 1 -1057522129 1 -7429331808102899712 +-7433265617153343488 -69 -69 1 NULL 0 -7433265617153343488 +-7442593976514420736 -19 -19 1 1851805558 1 -7442593976514420736 +-7444070205513138176 -28 -28 1 -520725912 1 -7444070205513138176 +-7451660755269853184 97 97 1 1338047392 1 -7451660755269853184 +-7453525026342617088 -122 -122 1 1505665168 1 -7453525026342617088 +-7455898404374921216 17 17 1 1544482684 1 -7455898404374921216 +-7456869587112255488 NULL NULL 1 -224865887 1 -7456869587112255488 +-7461750143936897024 -70 -70 1 -1343425152 1 -7461750143936897024 +-7464270453557993472 116 116 1 -1439293109 1 -7464270453557993472 +-7469660864676585472 -40 -40 1 85774760 1 -7469660864676585472 +-7470307155642245120 -95 -95 1 1137950964 1 -7470307155642245120 +-7476082621253402624 -29 -29 1 1083855659 1 -7476082621253402624 +-7483435388852559872 85 85 1 -914329027 1 -7483435388852559872 +-7488345684795342848 123 123 1 -1668736016 1 -7488345684795342848 +-7488415863027367936 35 35 1 1286367391 1 -7488415863027367936 +-7494411162675691520 -46 -46 1 1595326878 1 -7494411162675691520 +-7496839341561954304 -92 -92 1 868714547 1 -7496839341561954304 +-7497303453253402624 66 66 1 1415647436 1 -7497303453253402624 +-7500200359698907136 -2 -2 1 -423074450 1 -7500200359698907136 +-7501803640821456896 -2 -2 1 1809795770 1 -7501803640821456896 +-7506254246954500096 94 94 1 -511198293 1 -7506254246954500096 +-7507424948896415744 37 37 1 -828522499 1 -7507424948896415744 +-7507578199583694848 2 2 1 -1784633305 1 -7507578199583694848 +-7510418793070075904 -35 -35 1 975932228 1 -7510418793070075904 +-7511202710200885248 -84 -84 1 -2042647152 1 -7511202710200885248 +-7511952204985049088 105 105 1 -1351437382 1 -7511952204985049088 +-7512289590991544320 -85 -85 1 1409872356 1 -7512289590991544320 +-7512297136103800832 -36 -36 1 -1180153422 1 -7512297136103800832 +-7515996202498473984 -17 -17 1 344989592 1 -7515996202498473984 +-7524170566881329152 98 98 1 -1908696083 1 -7524170566881329152 +-7526793959592140800 48 48 1 -570632618 1 -7526793959592140800 +-7528526815026692096 NULL NULL 1 2125479431 1 -7528526815026692096 +-7532751268425261056 100 100 1 1752520642 1 -7532751268425261056 +-7535857766791577600 -34 -34 1 1846184880 1 -7535857766791577600 +-7535958203887706112 NULL NULL 1 656636097 1 -7535958203887706112 +-7536330682873937920 -87 -87 1 -1289501869 1 -7536330682873937920 +-7540104552219860992 -22 -22 1 1081187102 1 -7540104552219860992 +-7541860097718902784 -61 -61 1 -625788713 1 -7541860097718902784 +-7542857121910046720 79 79 1 1495575878 1 -7542857121910046720 +-7547245548870025216 75 75 1 1784291853 1 -7547245548870025216 +-7547432761381339136 90 90 1 434679307 1 -7547432761381339136 +-7551394356730339328 22 22 1 1179528290 1 -7551394356730339328 +-7557017910095650816 38 38 1 195281533 1 -7557017910095650816 +-7558524160894427136 35 35 1 375106978 1 -7558524160894427136 +-7571293705217687552 -89 -89 1 1240875512 1 -7571293705217687552 +-7571957778022178816 -43 -43 1 1042184256 1 -7571957778022178816 +-7572262898020278272 -59 -59 1 -1875699183 1 -7572262898020278272 +-7572962089372991488 5 5 1 -841268868 1 -7572962089372991488 +-7576194692683563008 -115 -115 1 2080249726 1 -7576194692683563008 +-7593363318079610880 -56 -56 1 -1811563127 1 -7593363318079610880 +-7594824008626372608 -57 -57 1 824743780 1 -7594824008626372608 +-7598782894648565760 90 90 1 -983874694 1 -7598782894648565760 +-7600138468036386816 53 53 1 -722294882 1 -7600138468036386816 +-7603467428164009984 0 0 1 -619311578 1 -7603467428164009984 +-7603569103205916672 -100 -100 1 390124976 1 -7603569103205916672 +-7610137349734883328 -46 -46 1 683320224 1 -7610137349734883328 +-7611584069753552896 -42 -42 1 -1765795567 1 -7611584069753552896 +-7612455481940246528 -92 -92 1 NULL 0 -7612455481940246528 +-7612466483992051712 29 29 1 -1969235238 1 -7612466483992051712 +-7616522969329262592 58 58 1 1924741890 1 -7616522969329262592 +-7617860842651017216 -101 -101 1 386741352 1 -7617860842651017216 +-7623047151287754752 -66 -66 1 -1050029724 1 -7623047151287754752 +-7623359796281999360 51 51 1 1829544791 1 -7623359796281999360 +-7623405558242500608 -103 -103 1 283322761 1 -7623405558242500608 +-7624057992767782912 -109 -109 1 -1218581850 1 -7624057992767782912 +-7629401308029976576 -17 -17 1 -1655030261 1 -7629401308029976576 +-7637494527844343808 52 52 1 2005560498 1 -7637494527844343808 +-7637755520917741568 -127 -127 1 648935848 1 -7637755520917741568 +-7642381493746483200 -72 -72 1 583458404 1 -7642381493746483200 +-7647020450676146176 76 76 1 609917172 1 -7647020450676146176 +-7661192563533062144 -21 -21 1 -1319753324 1 -7661192563533062144 +-7661250850555633664 -106 -106 1 -693249555 1 -7661250850555633664 +-7663293054873812992 -56 -56 1 -1478812842 1 -7663293054873812992 +-7665186441284968448 NULL NULL 1 791096295 1 -7665186441284968448 +-7668388017287020544 2 2 1 NULL 0 -7668388017287020544 +-7669169138124275712 57 57 1 -1484033125 1 -7669169138124275712 +-7673901622181953536 -16 -16 1 1141303816 1 -7673901622181953536 +-7679894005808693248 -67 -67 1 -306214368 1 -7679894005808693248 +-7686220526274502656 -51 -51 1 -892839693 1 -7686220526274502656 +-7687052294777208832 52 52 1 -1989778424 1 -7687052294777208832 +-7692192232238678016 90 90 1 745725681 1 -7692192232238678016 +-7695491171376291840 -122 -122 1 1225312439 1 -7695491171376291840 +-7700203302632210432 13 13 1 1805308672 1 -7700203302632210432 +-7703540456272994304 127 127 1 1312270193 1 -7703540456272994304 +-7707242953271500800 -34 -34 1 1568180994 1 -7707242953271500800 +-7707867749256445952 -98 -98 1 -596963345 1 -7707867749256445952 +-7708932208121225216 74 74 1 307333276 1 -7708932208121225216 +-7709958788604936192 -104 -104 1 595836061 1 -7709958788604936192 +-7712425776235274240 115 115 1 -1432316859 1 -7712425776235274240 +-7720966287634112512 -28 -28 1 NULL 0 -7720966287634112512 +-7739424919198187520 -90 -90 1 712625264 1 -7739424919198187520 +-7744462446680375296 -31 -31 1 2029657999 1 -7744462446680375296 +-7751265769984491520 74 74 1 700341242 1 -7751265769984491520 +-7751427073017544704 -79 -79 1 615619268 1 -7751427073017544704 +-7753051494275432448 -2 -2 1 -1599905147 1 -7753051494275432448 +-7759238919361888256 -122 -122 1 -2065287410 1 -7759238919361888256 +-7759425383684849664 46 46 1 -938762477 1 -7759425383684849664 +-7772064021830574080 -42 -42 1 -1201785350 1 -7772064021830574080 +-7773957003968675840 48 48 1 270090617 1 -7773957003968675840 +-7777884099756122112 -93 -93 1 914583645 1 -7777884099756122112 +-7778829032042790912 18 18 1 -807242371 1 -7778829032042790912 +-7779270198785875968 83 83 1 -1242677422 1 -7779270198785875968 +-7782344916178796544 92 92 1 -1213081886 1 -7782344916178796544 +-7784419454650843136 54 54 1 -1210907929 1 -7784419454650843136 +-7792903881635938304 -76 -76 1 -191899537 1 -7792903881635938304 +-7793447076762345472 56 56 1 1196151988 1 -7793447076762345472 +-7797149520019062784 6 6 1 -1262842192 1 -7797149520019062784 +-7797151404935618560 123 123 1 -507955215 1 -7797151404935618560 +-7800879252150779904 108 108 1 1352739140 1 -7800879252150779904 +-7802538500225777664 -11 -11 1 215759857 1 -7802538500225777664 +-7804116532814151680 -109 -109 1 -1146649990 1 -7804116532814151680 +-7805985795815342080 9 9 1 -2076886223 1 -7805985795815342080 +-7811060170911375360 -2 -2 1 1513689502 1 -7811060170911375360 +-7818454479651135488 79 79 1 -559270035 1 -7818454479651135488 +-7819437864839495680 118 118 1 -370093295 1 -7819437864839495680 +-7822452149325094912 69 69 1 60847311 1 -7822452149325094912 +-7824788571789279232 -105 -105 1 -1406691044 1 -7824788571789279232 +-7827420207675105280 -97 -97 1 -36682325 1 -7827420207675105280 +-7831320202242228224 -32 -32 1 -1726479726 1 -7831320202242228224 +-7831595638727565312 29 29 1 1626884085 1 -7831595638727565312 +-7833618000492109824 92 92 1 589546540 1 -7833618000492109824 +-7835907977757245440 4 4 1 -87470856 1 -7835907977757245440 +-7838598833900584960 95 95 1 1028204648 1 -7838598833900584960 +-7840338174858199040 66 66 1 -300717684 1 -7840338174858199040 +-7845896959112658944 78 78 1 -1688105985 1 -7845896959112658944 +-7848043121524228096 101 101 1 1667594394 1 -7848043121524228096 +-7849504559236210688 110 110 1 -2052386812 1 -7849504559236210688 +-7858505678035951616 34 34 1 NULL 0 -7858505678035951616 +-7866079955473989632 96 96 1 196980893 1 -7866079955473989632 +-7867219225874571264 NULL NULL 1 -1078579367 1 -7867219225874571264 +-7868306678534193152 103 103 1 -2144138362 1 -7868306678534193152 +-7873753603299540992 93 93 1 -971698865 1 -7873753603299540992 +-7875953567586451456 -99 -99 1 816439627 1 -7875953567586451456 +-7877598807023386624 -48 -48 1 340384179 1 -7877598807023386624 +-7878145001776152576 -25 -25 1 -1489628668 1 -7878145001776152576 +-7879864376629567488 93 93 1 -472303419 1 -7879864376629567488 +-7881262505761710080 51 51 1 -103219371 1 -7881262505761710080 +-7881351200983613440 14 14 1 720703232 1 -7881351200983613440 +-7883252982752665600 -75 -75 1 1136548971 1 -7883252982752665600 +-7884460946615984128 127 127 1 1772349172 1 -7884460946615984128 +-7888051992910274560 89 89 1 1818213677 1 -7888051992910274560 +-7892780594910871552 119 119 1 -779743333 1 -7892780594910871552 +-7893577088764174336 -71 -71 1 268888160 1 -7893577088764174336 +-7894382303337832448 -66 -66 1 1832650234 1 -7894382303337832448 +-7895991410072928256 72 72 1 1467284000 1 -7895991410072928256 +-7902517224300036096 74 74 1 -950738312 1 -7902517224300036096 +-7903158849011843072 21 21 1 -217930632 1 -7903158849011843072 +-7904188195431661568 49 49 1 -442839889 1 -7904188195431661568 +-7907355742053883904 102 102 1 794783516 1 -7907355742053883904 +-7910019233726242816 96 96 1 -1259611508 1 -7910019233726242816 +-7911421221625077760 48 48 1 476704350 1 -7911421221625077760 +-7915999634274369536 -72 -72 1 1814570016 1 -7915999634274369536 +-7916510129632296960 26 26 1 -2136052026 1 -7916510129632296960 +-7928062266382778368 -54 -54 1 152654715 1 -7928062266382778368 +-7928440849566146560 -99 -99 1 -800975421 1 -7928440849566146560 +-7939634346485858304 -79 -79 1 1012843193 1 -7939634346485858304 +-7949309059286163456 -57 -57 1 88774647 1 -7949309059286163456 +-7949445503604604928 -87 -87 1 1695098246 1 -7949445503604604928 +-7953426740065312768 -11 -11 1 22308780 1 -7953426740065312768 +-7964801953178091520 -116 -116 1 661659208 1 -7964801953178091520 +-7966960765508280320 60 60 1 -884109192 1 -7966960765508280320 +-7978782649203228672 89 89 1 491016124 1 -7978782649203228672 +-7989766326847807488 -2 -2 1 -1731820254 1 -7989766326847807488 +-7998947380180819968 110 110 1 -136514115 1 -7998947380180819968 +-8007017894942638080 31 31 1 1219616145 1 -8007017894942638080 +-8013397854633648128 -98 -98 1 -1391183008 1 -8013397854633648128 +-8016589197379289088 -48 -48 1 -1721763321 1 -8016589197379289088 +-8017791189288869888 -101 -101 1 -2057666812 1 -8017791189288869888 +-8018511948141748224 NULL NULL 1 661380540 1 -8018511948141748224 +-8021859935185928192 -61 -61 1 1420099773 1 -8021859935185928192 +-8022573309127000064 -96 -96 1 1194243726 1 -8022573309127000064 +-8023708819947323392 35 35 1 198539698 1 -8023708819947323392 +-8028275725610909696 72 72 1 -1937640350 1 -8028275725610909696 +-8028910243475038208 -87 -87 1 873035819 1 -8028910243475038208 +-8030058711611629568 -99 -99 1 -752222556 1 -8030058711611629568 +-8034414142083170304 4 4 1 -267130580 1 -8034414142083170304 +-8046189486447017984 96 96 1 925032386 1 -8046189486447017984 +-8046238369820344320 -69 -69 1 819069589 1 -8046238369820344320 +-8047774491688255488 49 49 1 -1339495001 1 -8047774491688255488 +-8051395538179063808 NULL NULL 1 -469749219 1 -8051395538179063808 +-8051587217208967168 78 78 1 51376784 1 -8051587217208967168 +-8051871680800120832 -94 -94 1 NULL 0 -8051871680800120832 +-8054581198284668928 -6 -6 1 1395450272 1 -8054581198284668928 +-8067243114610532352 68 68 1 214068706 1 -8067243114610532352 +-8070535484085895168 45 45 1 829101712 1 -8070535484085895168 +-8076479329071955968 119 119 1 2017314998 1 -8076479329071955968 +-8082793390939193344 88 88 1 -1878838836 1 -8082793390939193344 +-8084716955963252736 64 64 1 -1609864597 1 -8084716955963252736 +-8086577583338061824 -33 -33 1 -340462064 1 -8086577583338061824 +-8088337436168830976 8 8 1 2124297747 1 -8088337436168830976 +-8099313480512716800 -103 -103 1 -392713245 1 -8099313480512716800 +-8103788088118018048 -106 -106 1 -533227056 1 -8103788088118018048 +-8104684579106914304 19 19 1 -1091003492 1 -8104684579106914304 +-8108693586698706944 118 118 1 -896261100 1 -8108693586698706944 +-8115963579415650304 NULL NULL 1 -951728053 1 -8115963579415650304 +-8117838333114212352 -18 -18 1 -1642207005 1 -8117838333114212352 +-8122639684164501504 -82 -82 1 1425456189 1 -8122639684164501504 +-8127494999848919040 -30 -30 1 1701817607 1 -8127494999848919040 +-8131997716860526592 91 91 1 -457341338 1 -8131997716860526592 +-8136227554401107968 14 14 1 127917714 1 -8136227554401107968 +-8140349174954893312 -38 -38 1 NULL 0 -8140349174954893312 +-8142667274351345664 -113 -113 1 453613037 1 -8142667274351345664 +-8147405381260345344 14 14 1 659397992 1 -8147405381260345344 +-8158011642485825536 NULL NULL 1 NULL 0 -8158011642485825536 +-8161047750470279168 106 106 1 -621365995 1 -8161047750470279168 +-8172827216441573376 83 83 1 -113253627 1 -8172827216441573376 +-8182421179156905984 25 25 1 -1892816721 1 -8182421179156905984 +-8191825921746305024 -82 -82 1 703111607 1 -8191825921746305024 +-8194062064124362752 -96 -96 1 1482983157 1 -8194062064124362752 +-8203008052020879360 -68 -68 1 -1127100849 1 -8203008052020879360 +-8203075743525806080 93 93 1 -626484313 1 -8203075743525806080 +-8205148279289085952 -12 -12 1 768198315 1 -8205148279289085952 +-8214462866994339840 109 109 1 NULL 0 -8214462866994339840 +-8219876839318716416 -44 -44 1 1452244326 1 -8219876839318716416 +-8232763638546694144 -122 -122 1 -514010922 1 -8232763638546694144 +-8240034910581153792 56 56 1 -665623523 1 -8240034910581153792 +-8240684139569233920 18 18 1 -1721368386 1 -8240684139569233920 +-8243487285852766208 29 29 1 1153811197 1 -8243487285852766208 +-8244116388227104768 38 38 1 1893512909 1 -8244116388227104768 +-8244657976255889408 -115 -115 1 688547276 1 -8244657976255889408 +-8260340354454503424 82 82 1 1456367662 1 -8260340354454503424 +-8269917980278980608 -117 -117 1 -1700451326 1 -8269917980278980608 +-8270479187688816640 -70 -70 1 1519993904 1 -8270479187688816640 +-8275337702906757120 78 78 1 210003006 1 -8275337702906757120 +-8280276629934981120 -35 -35 1 -588160623 1 -8280276629934981120 +-8293833565967810560 21 21 1 -1464514590 1 -8293833565967810560 +-8297230235506343936 102 102 1 283618733 1 -8297230235506343936 +-8300526097982226432 120 120 1 1314531900 1 -8300526097982226432 +-8300764106868350976 -45 -45 1 -1196101029 1 -8300764106868350976 +-8302817097848307712 -127 -127 1 -1021859098 1 -8302817097848307712 +-8317591428117274624 96 96 1 -670925379 1 -8317591428117274624 +-8318886086186213376 -124 -124 1 1033609549 1 -8318886086186213376 +-8322751250650218496 -107 -107 1 -1212524805 1 -8322751250650218496 +-8330233444291084288 62 62 1 -409404534 1 -8330233444291084288 +-8335810316927213568 45 45 1 -1562552002 1 -8335810316927213568 +-8340523561480437760 120 120 1 39723411 1 -8340523561480437760 +-8345065519816695808 9 9 1 654939016 1 -8345065519816695808 +-8347088645602050048 127 127 1 76299337 1 -8347088645602050048 +-8357136656913686528 107 107 1 1517915751 1 -8357136656913686528 +-8358130693961195520 -14 -14 1 -122391516 1 -8358130693961195520 +-8359839265974165504 62 62 1 1572563948 1 -8359839265974165504 +-8368269352975982592 77 77 1 NULL 0 -8368269352975982592 +-8368487814665895936 -66 -66 1 156101201 1 -8368487814665895936 +-8369487968903897088 52 52 1 -194270271 1 -8369487968903897088 +-8379109122834997248 -28 -28 1 1566607834 1 -8379109122834997248 +-8379964450833367040 9 9 1 -181122344 1 -8379964450833367040 +-8384695077413412864 -104 -104 1 -1818456584 1 -8384695077413412864 +-8387347109404286976 2 2 1 -2011708220 1 -8387347109404286976 +-8387536830476820480 -103 -103 1 -1703620970 1 -8387536830476820480 +-8395998375405912064 38 38 1 -1141801925 1 -8395998375405912064 +-8400045653258444800 -117 -117 1 1523657918 1 -8400045653258444800 +-8411282676082565120 61 61 1 253621570 1 -8411282676082565120 +-8418913260807217152 96 96 1 -41864614 1 -8418913260807217152 +-8425998949410889728 -62 -62 1 -656478771 1 -8425998949410889728 +-8426531414463545344 8 8 1 1701761102 1 -8426531414463545344 +-8430283518005846016 NULL NULL 1 -16094879 1 -8430283518005846016 +-8430370933326536704 -64 -64 1 NULL 0 -8430370933326536704 +-8431492599012163584 123 123 1 -1131684944 1 -8431492599012163584 +-8438554249514491904 NULL NULL 1 232405034 1 -8438554249514491904 +-8445801063348281344 27 27 1 -1247325089 1 -8445801063348281344 +-8453491903284994048 -26 -26 1 1524010024 1 -8453491903284994048 +-8454143651040444416 27 27 1 516479816 1 -8454143651040444416 +-8465978403747037184 33 33 1 1347876055 1 -8465978403747037184 +-8469607298426437632 94 94 1 374283948 1 -8469607298426437632 +-8471480409335513088 102 102 1 1891680787 1 -8471480409335513088 +-8485389240529354752 -36 -36 1 -1528033060 1 -8485389240529354752 +-8488247955875618816 33 33 1 1802498539 1 -8488247955875618816 +-8490382417169408000 92 92 1 987917448 1 -8490382417169408000 +-8494118409594650624 28 28 1 631207613 1 -8494118409594650624 +-8503342882470019072 -9 -9 1 1367179645 1 -8503342882470019072 +-8503573595507761152 47 47 1 2068018858 1 -8503573595507761152 +-8507279516485566464 -119 -119 1 631711489 1 -8507279516485566464 +-8509547439040757760 44 44 1 -1749415887 1 -8509547439040757760 +-8518060755719585792 -23 -23 1 -1100641049 1 -8518060755719585792 +-8518258741831680000 -40 -40 1 -809805200 1 -8518258741831680000 +-8521578237232529408 -57 -57 1 -373034494 1 -8521578237232529408 +-8522878384019169280 NULL NULL 1 633813435 1 -8522878384019169280 +-8523434203900674048 -19 -19 1 -590374062 1 -8523434203900674048 +-8525212657458348032 NULL NULL 1 -1280919769 1 -8525212657458348032 +-8535957064499879936 -73 -73 1 -99205196 1 -8535957064499879936 +-8536369662934401024 -48 -48 1 447426619 1 -8536369662934401024 +-8543982423727128576 76 76 1 -607667405 1 -8543982423727128576 +-8544299740525461504 -1 -1 1 -846450672 1 -8544299740525461504 +-8545239748068941824 NULL NULL 1 -897586947 1 -8545239748068941824 +-8546758906409312256 -28 -28 1 -1236536142 1 -8546758906409312256 +-8552393882631389184 NULL NULL 1 1920863389 1 -8552393882631389184 +-8555709701170552832 -99 -99 1 -1364322216 1 -8555709701170552832 +-8559008501282832384 -127 -127 1 895945459 1 -8559008501282832384 +-8559252110266564608 44 44 1 259204652 1 -8559252110266564608 +-8562524688907485184 -54 -54 1 1775355987 1 -8562524688907485184 +-8566856504746352640 48 48 1 2018442973 1 -8566856504746352640 +-8566940231897874432 -47 -47 1 -1409508377 1 -8566940231897874432 +-8570933074545745920 125 125 1 -749042352 1 -8570933074545745920 +-8572823448513445888 NULL NULL 1 -101960322 1 -8572823448513445888 +-8572949572756774912 48 48 1 1787826883 1 -8572949572756774912 +-8581765103969312768 -38 -38 1 -890374552 1 -8581765103969312768 +-8581979259158929408 -57 -57 1 -674478103 1 -8581979259158929408 +-8584520406368493568 1 1 1 -19116270 1 -8584520406368493568 +-8585134536083660800 22 22 1 -1196808950 1 -8585134536083660800 +-8585966098173870080 -31 -31 1 318631333 1 -8585966098173870080 +-8593419958317056000 88 88 1 6266567 1 -8593419958317056000 +-8603817012434198528 9 9 1 1114521964 1 -8603817012434198528 +-8604758220106014720 -108 -108 1 -1798573685 1 -8604758220106014720 +-8607195685207408640 74 74 1 -1111937842 1 -8607195685207408640 +-8615168537390571520 -21 -21 1 1469775272 1 -8615168537390571520 +-8619303037130301440 -53 -53 1 -2074079977 1 -8619303037130301440 +-8623238306523824128 -107 -107 1 -1442424087 1 -8623238306523824128 +-8623965248051789824 -34 -34 1 1637295757 1 -8623965248051789824 +-8632237187473088512 -74 -74 1 NULL 0 -8632237187473088512 +-8649711322250362880 5 5 1 -500921094 1 -8649711322250362880 +-8651641150831362048 -52 -52 1 -1533934649 1 -8651641150831362048 +-8654433008222797824 NULL NULL 1 -1728171376 1 -8654433008222797824 +-8654797319350927360 82 82 1 895763504 1 -8654797319350927360 +-8658387566611996672 -15 -15 1 NULL 0 -8658387566611996672 +-8659643752269242368 -18 -18 1 1204834275 1 -8659643752269242368 +-8659692318743314432 -103 -103 1 25400543 1 -8659692318743314432 +-8660149447361404928 -115 -115 1 1317690178 1 -8660149447361404928 +-8664374244449050624 -44 -44 1 1059212450 1 -8664374244449050624 +-8664806103426252800 -81 -81 1 964810954 1 -8664806103426252800 +-8665218198816497664 -7 -7 1 -1031592590 1 -8665218198816497664 +-8665764757143658496 NULL NULL 1 -45460011 1 -8665764757143658496 +-8675661101615489024 -101 -101 1 -1918651448 1 -8675661101615489024 +-8675892979328212992 20 20 1 1478365409 1 -8675892979328212992 +-8683802826440105984 -104 -104 1 -1344287228 1 -8683802826440105984 +-8688153842294595584 NULL NULL 1 -1741895392 1 -8688153842294595584 +-8689606130068611072 -79 -79 1 488559595 1 -8689606130068611072 +-8694818694700048384 41 41 1 94220511 1 -8694818694700048384 +-8696162322976997376 -9 -9 1 1228837108 1 -8696162322976997376 +-8703026916864802816 5 5 1 -397683105 1 -8703026916864802816 +-8704234107608203264 25 25 1 -1318045616 1 -8704234107608203264 +-8705403811649355776 -112 -112 1 206121314 1 -8705403811649355776 +-8710298418608619520 -27 -27 1 -1817938378 1 -8710298418608619520 +-8714995808835444736 19 19 1 206454818 1 -8714995808835444736 +-8719510423723155456 48 48 1 -327648289 1 -8719510423723155456 +-8730803262481580032 71 71 1 NULL 0 -8730803262481580032 +-8731068123910987776 -86 -86 1 -1434562279 1 -8731068123910987776 +-8746702976270385152 26 26 1 1767359228 1 -8746702976270385152 +-8754966081778565120 79 79 1 -125419186 1 -8754966081778565120 +-8754992450211692544 92 92 1 1785455842 1 -8754992450211692544 +-8756989568739835904 -101 -101 1 -158420748 1 -8756989568739835904 +-8760655406971863040 19 19 1 -1249011023 1 -8760655406971863040 +-8763062627136864256 40 40 1 -454598288 1 -8763062627136864256 +-8768744394742235136 -68 -68 1 -726879427 1 -8768744394742235136 +-8782213262837530624 100 100 1 1565313938 1 -8782213262837530624 +-8783777723063099392 -75 -75 1 877053605 1 -8783777723063099392 +-8789178184387641344 -30 -30 1 -1045771991 1 -8789178184387641344 +-8797972842900307968 -3 -3 1 284646137 1 -8797972842900307968 +-8807361476639629312 -44 -44 1 NULL 0 -8807361476639629312 +-8813211231120031744 -68 -68 1 1575300276 1 -8813211231120031744 +-8831091081349758976 40 40 1 -1832606512 1 -8831091081349758976 +-8832750849949892608 20 20 1 -66010816 1 -8832750849949892608 +-8833019327569510400 25 25 1 -189393743 1 -8833019327569510400 +-8835408234247168000 127 127 1 -938112972 1 -8835408234247168000 +-8836899523028312064 114 114 1 397255100 1 -8836899523028312064 +-8843859708698583040 55 55 1 2008211296 1 -8843859708698583040 +-8844949406948671488 -105 -105 1 315973457 1 -8844949406948671488 +-8845239510002753536 97 97 1 -1358159222 1 -8845239510002753536 +-8852770376039219200 -123 -123 1 311478497 1 -8852770376039219200 +-8853553406533894144 NULL NULL 1 -1820436871 1 -8853553406533894144 +-8856151919723003904 58 58 1 -575513309 1 -8856151919723003904 +-8856821118526734336 -41 -41 1 618321042 1 -8856821118526734336 +-8857335871148171264 -28 -28 1 1061043704 1 -8857335871148171264 +-8858063395050110976 28 28 1 -1117019030 1 -8858063395050110976 +-8859107121649893376 -58 -58 1 -37876543 1 -8859107121649893376 +-8866442231663067136 68 68 1 -1079633326 1 -8866442231663067136 +-8870186814744420352 -110 -110 1 NULL 0 -8870186814744420352 +-8870673219965001728 1 1 1 -1620148746 1 -8870673219965001728 +-8875546987176206336 104 104 1 414645489 1 -8875546987176206336 +-8877053610728161280 NULL NULL 1 706823078 1 -8877053610728161280 +-8877431933441327104 63 63 1 1650676897 1 -8877431933441327104 +-8879742387365429248 NULL NULL 1 1912175355 1 -8879742387365429248 +-8881446757271846912 79 79 1 1224662770 1 -8881446757271846912 +-8887058200926093312 3 3 1 -191704948 1 -8887058200926093312 +-8892963883085578240 -115 -115 1 -2087815643 1 -8892963883085578240 +-8896045754034978816 -127 -127 1 1392980712 1 -8896045754034978816 +-8914039133569400832 -62 -62 1 1332042427 1 -8914039133569400832 +-8916987977485312000 -73 -73 1 -839176151 1 -8916987977485312000 +-8922409715403112448 -81 -81 1 -536315467 1 -8922409715403112448 +-8923529803981905920 -32 -32 1 1148500740 1 -8923529803981905920 +-8927968289860370432 45 45 1 1033836308 1 -8927968289860370432 +-8930307926221807616 116 116 1 -966979668 1 -8930307926221807616 +-8938849835283677184 -80 -80 1 1318606691 1 -8938849835283677184 +-8940944155843461120 -98 -98 1 -858439361 1 -8940944155843461120 +-8941201923743703040 NULL NULL 1 NULL 0 -8941201923743703040 +-8946656952763777024 4 4 1 -759911896 1 -8946656952763777024 +-8948335470186373120 79 79 1 -1078397698 1 -8948335470186373120 +-8959796625322680320 -76 -76 1 1318956413 1 -8959796625322680320 +-8961059046745669632 63 63 1 1783034168 1 -8961059046745669632 +-8962547695651323904 -100 -100 1 1091736925 1 -8962547695651323904 +-8965578088652095488 -74 -74 1 -1216166764 1 -8965578088652095488 +-8989473881707921408 -110 -110 1 1310360849 1 -8989473881707921408 +-8990843030306717696 NULL NULL 1 -311437801 1 -8990843030306717696 +-8992599250893979648 78 78 1 1677494300 1 -8992599250893979648 +-8996954350906294272 -95 -95 1 -1769037737 1 -8996954350906294272 +-9002912355472736256 -51 -51 1 -561932449 1 -9002912355472736256 +-9004892183139811328 -91 -91 1 -1949698319 1 -9004892183139811328 +-9008631121684832256 98 98 1 704038411 1 -9008631121684832256 +-9012093603044245504 -1 -1 1 538766635 1 -9012093603044245504 +-9013952631912325120 -42 -42 1 -1052493316 1 -9013952631912325120 +-9014145341570203648 -4 -4 1 273256071 1 -9014145341570203648 +-9022154842129547264 118 118 1 1130043800 1 -9022154842129547264 +-9032650742739836928 -31 -31 1 1102561039 1 -9032650742739836928 +-9049720998034137088 27 27 1 1747664003 1 -9049720998034137088 +-9051477157204770816 -15 -15 1 -1648991909 1 -9051477157204770816 +-9058029636530003968 NULL NULL 1 -1197602595 1 -9058029636530003968 +-9066993118333706240 -86 -86 1 -425196209 1 -9066993118333706240 +-9071565764086521856 -1 -1 1 2058640744 1 -9071565764086521856 +-9075302542655684608 76 76 1 -295186284 1 -9075302542655684608 +-9075486079396069376 3 3 1 -1805915233 1 -9075486079396069376 +-9078662294976061440 80 80 1 -235819331 1 -9078662294976061440 +-9079801920509001728 -112 -112 1 -705887590 1 -9079801920509001728 +-9080568167841226752 -46 -46 1 906074599 1 -9080568167841226752 +-9080956291212132352 -31 -31 1 1330219997 1 -9080956291212132352 +-9084940280061485056 122 122 1 128430191 1 -9084940280061485056 +-9088239683374350336 -78 -78 1 -18917438 1 -9088239683374350336 +-9091113592821972992 55 55 1 1861276585 1 -9091113592821972992 +-9095689235523264512 11 11 1 1687784247 1 -9095689235523264512 +-9101953184875757568 86 86 1 -1918847735 1 -9101953184875757568 +-9102482277760983040 78 78 1 742866312 1 -9102482277760983040 +-9105358806324035584 97 97 1 1679381813 1 -9105358806324035584 +-9105701280936501248 -31 -31 1 1109664665 1 -9105701280936501248 +-9109392978217484288 -84 -84 1 407098216 1 -9109392978217484288 +-9117959922369060864 -79 -79 1 936133387 1 -9117959922369060864 +-9126793997498957824 NULL NULL 1 770574055 1 -9126793997498957824 +-9136398397785948160 78 78 1 376076075 1 -9136398397785948160 +-9142610685888192512 86 86 1 -387395264 1 -9142610685888192512 +-9145593811310010368 -1 -1 1 -202409329 1 -9145593811310010368 +-9148197394287779840 -5 -5 1 -1568536214 1 -9148197394287779840 +-9149719074367946752 11 11 1 234452496 1 -9149719074367946752 +-9157613004431998976 -78 -78 1 1362740312 1 -9157613004431998976 +-9175038118837149696 20 20 1 -1701492480 1 -9175038118837149696 +-9175279464813223936 106 106 1 2080412555 1 -9175279464813223936 +-9178166810751909888 -26 -26 1 -1407817977 1 -9178166810751909888 +-9187662685618348032 -26 -26 1 NULL 0 -9187662685618348032 +-9189155542884474880 18 18 1 -1955545912 1 -9189155542884474880 +-9203804401302323200 -14 -14 1 -671853199 1 -9203804401302323200 +-9203942396257984512 87 87 1 -1625800024 1 -9203942396257984512 +-9206329156028112896 -68 -68 1 2084666529 1 -9206329156028112896 +-9210275791460499456 124 124 1 601376532 1 -9210275791460499456 +-9213132862973829120 -42 -42 1 -1216206795 1 -9213132862973829120 +-9215144824304721920 99 99 1 -399643110 1 -9215144824304721920 +-9218875542187065344 -61 -61 1 785382955 1 -9218875542187065344 +-9219066990552760320 -117 -117 1 2090044777 1 -9219066990552760320 +1021 31 31 1 -1884780525 1 1021 +1030 25 25 1 -300429552 1 1030 +1032 107 107 1 -1914210382 1 1032 +1039 -26 -26 1 914062370 1 1039 +1046 -55 -55 1 -990781312 1 1046 +1048 -124 -124 1 -249150336 1 1048 +1053 -100 -100 1 -1369302744 1 1053 +1055 33 33 1 371383749 1 1055 +1058 82 82 1 -1497098905 1 1058 +1065 -44 -44 1 1194089079 1 1065 +1066 -105 -105 1 1767019352 1 1066 +1074 125 125 1 161210995 1 1074 +1075 -33 -101 3 1609470119 2 1075 +108 100 100 1 -835107230 1 108 +1086 33 33 1 -1341627565 1 1086 +1093 82 82 1 NULL 0 1093 +1094 -4 -4 1 -359194591 1 1094 +1095 -86 -86 1 291866793 1 1095 +1099 -127 -127 1 1390704286 1 1099 +1115 108 108 1 -144862954 1 1115 +112 107 107 1 -2147071655 1 112 +1127 7 7 1 -423378447 1 1127 +1128 12 12 1 -932525608 1 1128 +1132 88 88 1 239078089 1 1132 +1134 -19 -19 1 187718349 1 1134 +1141 -39 -39 1 -540820650 1 1141 +1142 -92 -92 1 1184001017 1 1142 +1145 114 114 1 669484010 1 1145 +1153 -41 -41 1 1646811064 1 1153 +1157 29 29 1 590719541 1 1157 +1158 36 36 1 990246086 1 1158 +1165 -3 -83 2 1630946897 2 1165 +1168 77 77 1 NULL 0 1168 +1177 -117 -117 1 1182595271 1 1177 +1187 123 123 1 69110370 1 1187 +1189 108 108 1 215508794 1 1189 +1198 -57 -57 1 -1857500489 1 1198 +120 117 117 1 29680001 1 120 +1201 6 6 1 945911081 1 1201 +1217 58 58 1 -1802746460 1 1217 +1234 -46 -46 1 -1921909135 1 1234 +1243 63 63 1 1938788165 1 1243 +1247 -77 -77 1 -866304147 1 1247 +1252 98 98 1 30036142 1 1252 +1261 18 18 1 -343173797 1 1261 +1270 -127 -127 1 1969239701 1 1270 +1280 46 46 1 991397535 1 1280 +1282 NULL NULL 1 -1140071443 1 1282 +1286 83 83 1 -480058682 1 1286 +1287 70 70 1 -1362178985 1 1287 +1290 27 27 1 177837042 1 1290 +1291 -90 -90 1 1398486099 1 1291 +1299 64 64 1 765656980 1 1299 +130 5 5 1 -2081501748 1 130 +1307 79 79 1 882331889 1 1307 +1312 -114 -114 1 742059797 1 1312 +1316 -3 -3 1 997193329 1 1316 +1321 -90 -90 1 731241198 1 1321 +1337 48 48 1 -1948257321 1 1337 +1341 -98 -98 1 492120544 1 1341 +1342 -48 -48 1 1203482872 1 1342 +1343 114 114 1 -217785690 1 1343 +1345 -10 -10 1 -600315936 1 1345 +1346 89 89 1 -158233823 1 1346 +135 5 5 1 198017473 1 135 +1366 48 48 1 748358417 1 1366 +1368 55 -40 2 1427261767 2 1368 +1371 35 12 2 -1220509644 2 1371 +138 36 36 1 843282593 1 138 +1386 1 1 1 2081152819 1 1386 +1398 84 84 1 955267058 1 1398 +1409 13 13 1 865013617 1 1409 +1422 93 93 1 -1402821064 1 1422 +1423 -90 -90 1 631954352 1 1423 +1436 109 109 1 1765173148 1 1436 +1439 -5 -5 1 531459992 1 1439 +1447 53 53 1 NULL 0 1447 +1450 NULL NULL 1 740883263 1 1450 +1454 27 27 1 NULL 0 1454 +1458 NULL NULL 1 -1001529082 1 1458 +1462 -112 -112 1 287239980 1 1462 +1466 -124 -124 1 574069547 1 1466 +1470 NULL NULL 1 1406029775 1 1470 +1477 83 83 1 -707228984 1 1477 +1481 -15 -37 2 1842582526 2 1481 +1489 -36 -36 1 766737781 1 1489 +1493 -60 -60 1 557053197 1 1493 +1495 -65 -65 1 -1222897252 1 1495 +1501 -28 -28 1 1081920048 1 1501 +1506 121 121 1 1893632113 1 1506 +1508 79 79 1 1632769786 1 1508 +1509 -24 -107 2 3225474919 2 1509 +1518 -102 -102 1 824235855 1 1518 +1520 -31 -31 1 NULL 0 1520 +1521 -67 -67 1 -993029335 1 1521 +1524 -61 -61 1 -1851280202 1 1524 +1530 92 92 1 1934970004 1 1530 +1537 -23 -55 2 257940904 2 1537 +154 -12 -113 2 553439267 2 154 +1541 60 60 1 -1430903652 1 1541 +1542 -116 -116 1 NULL 0 1542 +1545 51 51 1 564366133 1 1545 +1556 25 25 1 -1202975006 1 1556 +1559 36 36 1 -206177972 1 1559 +1561 -111 -111 1 NULL 0 1561 +1566 -60 -60 1 747122546 1 1566 +1604 NULL NULL 1 -2077771325 1 1604 +1606 -82 -82 1 -1901806083 1 1606 +1608 99 99 1 142722637 1 1608 +1613 -33 -33 1 -1422780798 1 1613 +1614 -79 -79 1 -296195507 1 1614 +1620 -5 -5 1 -1989378509 1 1620 +1638 NULL NULL 1 92777932 1 1638 +1641 115 115 1 NULL 0 1641 +1643 -74 -74 1 1346627771 1 1643 +1648 65 65 1 -496870819 1 1648 +1651 -91 -91 1 -1575588203 1 1651 +1667 -5 -5 1 -499533481 1 1667 +1671 1 1 1 1504919241 1 1671 +1674 -68 -68 1 1488440165 1 1674 +1676 6 6 1 -393723522 1 1676 +1678 NULL NULL 1 -1104268719 1 1678 +168 119 119 1 -53587991 1 168 +1681 -111 -111 1 929751599 1 1681 +169 -67 -67 1 -1759354458 1 169 +1693 68 68 1 -1545572711 1 1693 +1701 6 -59 2 755580328 2 1701 +1704 64 64 1 -605370177 1 1704 +1719 -115 -242 2 -469198712 2 1719 +1726 -35 -35 1 NULL 0 1726 +1728 118 118 1 626251612 1 1728 +1745 -75 -75 1 368170021 1 1745 +1751 38 38 1 -667383951 1 1751 +1752 -78 -78 1 -1538978853 1 1752 +1769 -104 -104 1 805672638 1 1769 +1774 -29 -29 1 -1974777102 1 1774 +1775 32 32 1 1928365430 1 1775 +1777 37 37 2 1061638369 1 1777 +1780 17 17 1 -71433796 1 1780 +1781 60 60 1 NULL 0 1781 +1785 55 55 1 -524189419 1 1785 +1786 31 31 1 -1009249550 1 1786 +1788 42 42 1 -997463353 1 1788 +1789 12 12 1 -1098379914 1 1789 +1791 -19 -19 1 -1900369503 1 1791 +1796 -79 -79 1 -1625062942 1 1796 +1806 -45 -45 1 -40284975 1 1806 +181 -49 -49 1 1742536084 1 181 +1811 -41 -41 1 -922200749 1 1811 +1813 -69 -69 1 -738157651 1 1813 +1826 27 27 1 505902480 1 1826 +1827 -53 -53 1 -956668825 1 1827 +1835 -96 -96 1 1768399622 1 1835 +1837 77 77 1 290921475 1 1837 +1845 -59 -59 1 -909024258 1 1845 +1846 114 114 1 418182899 1 1846 +1856 53 -72 2 -1828994565 2 1856 +1862 113 113 1 674547678 1 1862 +1863 99 99 1 -1017027298 1 1863 +1864 104 104 1 NULL 0 1864 +1866 104 104 1 -400501472 1 1866 +187 -27 -27 1 2133950868 1 187 +1870 -68 -68 1 25644069 1 1870 +188 -127 -127 1 316438994 1 188 +1880 23 23 1 1293876597 1 1880 +1890 56 56 1 -1660344634 1 1890 +1892 31 31 1 596595603 1 1892 +1899 52 52 1 734267314 1 1899 +19 48 -71 2 -2337280360 2 19 +1906 -107 -107 1 1070989126 1 1906 +1910 30 30 1 1978200605 1 1910 +1914 124 185 2 -2608386973 2 1914 +1926 -6 -6 1 -490337498 1 1926 +1937 -79 -79 1 -987995271 1 1937 +1940 0 0 1 950997304 1 1940 +1941 -116 -116 1 -54793232 1 1941 +1948 33 -73 3 -1338846770 3 1948 +1955 -53 -53 1 -316678117 1 1955 +1965 70 70 1 1173098061 1 1965 +1972 NULL NULL 1 -1404921781 1 1972 +1981 87 87 1 -980869630 1 1981 +1983 50 50 1 -1954890941 1 1983 +1987 121 121 1 65956045 1 1987 +1990 -71 -71 1 1050809633 1 1990 +1995 113 113 1 1012230484 1 1995 +1999 -89 -89 1 -9958400 1 1999 +2001 -30 -30 1 217476429 1 2001 +2002 105 105 1 1535954353 1 2002 +2004 102 102 1 1464703053 1 2004 +2009 NULL NULL 1 -1471147786 1 2009 +2011 -92 -92 1 33234633 1 2011 +2013 -15 -15 1 1142098316 1 2013 +2016 -50 -50 1 135341845 1 2016 +2017 97 97 1 44628821 1 2017 +2020 75 117 2 -207047446 2 2020 +2025 NULL NULL 1 989475408 1 2025 +2026 51 51 1 -1454941039 1 2026 +2029 NULL NULL 1 546555204 1 2029 +203 -3 -3 1 2070969353 1 203 +204 72 72 1 2018249426 1 204 +2046 -98 -98 1 363981930 1 2046 +2056 -6 -6 1 1941527322 1 2056 +2067 92 92 1 NULL 0 2067 +2072 -118 -118 1 -1652600376 1 2072 +2073 32 32 1 -856843296 1 2073 +2085 -114 -114 1 -1179668872 1 2085 +2089 89 89 1 945683736 1 2089 +2092 -21 -21 1 1678261510 1 2092 +2105 84 84 1 1550112473 1 2105 +2106 -125 -125 1 1597303154 1 2106 +2108 108 108 1 977292235 1 2108 +213 121 3 2 -1443273080 2 213 +2131 7 7 1 -464804906 1 2131 +2138 4 4 1 -1048181367 1 2138 +2140 123 123 1 -1319686435 1 2140 +2144 69 69 1 117620760 1 2144 +2155 NULL NULL 1 1126157283 1 2155 +2177 -55 -55 1 -1960344717 1 2177 +2179 72 72 1 1394370866 1 2179 +2180 -51 -51 1 -120704505 1 2180 +2183 28 28 1 -1947868215 1 2183 +2186 110 110 1 -1655396452 1 2186 +2187 -8 -8 1 -906986958 1 2187 +2189 -119 -119 1 NULL 0 2189 +2193 91 107 2 -2636180757 2 2193 +2194 -24 -24 1 -853967587 1 2194 +22 81 81 1 176792505 1 22 +2201 19 19 1 1425362689 1 2201 +2205 48 48 1 2013376408 1 2205 +2214 -125 -125 1 1602631923 1 2214 +2217 -30 -30 1 479566810 1 2217 +2218 26 26 1 NULL 0 2218 +2223 127 127 1 1605596441 1 2223 +2227 55 55 1 1054864168 1 2227 +2229 -101 -101 1 516843026 1 2229 +2232 17 17 1 277582670 1 2232 +2241 -46 -46 1 810157660 1 2241 +2244 -87 -87 1 -1699049982 1 2244 +2255 -91 -91 1 -1561738723 1 2255 +2262 -25 -25 1 1283898734 1 2262 +2264 119 119 1 -425103007 1 2264 +2270 -92 -92 1 -1429346144 1 2270 +2274 -35 -35 1 -1676261015 1 2274 +2277 -70 -70 1 -1447263708 1 2277 +2279 NULL NULL 1 -1412187081 1 2279 +228 121 121 1 167432368 1 228 +2283 -50 -50 1 530274409 1 2283 +2285 -35 -35 2 1874746988 2 2285 +2295 101 101 1 -1914072976 1 2295 +2306 31 31 1 -604362582 1 2306 +2320 111 111 1 -1919939921 1 2320 +2323 29 29 1 -2028355450 1 2323 +2325 26 14 2 3116981291 2 2325 +2335 55 55 1 1281277970 1 2335 +2341 -85 -85 1 1951869763 1 2341 +2348 30 30 1 -40407627 1 2348 +2358 69 69 1 -370798230 1 2358 +236 25 25 1 514833409 1 236 +2373 -64 -64 1 -1602792666 1 2373 +238 45 45 1 713031549 1 238 +2386 NULL NULL 1 930008274 1 2386 +2393 -18 -72 2 2753810053 2 2393 +2398 98 98 1 1489169773 1 2398 +2400 64 64 1 663222148 1 2400 +2410 75 75 1 NULL 0 2410 +2412 -5 -42 2 -2637504979 2 2412 +2420 -7 -7 1 480849725 1 2420 +2426 NULL NULL 1 62293025 1 2426 +2434 -42 -42 1 1621606222 1 2434 +244 -25 -25 1 860708524 1 244 +2461 58 58 1 -1668974292 1 2461 +2463 75 114 3 2507326063 3 2463 +2465 NULL NULL 1 -1819075185 1 2465 +2469 -42 -42 1 524808 1 2469 +2475 66 66 1 -1116100266 1 2475 +2476 78 78 1 -1210261177 1 2476 +2485 -5 -100 2 1214463625 2 2485 +2487 -73 -73 1 NULL 0 2487 +2492 12 12 1 -270683864 1 2492 +2494 59 59 1 -1830870295 1 2494 +2502 73 73 1 -336625622 1 2502 +2506 42 42 1 776606164 1 2506 +2509 -126 -126 1 693331761 1 2509 +2512 63 63 1 -1164833898 1 2512 +2514 -38 -38 1 407233168 1 2514 +2515 -86 -86 1 -601946913 1 2515 +2517 34 34 1 198624903 1 2517 +2524 -34 -34 1 -1081766449 1 2524 +2533 74 74 1 672266669 1 2533 +2539 36 36 1 1090344463 1 2539 +2540 -32 -32 1 1103878879 1 2540 +255 102 102 1 -1106469823 1 255 +2551 -88 -88 1 -1762037754 1 2551 +2553 12 12 1 1112783661 1 2553 +2560 13 -97 2 -3439306295 2 2560 +2563 -94 -94 1 -1141652793 1 2563 +2565 97 97 1 -1302592941 1 2565 +2569 -75 -75 1 -837503491 1 2569 +2579 39 39 1 1640445482 1 2579 +2580 51 51 1 1933545427 1 2580 +2587 46 46 1 -1125605439 1 2587 +259 -113 -113 1 -922875124 1 259 +2599 -101 -101 1 -1903090602 1 2599 +2607 111 111 1 NULL 0 2607 +2608 41 41 1 335359004 1 2608 +2619 -42 -100 2 -123535819 2 2619 +2625 96 96 1 -1897998366 1 2625 +2626 107 107 1 1620529246 1 2626 +263 125 225 2 2902136672 2 263 +2637 30 30 1 1522208504 1 2637 +2647 80 80 1 92834720 1 2647 +2649 102 102 1 659343542 1 2649 +2662 -16 -16 1 209430502 1 2662 +2663 39 39 1 43983130 1 2663 +2675 -44 -44 1 1305668933 1 2675 +268 -42 -136 2 657241842 2 268 +2680 -44 -44 1 825977391 1 2680 +2682 38 38 1 -675125724 1 2682 +2688 86 86 1 -1249134513 1 2688 +2689 35 35 1 -1343327 1 2689 +2692 67 67 1 NULL 0 2692 +2700 -81 -81 1 -123529324 1 2700 +2712 -62 -62 1 -901778330 1 2712 +2714 NULL NULL 1 1284956108 1 2714 +2715 67 -52 2 2531982336 2 2715 +2719 -127 -127 1 1516149502 1 2719 +2724 -105 -105 1 922373046 1 2724 +2725 38 38 1 257821327 1 2725 +2735 66 66 1 1307148254 1 2735 +2745 39 39 1 1134416796 1 2745 +275 -109 -109 1 1517488324 1 275 +2752 -83 -83 1 962091264 1 2752 +2762 37 37 1 314232856 1 2762 +2772 -57 -57 1 1835749815 1 2772 +2776 73 73 1 -1801684055 1 2776 +2786 -101 -218 2 -1773917592 2 2786 +279 11 11 1 -1709246310 1 279 +2790 -27 -27 1 686081268 1 2790 +2791 -109 -109 1 -714594143 1 2791 +2803 52 53 3 2005164945 3 2803 +2805 -69 -69 1 -295751373 1 2805 +281 83 83 1 -42151403 1 281 +2810 126 126 1 1844415080 1 2810 +2811 -92 -92 1 -170643477 1 2811 +2816 -108 -108 1 -912429611 1 2816 +2821 95 95 1 829055499 1 2821 +2824 -52 -52 1 -1679120527 1 2824 +2835 117 117 1 144428297 1 2835 +2842 125 125 1 889772203 1 2842 +2843 -17 -70 2 -2509512115 2 2843 +2846 10 10 1 -121162464 1 2846 +2847 NULL NULL 1 1634441052 1 2847 +2848 29 29 1 -985817478 1 2848 +2850 90 90 1 1618123796 1 2850 +2855 117 212 2 -13657610 2 2855 +2862 -86 -86 1 1956887369 1 2862 +2878 9 9 1 -906545548 1 2878 +2886 40 40 1 84231802 1 2886 +289 114 114 1 -1144976744 1 289 +2897 4 -65 2 1164210518 2 2897 +2900 102 102 1 2114363167 1 2900 +2903 NULL NULL 1 1552351592 1 2903 +2905 8 8 1 -1232183416 1 2905 +2911 -47 -47 1 1483580941 1 2911 +2915 45 45 1 -470798506 1 2915 +2919 -88 -88 1 1002132158 1 2919 +2933 3 -35 2 -3159411453 2 2933 +2938 -44 -44 1 -2032576637 1 2938 +294 86 86 1 -1817096156 1 294 +2941 31 31 1 -1862095575 1 2941 +2942 -40 -40 1 1638471881 1 2942 +296 -21 -92 2 -750491170 2 296 +2962 109 109 1 1042237722 1 2962 +2968 -17 -106 2 1556919269 1 2968 +2971 -60 -60 1 -373541958 1 2971 +2977 90 90 1 -2007662579 1 2977 +2979 37 37 1 131031898 1 2979 +2984 19 19 1 1440427914 1 2984 +2986 85 85 1 -933324607 1 2986 +2988 0 0 1 492639283 1 2988 +2991 -38 -38 1 NULL 0 2991 +3002 -100 -100 1 -1538558250 1 3002 +3006 114 114 1 1328225044 1 3006 +301 -65 -65 1 -1924909143 1 301 +302 -58 -58 1 -1730740504 1 302 +3021 -59 -131 2 -182818671 2 3021 +3024 62 62 1 -891543038 1 3024 +3029 50 50 1 -1198036877 1 3029 +3031 -5 -5 1 NULL 0 3031 +3036 120 120 1 -449333854 1 3036 +3043 -115 -115 1 692666133 1 3043 +3054 119 119 1 -973128166 1 3054 +3055 -108 -108 1 -1198465530 1 3055 +3058 106 106 1 -1144920802 1 3058 +3059 92 92 1 1386071996 1 3059 +3060 34 34 2 -1304196353 2 3060 +3067 38 38 1 1256676429 1 3067 +3071 -52 -52 1 1129173487 1 3071 +3073 116 116 1 722737062 1 3073 +3079 -24 -151 2 -882028850 1 3079 +3083 -70 -70 1 -385247581 1 3083 +3084 -75 -75 1 1333148555 1 3084 +3089 -98 -98 1 584084934 1 3089 +3094 114 114 1 1335803002 1 3094 +3103 -121 -121 1 -1622653291 1 3103 +311 33 33 1 -1850492820 1 311 +3111 10 10 1 -1299159155 1 3111 +3118 7 7 1 NULL 0 3118 +3119 82 82 1 673904922 1 3119 +3144 -17 -17 1 -758231588 1 3144 +3147 -96 -96 1 1102069050 1 3147 +3159 48 29 2 1048839219 2 3159 +3163 NULL NULL 1 26270580 1 3163 +3174 46 46 1 -1871446009 1 3174 +3183 -23 -23 1 1363459426 1 3183 +3190 -124 -124 1 297577612 1 3190 +3197 -66 -66 1 976870621 1 3197 +3199 86 86 1 -2086352100 1 3199 +320 0 0 1 1198172036 1 320 +3203 6 6 1 -491377296 1 3203 +3206 77 77 1 -733756717 1 3206 +3208 -72 -72 1 -211669740 1 3208 +3212 10 10 1 900992177 1 3212 +3213 -57 -57 1 -1171326281 1 3213 +3231 NULL NULL 1 -817383093 1 3231 +3232 59 59 1 1434588588 1 3232 +3235 -14 -14 1 -287400633 1 3235 +3244 -40 -40 1 1303632852 1 3244 +3245 -3 -3 1 1385883394 1 3245 +3248 29 29 1 1202720813 1 3248 +3249 -124 -124 1 206942178 1 3249 +3253 61 61 1 -1218871391 1 3253 +3255 23 23 1 -1212433954 1 3255 +3263 NULL NULL 1 -419335927 1 3263 +3286 5 5 1 -1078214868 1 3286 +3300 NULL NULL 1 1743696703 1 3300 +3307 -115 -115 1 -1128317466 1 3307 +3322 -120 -120 1 -1544877665 1 3322 +3333 11 11 1 -462541618 1 3333 +3352 -28 -28 1 -1621814212 1 3352 +336 -83 -83 1 1376818328 1 336 +3365 29 29 1 1712411993 1 3365 +3366 -55 -55 1 -606214770 1 3366 +3397 -26 -26 1 -2066134281 1 3397 +34 -15 -15 1 1969650228 1 34 +3401 NULL NULL 1 -2138343289 1 3401 +3407 -105 -105 1 NULL 0 3407 +3409 89 89 1 -337586880 1 3409 +341 126 126 1 278643258 1 341 +3418 -89 -214 2 -153939256 2 3418 +342 -121 -121 1 -884796655 1 342 +3421 -117 -117 1 -1878572820 1 3421 +3430 -110 -110 1 -395499919 1 3430 +3443 120 120 1 -1006768637 1 3443 +3446 -80 -80 1 440393309 1 3446 +345 -87 -87 1 NULL 0 345 +3456 97 97 1 NULL 0 3456 +346 NULL NULL 2 -2819634111 2 346 +3460 -95 -95 1 1204325852 1 3460 +3462 122 114 3 -1412216754 3 3462 +3467 58 69 2 -537984108 2 3467 +347 30 30 1 -414207254 1 347 +3472 -30 -30 1 868717604 1 3472 +3478 -40 -40 1 1772545157 1 3478 +3493 37 37 1 -890552359 1 3493 +350 59 59 1 330302407 1 350 +3507 -126 -126 1 2032271149 1 3507 +3510 -104 -104 1 197056787 1 3510 +3512 60 60 1 636901402 1 3512 +3533 -52 -52 1 1076088102 1 3533 +3534 -5 -5 1 NULL 0 3534 +3541 104 104 1 -996953616 1 3541 +3542 -59 -59 1 459269456 1 3542 +355 48 48 1 1258721737 1 355 +3554 -39 -39 1 48554395 1 3554 +3555 43 43 2 499253776 2 3555 +3563 -76 -76 1 1332181668 1 3563 +3566 -79 -79 1 -519978947 1 3566 +3567 -56 -56 1 410340192 1 3567 +3568 -96 -96 1 NULL 0 3568 +3579 121 121 1 -1426893312 1 3579 +3588 98 62 2 1546855030 2 3588 +3599 -27 -27 1 2069258195 1 3599 +3606 -86 -86 1 -1032306832 1 3606 +3608 56 56 1 773730574 1 3608 +3609 104 104 1 -1380191654 1 3609 +361 103 103 1 -434747475 1 361 +3613 59 59 1 1191238870 1 3613 +3622 100 127 2 474041784 2 3622 +3625 123 123 1 -1656822229 1 3625 +3630 -80 -80 1 693876030 1 3630 +3637 -51 -51 1 929560791 1 3637 +364 32 32 1 1336365018 1 364 +3648 81 81 1 1142481557 1 3648 +3663 31 31 1 -886741158 1 3663 +3664 58 58 1 -186600427 1 3664 +367 -112 -112 1 -1324624386 1 367 +3672 76 76 1 1825828852 1 3672 +3673 126 126 1 -362603422 1 3673 +3677 NULL NULL 1 470575409 1 3677 +3680 67 67 1 1124269631 1 3680 +3682 3 3 1 -1718163874 1 3682 +3690 57 57 1 1500437122 1 3690 +3691 124 124 1 -664111469 1 3691 +3701 -105 -105 1 760466914 1 3701 +3702 NULL NULL 1 -1423467446 1 3702 +3703 20 20 1 1796950944 1 3703 +3707 87 87 1 1377359511 1 3707 +3722 41 41 1 -1322736153 1 3722 +3724 42 42 1 1625751062 1 3724 +3725 68 111 2 -207705473 2 3725 +3728 113 164 2 -1739142068 2 3728 +3739 -60 -60 1 -192181579 1 3739 +3747 -114 -114 1 1001732850 1 3747 +3749 -38 -38 1 1027147837 1 3749 +375 -75 -75 1 -1754347372 1 375 +3755 -86 -86 1 -7929246 1 3755 +3763 18 18 1 -679230165 1 3763 +3764 95 95 1 -2027812975 1 3764 +3769 95 95 1 -1431196400 1 3769 +3770 66 48 2 -3354369862 2 3770 +378 -55 -55 1 -1270523286 1 378 +3781 -16 -56 2 -20392256 2 3781 +3789 -4 -4 1 -139448716 1 3789 +379 34 34 1 1625699061 1 379 +3810 107 107 1 -1043413503 1 3810 +3812 -116 -116 1 -870900240 1 3812 +3823 -13 -13 1 1563120121 1 3823 +3824 111 111 1 1372224352 1 3824 +383 -24 -90 2 872090024 2 383 +3830 58 58 1 1443426396 1 3830 +3835 -27 -27 1 133276416 1 3835 +3841 1 1 1 -901079162 1 3841 +3848 93 93 1 1436480682 1 3848 +3858 97 97 1 1925283040 1 3858 +3860 75 75 1 -423945469 1 3860 +3866 91 116 2 347517645 2 3866 +3874 50 50 1 -1603071732 1 3874 +3879 -121 -121 1 461680901 1 3879 +388 108 108 1 -66112513 1 388 +3887 53 53 1 476919973 1 3887 +3901 18 18 1 -1909635960 1 3901 +3904 -55 -55 1 1473503196 1 3904 +3907 -69 -69 1 -373038706 1 3907 +391 NULL NULL 1 1107258026 1 391 +3910 62 62 1 NULL 0 3910 +3911 -43 -43 1 -1283465451 1 3911 +3913 -14 -14 1 1506907734 1 3913 +392 51 51 1 1664736741 1 392 +3932 -85 -85 1 2145269593 1 3932 +3940 15 15 1 923353533 1 3940 +3941 -122 -122 1 -734921821 1 3941 +3945 -30 -30 1 -1758125445 1 3945 +3946 -37 -37 1 523289079 1 3946 +3949 -59 -59 1 1797164732 1 3949 +3958 -34 -34 1 65172363 1 3958 +3960 -16 -16 1 1509573831 1 3960 +3961 40 40 1 -1955647385 1 3961 +3962 -10 -10 1 NULL 0 3962 +3965 -91 -91 1 771827308 1 3965 +3974 47 35 2 417582711 2 3974 +3980 82 82 1 -564495517 1 3980 +3990 -86 -86 1 -1392487784 1 3990 +4018 -34 -34 1 -396852483 1 4018 +4020 -113 -113 1 -1447140800 1 4020 +4024 -28 -28 1 -202035134 1 4024 +4030 -105 -105 1 -216495498 1 4030 +4037 -71 -71 1 1003667927 1 4037 +4051 -55 -55 1 1052255272 1 4051 +4054 -40 -40 1 1998185704 1 4054 +4056 -52 -52 1 -1516259168 1 4056 +4075 80 80 1 NULL 0 4075 +4078 -118 -118 1 727802564 1 4078 +4088 15 15 1 947846543 1 4088 +41 37 37 1 -203911033 1 41 +412 127 91 2 1638575351 2 412 +417 -49 -49 1 152891873 1 417 +425 20 20 1 1336194583 1 425 +443 98 98 1 596242714 1 443 +454 7 7 1 -1227085134 1 454 +455 93 93 1 1159353899 1 455 +462 105 105 1 1677444379 1 462 +470 -63 -63 1 -181523892 1 470 +471 -26 -26 1 -207899360 1 471 +481 -51 -51 1 536235636 1 481 +482 4 4 1 765084282 1 482 +485 -80 -80 1 874824958 1 485 +489 4 4 1 -928013434 1 489 +49 -47 -47 1 1673218677 1 49 +490 -95 -95 1 1229172951 1 490 +491 -93 -93 1 -201554470 1 491 +5 120 120 1 -1063673827 1 5 +500 71 71 1 1216016081 1 500 +501 63 32 2 -754130393 2 501 +504 -43 -43 1 851975276 1 504 +522 111 111 1 -853606287 1 522 +523 0 0 1 149701884 1 523 +524 -91 -91 1 -1326025787 1 524 +530 82 82 1 -1851680302 1 530 +535 64 64 1 888896424 1 535 +579 -34 -34 1 -1804244259 1 579 +583 -120 -120 1 -1554325042 1 583 +584 88 88 1 -2017279089 1 584 +586 113 113 1 -310343273 1 586 +587 116 116 1 1485934602 1 587 +590 53 53 1 -186764959 1 590 +597 -65 -65 1 1577999613 1 597 +601 -60 -60 1 -592568201 1 601 +612 -81 -81 1 1131663263 1 612 +615 50 50 1 2097519027 1 615 +618 -27 -27 1 -412333994 1 618 +65 -90 -90 1 919363072 1 65 +650 -58 -58 1 1222217404 1 650 +658 -103 -103 1 -1254129998 1 658 +66 70 70 1 2013444562 1 66 +661 -2 -2 2 638630670 2 661 +663 -31 -31 1 -1261099087 1 663 +664 113 113 1 899810881 1 664 +677 57 57 1 -1038565721 1 677 +68 -53 -53 1 879290165 1 68 +681 -31 -31 1 -893863493 1 681 +687 -52 -52 1 1888675011 1 687 +688 -96 -96 1 NULL 0 688 +690 102 102 1 -1112062809 1 690 +691 54 54 1 -1156193121 1 691 +6923604860394528768 78 78 1 -1095938490 1 6923604860394528768 +6924820982050758656 87 87 1 -1709117770 1 6924820982050758656 +6926925215281774592 -57 -57 1 987734049 1 6926925215281774592 +6927260280037097472 120 120 1 1668094749 1 6927260280037097472 +6928080429732536320 0 0 1 1300798829 1 6928080429732536320 +6933001829416034304 NULL NULL 1 2089198703 1 6933001829416034304 +6933451028794925056 39 39 1 1776456512 1 6933451028794925056 +6933731240564056064 111 111 1 780859673 1 6933731240564056064 +6934570741217755136 22 22 1 491758252 1 6934570741217755136 +694 -36 -36 1 -2015780444 1 694 +6947488599548215296 14 14 1 1141595012 1 6947488599548215296 +695 -13 -13 1 -521886983 1 695 +6960137166475911168 50 50 1 -558456218 1 6960137166475911168 +6962726713896484864 48 48 1 2051470532 1 6962726713896484864 +6963217546192322560 NULL NULL 1 -1340213051 1 6963217546192322560 +6964585306125008896 31 31 1 2146312499 1 6964585306125008896 +6967631925774639104 82 82 1 373031319 1 6967631925774639104 +6969599299897163776 108 108 1 -2042831105 1 6969599299897163776 +6974475559697768448 -64 -64 1 1493555718 1 6974475559697768448 +6982145326341423104 -68 -68 1 -941433219 1 6982145326341423104 +6987889924212203520 -53 -53 1 -2053551539 1 6987889924212203520 +6991316084916879360 48 48 1 -1345085327 1 6991316084916879360 +6996686091335884800 -81 -81 1 -1738775004 1 6996686091335884800 +7006803044329021440 80 80 1 1614297403 1 7006803044329021440 +7013693841855774720 -116 -116 1 656187584 1 7013693841855774720 +7014537632150224896 -72 -72 1 -44426049 1 7014537632150224896 +7017956982081404928 -75 -75 1 -828724467 1 7017956982081404928 +7022349041913978880 93 93 1 -1096013673 1 7022349041913978880 +7027529814236192768 -60 -60 1 -1988508336 1 7027529814236192768 +7031339012080549888 -121 -121 1 1182390248 1 7031339012080549888 +7039820685967343616 41 41 1 -483740394 1 7039820685967343616 +7045967493826387968 105 105 1 -1669227632 1 7045967493826387968 +7049773031131283456 -57 -57 1 814544198 1 7049773031131283456 +7052226236896256000 41 41 1 1119976718 1 7052226236896256000 +7054271419461812224 50 50 1 -1266138408 1 7054271419461812224 +7054938591408996352 -119 -119 1 -352146259 1 7054938591408996352 +7060236714847412224 -98 -98 1 -1858443953 1 7060236714847412224 +7061498706968428544 -50 -50 1 -290558484 1 7061498706968428544 +7061809776248545280 38 38 1 -469870330 1 7061809776248545280 +7062382339142156288 4 4 1 536876888 1 7062382339142156288 +7062605127422894080 -35 -35 1 -1614194712 1 7062605127422894080 +7065344324692443136 7 7 1 -1881263242 1 7065344324692443136 +7068517339681259520 55 55 1 -1871209811 1 7068517339681259520 +7069729473166090240 21 21 1 NULL 0 7069729473166090240 +707 -3 -3 1 1343581455 1 707 +7077311975029555200 112 112 1 1103797891 1 7077311975029555200 +7078641038157643776 -87 -87 1 NULL 0 7078641038157643776 +7080269176324218880 -100 -100 1 -337073639 1 7080269176324218880 +7084659344078970880 -40 -40 1 963854010 1 7084659344078970880 +7086206629592252416 -117 -117 1 -1106685577 1 7086206629592252416 +7091300332052062208 54 54 1 NULL 0 7091300332052062208 +7099005292698550272 72 72 1 917891418 1 7099005292698550272 +71 -62 -62 1 -20639382 1 71 +7107604675626008576 -56 -56 1 1949494660 1 7107604675626008576 +7125231541858205696 104 104 1 -2111312205 1 7125231541858205696 +7128222874437238784 54 54 1 -283378057 1 7128222874437238784 +7130159794259353600 -20 -20 1 -837506172 1 7130159794259353600 +7130306447560826880 -14 -14 1 77063155 1 7130306447560826880 +7149417430082027520 113 113 1 -1352545619 1 7149417430082027520 +7153922334283776000 110 110 1 NULL 0 7153922334283776000 +7157247449513484288 49 49 1 -36038293 1 7157247449513484288 +7164349895861829632 -121 -121 1 -1153978907 1 7164349895861829632 +7165364563962191872 -101 -101 1 -1272838092 1 7165364563962191872 +7166263463731421184 101 101 1 -1838281337 1 7166263463731421184 +7175638927948562432 -83 -83 1 596280431 1 7175638927948562432 +7186401810812059648 10 10 1 1430614653 1 7186401810812059648 +7195454019231834112 -13 -13 1 -1419573027 1 7195454019231834112 +7198687580227043328 14 14 1 563507584 1 7198687580227043328 +7199539820886958080 -27 -27 1 NULL 0 7199539820886958080 +7204802700490858496 -22 -22 1 -1719427168 1 7204802700490858496 +7210160489915236352 NULL NULL 1 -1353470095 1 7210160489915236352 +7212016545671348224 59 59 1 1309976380 1 7212016545671348224 +7212090742612467712 -98 -98 1 -1067083033 1 7212090742612467712 +7217123582035116032 113 113 1 -90029636 1 7217123582035116032 +7220131672176058368 80 80 1 1017953606 1 7220131672176058368 +7220581538170413056 28 28 1 615661052 1 7220581538170413056 +7223569671814987776 NULL NULL 1 -1004204053 1 7223569671814987776 +7226360892091416576 -26 -26 1 -935723237 1 7226360892091416576 +7229607057201127424 16 16 1 -1818380492 1 7229607057201127424 +723 NULL NULL 1 1616782308 1 723 +7231399302953377792 -41 -41 1 1990792684 1 7231399302953377792 +7232273749940838400 -83 -83 1 -1231821948 1 7232273749940838400 +7235109456886816768 -114 -114 1 -2098078720 1 7235109456886816768 +7237310132329488384 -45 -45 1 -1061859761 1 7237310132329488384 +7238339720750948352 38 38 1 -1770229099 1 7238339720750948352 +724 -28 -28 1 -616724730 1 724 +7242751359672631296 -120 -120 1 -2016985611 1 7242751359672631296 +7249443195032985600 NULL NULL 1 -51612681 1 7249443195032985600 +7250237407877382144 52 52 1 -772236518 1 7250237407877382144 +7254710367022645248 67 67 1 1911809937 1 7254710367022645248 +7255302164215013376 -108 -108 1 1281159709 1 7255302164215013376 +7259955893466931200 10 10 1 NULL 0 7259955893466931200 +7260908278294560768 43 43 1 826519029 1 7260908278294560768 +7265141874315517952 -99 -99 1 -571587579 1 7265141874315517952 +7266437490436341760 -41 -41 1 177391521 1 7266437490436341760 +7271786885641666560 -61 -61 1 936752497 1 7271786885641666560 +7271887863395459072 23 23 1 -94709066 1 7271887863395459072 +7274777328897802240 21 21 1 482977302 1 7274777328897802240 +7291432593139507200 3 3 1 1570238232 1 7291432593139507200 +7295502697317097472 NULL NULL 1 210728566 1 7295502697317097472 +7295926343524163584 -35 -35 1 1182646662 1 7295926343524163584 +7296164580491075584 -111 -111 1 1412102605 1 7296164580491075584 +7299197687217856512 8 8 1 172075892 1 7299197687217856512 +73 69 69 1 488014426 1 73 +7304839835188609024 -8 -8 1 1961954939 1 7304839835188609024 +7308289763456000000 NULL NULL 1 -1423477356 1 7308289763456000000 +7309156463509061632 -100 -100 1 1304431147 1 7309156463509061632 +7310869618402910208 -45 -45 1 -359943425 1 7310869618402910208 +7319711402123149312 -95 -95 1 1036391201 1 7319711402123149312 +7333512171174223872 -8 -8 1 -332125121 1 7333512171174223872 +7339426767877390336 7 7 1 538268118 1 7339426767877390336 +7343171468838567936 -93 -93 1 879289168 1 7343171468838567936 +7344029858387820544 115 115 1 -1669848306 1 7344029858387820544 +7345991518378442752 -28 -28 1 849859032 1 7345991518378442752 +7347732772348870656 -78 -78 1 -1800413845 1 7347732772348870656 +7348598907182800896 -101 -101 1 -1940205653 1 7348598907182800896 +735 65 65 1 115111911 1 735 +7354813692542304256 77 77 1 1426152053 1 7354813692542304256 +7359004378440146944 -108 -108 1 1082837515 1 7359004378440146944 +736 -4 -4 1 -1183469360 1 736 +7368920486374989824 64 64 1 -1822850051 1 7368920486374989824 +7370078518278397952 -48 -48 1 -215703544 1 7370078518278397952 +7370803940448305152 -18 -18 1 -533281137 1 7370803940448305152 +7375521127126089728 102 102 1 -688296901 1 7375521127126089728 +7376467688511455232 5 5 1 -348628614 1 7376467688511455232 +7378993334503694336 -45 -45 1 1870464222 1 7378993334503694336 +738 26 26 1 -453739759 1 738 +7381659098423926784 -1 -1 1 867587289 1 7381659098423926784 +7384150968511315968 103 103 1 1447462863 1 7384150968511315968 +7386087924003676160 3 3 1 2038381675 1 7386087924003676160 +7391208370547269632 -1 -1 1 -743680989 1 7391208370547269632 +7393308503950548992 95 95 1 -849551464 1 7393308503950548992 +7394967727502467072 30 30 1 -1983567458 1 7394967727502467072 +7401968422230032384 -15 -15 1 -504529358 1 7401968422230032384 +7410096605330227200 38 38 1 1987336880 1 7410096605330227200 +7410872053689794560 -38 -38 1 -916344293 1 7410872053689794560 +7411793502161182720 -5 -5 1 -177025818 1 7411793502161182720 +7412924364686458880 -123 -123 1 1817671655 1 7412924364686458880 +7414865343000322048 48 48 1 -829717122 1 7414865343000322048 +7418271723644403712 56 56 1 1202593021 1 7418271723644403712 +743 18 18 1 1004241194 1 743 +7432428551399669760 23 23 1 -805288503 1 7432428551399669760 +7432998950057975808 59 59 1 -434656160 1 7432998950057975808 +7436133434239229952 112 112 1 203688965 1 7436133434239229952 +7440265908266827776 NULL NULL 1 -1425942083 1 7440265908266827776 +7450416810848313344 0 0 1 1393262450 1 7450416810848313344 +7452756603516190720 110 110 1 -2009569943 1 7452756603516190720 +7454442625055145984 80 80 1 -267554590 1 7454442625055145984 +7454632396542074880 -97 -97 1 859140926 1 7454632396542074880 +7461153404961128448 -33 -33 1 -23865350 1 7461153404961128448 +7471208109437304832 -110 -110 1 -1603374745 1 7471208109437304832 +7473537548003352576 35 35 1 -1439424023 1 7473537548003352576 +7486884806277611520 -87 -87 1 1516236846 1 7486884806277611520 +7487338208419823616 59 59 1 1974939899 1 7487338208419823616 +7487538600082554880 -32 -32 1 2068538934 1 7487538600082554880 +7490717730239250432 64 64 1 -1829691116 1 7490717730239250432 +7491898395977523200 -43 -43 1 1265528735 1 7491898395977523200 +7492436934952574976 -98 -98 1 NULL 0 7492436934952574976 +7497276415392407552 122 122 1 1543611951 1 7497276415392407552 +7497306924248834048 -78 -78 1 550594651 1 7497306924248834048 +7500716020874674176 11 11 1 -1953605752 1 7500716020874674176 +7514552840617558016 59 59 1 334208532 1 7514552840617558016 +7517159036469575680 58 58 1 -1437126017 1 7517159036469575680 +7524958388842078208 -78 -78 1 -664856187 1 7524958388842078208 +7528074274555305984 100 100 1 550186724 1 7528074274555305984 +7528211148397944832 33 33 1 -512198016 1 7528211148397944832 +7534042483076857856 -59 -59 1 1645753684 1 7534042483076857856 +7534145866886782976 54 54 1 -532755480 1 7534145866886782976 +7534549597202194432 70 70 1 2044130430 1 7534549597202194432 +7545689659010949120 -33 -33 1 -1380678829 1 7545689659010949120 +7548958830580563968 119 119 1 1836499981 1 7548958830580563968 +7549858023389003776 53 53 1 NULL 0 7549858023389003776 +7555301305375858688 -105 -105 1 1916363472 1 7555301305375858688 +7566273236152721408 -13 -13 1 881673558 1 7566273236152721408 +7569249672628789248 -113 -113 1 -1952235832 1 7569249672628789248 +7570474972934488064 50 50 1 -432218419 1 7570474972934488064 +7573530789362262016 7 7 1 NULL 0 7573530789362262016 +7575087487730196480 15 15 1 1421779455 1 7575087487730196480 +7581052107944361984 -37 -37 1 1493152791 1 7581052107944361984 +7581614118458335232 -77 -77 1 -1129489281 1 7581614118458335232 +7584007864107778048 41 41 1 1410516523 1 7584007864107778048 +7592440105065308160 85 85 1 NULL 0 7592440105065308160 +7593521922173419520 37 37 1 1260480653 1 7593521922173419520 +7596563216912211968 -44 -44 1 605946758 1 7596563216912211968 +7599019810193211392 94 94 1 -2112149052 1 7599019810193211392 +7608447395949109248 -119 -119 1 882762933 1 7608447395949109248 +7614435638888210432 -113 -113 1 735600165 1 7614435638888210432 +7620183559667081216 -20 -20 1 -1967660827 1 7620183559667081216 +7621013099259527168 -59 -59 1 -553349593 1 7621013099259527168 +7625728883085025280 -92 -92 1 -1699044525 1 7625728883085025280 +7626715182847090688 -77 -77 1 1905812339 1 7626715182847090688 +763 -31 -31 1 -1933374662 1 763 +7637152193832886272 -33 -33 1 1880017800 1 7637152193832886272 +7647481735646363648 7 7 1 1164895226 1 7647481735646363648 +7648729477297987584 2 2 1 NULL 0 7648729477297987584 +7652123583449161728 66 66 1 472901914 1 7652123583449161728 +7659279803863146496 31 31 1 1541249928 1 7659279803863146496 +7662037650719850496 -100 -100 1 -175727228 1 7662037650719850496 +7675009476762918912 23 23 1 522895626 1 7675009476762918912 +7678790769408172032 -69 -69 1 -1313618168 1 7678790769408172032 +7682327310082531328 -12 -12 1 879500678 1 7682327310082531328 +7686992843032010752 -77 -77 1 -897622427 1 7686992843032010752 +7689489436826804224 33 33 1 -909127123 1 7689489436826804224 +7690986322714066944 -41 -41 1 -2124994385 1 7690986322714066944 +7691062622443044864 98 98 1 1516165279 1 7691062622443044864 +7696737688942567424 -18 -18 1 -269702086 1 7696737688942567424 +7697541332524376064 -96 -96 1 -1070951602 1 7697541332524376064 +7700734109530767360 -60 -60 1 194754262 1 7700734109530767360 +7701723309715685376 101 101 1 -1831957182 1 7701723309715685376 +7705445437881278464 47 47 1 527598540 1 7705445437881278464 +7710447533880614912 61 61 1 -583908704 1 7710447533880614912 +7718825401976684544 -22 -22 1 -1226425562 1 7718825401976684544 +7720187583697502208 -72 -72 1 -1366059787 1 7720187583697502208 +7731443941834678272 -112 -112 1 -1092872261 1 7731443941834678272 +7735566678126616576 -28 -28 1 1626868156 1 7735566678126616576 +774 -114 -114 1 449788961 1 774 +7741854854673367040 93 93 1 -1743938290 1 7741854854673367040 +7746402369011277824 -50 -50 1 -1735287250 1 7746402369011277824 +7747874976739016704 89 89 1 315055746 1 7747874976739016704 +7748799008146366464 85 85 1 -540401598 1 7748799008146366464 +7752740515534422016 NULL NULL 1 1851654062 1 7752740515534422016 +7753359568986636288 -81 -81 1 -816661030 1 7753359568986636288 +7753882935005880320 16 16 1 1190302173 1 7753882935005880320 +7761834341179375616 90 90 1 1273877405 1 7761834341179375616 +7762823913046556672 123 123 1 1198701102 1 7762823913046556672 +7765456790394871808 -98 -98 1 1074488452 1 7765456790394871808 +7768984605670604800 116 116 1 NULL 0 7768984605670604800 +7775034125776363520 -90 -90 1 -1628799508 1 7775034125776363520 +7778936842502275072 17 17 1 -1702587308 1 7778936842502275072 +7779486624537370624 124 124 1 -1998652546 1 7779486624537370624 +7779735136559579136 120 120 1 -1228063838 1 7779735136559579136 +7782245855193874432 73 73 1 618991041 1 7782245855193874432 +7784169796350730240 120 120 1 -958165276 1 7784169796350730240 +7784489776013295616 5 5 1 -158848747 1 7784489776013295616 +779 62 62 1 -1939362279 1 779 +7790728456522784768 -23 -23 1 1575091509 1 7790728456522784768 +7792036342592348160 36 36 1 -538812082 1 7792036342592348160 +7794244032613703680 90 90 1 1301426600 1 7794244032613703680 +78 -19 -19 1 95356298 1 78 +780 103 103 1 -737624128 1 780 +7800332581637259264 123 123 1 592011541 1 7800332581637259264 +7801697837312884736 -41 -41 1 -116484575 1 7801697837312884736 +7818464507324121088 92 92 1 -2119724898 1 7818464507324121088 +782 -56 -56 1 -1552053883 1 782 +7823874904139849728 -125 -125 1 344239980 1 7823874904139849728 +784 75 75 1 44595790 1 784 +7843804446688264192 -6 -6 1 -397951021 1 7843804446688264192 +7844258063629852672 -1 -1 1 972835688 1 7844258063629852672 +7845953007588401152 120 120 1 NULL 0 7845953007588401152 +7857878068300898304 -50 -50 1 977624089 1 7857878068300898304 +7868367829080506368 56 56 1 658008867 1 7868367829080506368 +7870277756614623232 -105 -105 1 985634256 1 7870277756614623232 +7871189141676998656 79 79 1 1363568842 1 7871189141676998656 +7871554728617025536 6 6 1 -309571354 1 7871554728617025536 +7874764415950176256 NULL NULL 1 2127682701 1 7874764415950176256 +7885697257930588160 NULL NULL 1 1992977592 1 7885697257930588160 +7888238729321496576 124 124 1 978044705 1 7888238729321496576 +789 -119 -119 1 NULL 0 789 +7892026679115554816 22 22 1 626941809 1 7892026679115554816 +7892281003266408448 46 46 1 -371779520 1 7892281003266408448 +7898670840507031552 98 98 1 776459017 1 7898670840507031552 +7909645665163804672 -109 -109 1 -1289665817 1 7909645665163804672 +7917494645725765632 -61 -61 1 2076370203 1 7917494645725765632 +7919597361814577152 70 70 1 2125311222 1 7919597361814577152 +7921639119138070528 112 112 1 -1030565036 1 7921639119138070528 +7922443154272395264 39 39 1 -1333770335 1 7922443154272395264 +7926898770090491904 85 85 1 1582537271 1 7926898770090491904 +7933040277013962752 121 121 1 -1061222139 1 7933040277013962752 +7936149988210212864 -27 -27 1 1769324649 1 7936149988210212864 +7944741547145502720 0 0 1 372099650 1 7944741547145502720 +7947544013461512192 -52 -52 1 -1184620079 1 7947544013461512192 +7948803266578161664 -69 -69 1 1766517223 1 7948803266578161664 +7955126053367119872 -8 -8 1 1447438548 1 7955126053367119872 +7961515985722605568 NULL NULL 1 866084887 1 7961515985722605568 +7961909238130270208 85 85 1 -1138530007 1 7961909238130270208 +797 87 87 1 996831203 1 797 +7983789401706094592 -14 -14 1 230954385 1 7983789401706094592 +7989119273552158720 -55 -55 1 NULL 0 7989119273552158720 +7989160253372817408 -58 -58 1 1848935036 1 7989160253372817408 +7997694023324975104 -116 -116 1 -1826997220 1 7997694023324975104 +7998357471114969088 84 84 1 346562088 1 7998357471114969088 +7998687089080467456 -50 -50 1 NULL 0 7998687089080467456 +80 105 105 1 NULL 0 80 +8000440057238052864 111 111 1 1251556414 1 8000440057238052864 +8002769767000145920 -106 -106 1 1668446119 1 8002769767000145920 +8004633750273925120 21 21 1 -1754203978 1 8004633750273925120 +8011181697250631680 -73 -73 1 1773417290 1 8011181697250631680 +8011602724663336960 -98 -98 1 667283966 1 8011602724663336960 +8014986215157530624 -117 -117 1 -799249885 1 8014986215157530624 +8017403886247927808 35 35 1 -1491722659 1 8017403886247927808 +803 96 96 1 -2096425960 1 803 +8045070943673671680 68 68 1 435407142 1 8045070943673671680 +8048726769133592576 -30 -30 1 -406264741 1 8048726769133592576 +8059284960252731392 -57 -57 1 -251576563 1 8059284960252731392 +8069531888205086720 43 43 1 1978171687 1 8069531888205086720 +8071961599867387904 105 105 1 52667480 1 8071961599867387904 +8073733016154431488 52 52 1 1815882183 1 8073733016154431488 +8079573715140485120 -49 -49 1 503752931 1 8079573715140485120 +808 -5 -5 1 -1836166334 1 808 +8087737899452432384 -1 -1 1 -2137168636 1 8087737899452432384 +809 28 28 1 -682333536 1 809 +8091421389575282688 91 91 1 NULL 0 8091421389575282688 +8099215208813903872 -39 -39 1 492968645 1 8099215208813903872 +8100036735858401280 54 54 1 -146961490 1 8100036735858401280 +8109381965028548608 -121 -121 1 2022944702 1 8109381965028548608 +8111757081791733760 -79 -79 1 -234758376 1 8111757081791733760 +8113585123802529792 67 67 1 129675822 1 8113585123802529792 +8116738401948377088 89 89 1 1914993018 1 8116738401948377088 +812 71 71 1 -954480325 1 812 +8120593157178228736 -50 -50 1 -1379039356 1 8120593157178228736 +8129551357032259584 40 40 1 323817967 1 8129551357032259584 +8135164922674872320 51 51 1 -1459528251 1 8135164922674872320 +8142241016679735296 96 96 1 -163859725 1 8142241016679735296 +8143462899383345152 37 37 1 644934949 1 8143462899383345152 +8144552446127972352 -103 -103 1 2083836439 1 8144552446127972352 +8145745969573666816 -88 -88 1 467753905 1 8145745969573666816 +8145750910080745472 -6 -6 1 1275228381 1 8145750910080745472 +8146288732715196416 87 87 1 -728015067 1 8146288732715196416 +8146492373537660928 94 94 1 1316369941 1 8146492373537660928 +8148211378319933440 -8 -8 1 NULL 0 8148211378319933440 +815 74 74 1 1910930064 1 815 +8150115791664340992 -109 -109 1 793047956 1 8150115791664340992 +8156018594610790400 -49 -49 1 1384071499 1 8156018594610790400 +8156782979767238656 63 63 1 -1651993300 1 8156782979767238656 +8160569434550403072 -90 -90 1 -1808960215 1 8160569434550403072 +8160662610166194176 12 12 1 -310584775 1 8160662610166194176 +8163948965373386752 0 0 1 1968813171 1 8163948965373386752 +8168742078705262592 -50 -50 1 -303747347 1 8168742078705262592 +8169878743136043008 76 76 1 1765874562 1 8169878743136043008 +8171188598958407680 NULL NULL 1 1996235654 1 8171188598958407680 +8183233196086214656 57 57 1 1450881368 1 8183233196086214656 +8184799300477943808 -68 -68 1 -579916775 1 8184799300477943808 +8190539859890601984 12 12 1 1418228573 1 8190539859890601984 +8190967051000659968 42 42 1 604460005 1 8190967051000659968 +8192304692696383488 95 95 1 494570380 1 8192304692696383488 +8195103847607967744 58 58 1 15020431 1 8195103847607967744 +8199513544090730496 -50 -50 1 758926227 1 8199513544090730496 +820 125 21 2 337231116 2 820 +8201303040648052736 -52 -52 1 -774406989 1 8201303040648052736 +8201491077550874624 NULL NULL 1 1677197847 1 8201491077550874624 +8208354137450766336 -55 -55 1 1377144283 1 8208354137450766336 +8210813831744118784 -46 -46 1 139661585 1 8210813831744118784 +8213810702473183232 -83 -83 1 587797446 1 8213810702473183232 +8219326436390821888 -57 -57 1 2064448036 1 8219326436390821888 +8220104397160169472 -50 -50 1 -1274158260 1 8220104397160169472 +8221561626658881536 -29 -29 1 -1626062014 1 8221561626658881536 +8222714144797368320 -78 -78 1 -318380015 1 8222714144797368320 +8223732800007864320 -91 -91 1 -599396052 1 8223732800007864320 +823 96 96 1 1660088606 1 823 +8230371298967609344 57 57 1 1660278264 1 8230371298967609344 +8235179243092090880 -78 -78 1 187893585 1 8235179243092090880 +8244041599171862528 -111 -111 1 402173272 1 8244041599171862528 +8254763178969915392 -80 -80 1 658850444 1 8254763178969915392 +8268875586442256384 -104 -104 1 1271280812 1 8268875586442256384 +8269730157217062912 7 7 1 127051381 1 8269730157217062912 +8272001752345690112 -118 -118 1 3999930 1 8272001752345690112 +8279056098670198784 -115 -115 1 2133492883 1 8279056098670198784 +8282648443538710528 0 0 1 -402441123 1 8282648443538710528 +8283099811330506752 73 73 1 737149747 1 8283099811330506752 +8286706213485297664 3 3 1 -916495008 1 8286706213485297664 +8287522765741301760 45 45 1 -1817564067 1 8287522765741301760 +8290014929764040704 -124 -124 1 -1424027104 1 8290014929764040704 +8290944180915871744 20 20 1 684561551 1 8290944180915871744 +8294315622451740672 70 70 1 -43858652 1 8294315622451740672 +8295110846998233088 -107 -107 1 -1945738830 1 8295110846998233088 +83 11 11 1 -684022323 1 83 +8302473563519950848 69 69 1 -1524081566 1 8302473563519950848 +8316336224427483136 84 84 1 345556325 1 8316336224427483136 +8323460620425330688 -43 -43 1 -1524554771 1 8323460620425330688 +8325227661920133120 -61 -61 1 -178568841 1 8325227661920133120 +8332670681629106176 -65 -65 1 -314935936 1 8332670681629106176 +8333523087360901120 23 23 1 -442732016 1 8333523087360901120 +8337549596011102208 -127 -127 1 904604938 1 8337549596011102208 +8345435427356090368 -88 -88 1 323919214 1 8345435427356090368 +835 30 30 1 -1054609414 1 835 +8351163199364390912 -48 -48 1 391186487 1 8351163199364390912 +8362046808797306880 45 45 1 89366322 1 8362046808797306880 +8365058996333953024 62 62 1 -2043805661 1 8365058996333953024 +8367680396909404160 14 14 1 -1269216718 1 8367680396909404160 +8368012468775608320 -98 -98 1 -1665164127 1 8368012468775608320 +837 74 74 1 170870820 1 837 +8371939471056470016 -29 -29 1 826143442 1 8371939471056470016 +8372408423196270592 73 73 1 564349193 1 8372408423196270592 +8372588378498777088 62 62 1 1321678350 1 8372588378498777088 +8374321007870836736 46 46 1 -329336519 1 8374321007870836736 +8376440110255243264 -58 -58 1 1665724041 1 8376440110255243264 +8383159090746204160 NULL NULL 1 605141554 1 8383159090746204160 +8388363436324085760 -120 -120 1 -707108808 1 8388363436324085760 +8391407951622815744 107 107 1 NULL 0 8391407951622815744 +8391785334471589888 -72 -72 1 -630900418 1 8391785334471589888 +8396433451610652672 -7 -7 1 -180280420 1 8396433451610652672 +8398862954249560064 -48 -48 1 669871113 1 8398862954249560064 +8407869317250220032 -55 -55 1 -1240912824 1 8407869317250220032 +8410599906334097408 -6 -6 1 -1606567895 1 8410599906334097408 +8411494452500930560 13 13 1 -1568646283 1 8411494452500930560 +8415171956168417280 -111 -111 1 541118710 1 8415171956168417280 +8416121695917498368 93 93 1 63706286 1 8416121695917498368 +8417381121663746048 55 55 1 1458051497 1 8417381121663746048 +8419958579638157312 -114 -114 1 -99916247 1 8419958579638157312 +8424515140664360960 -111 -111 1 1847210729 1 8424515140664360960 +8435912708683087872 -52 -52 1 -2081809883 1 8435912708683087872 +845 NULL NULL 1 -1026746699 1 845 +8451612303224520704 -113 -113 1 -971203543 1 8451612303224520704 +8454154705460666368 12 12 1 -1421396891 1 8454154705460666368 +8455496814886002688 68 68 1 107680423 1 8455496814886002688 +8457906374051020800 -98 -98 1 106847364 1 8457906374051020800 +8461498293348065280 49 49 1 1636364987 1 8461498293348065280 +8463868417649524736 -81 -81 1 -1643714866 1 8463868417649524736 +8467976965865799680 22 22 1 916057807 1 8467976965865799680 +8470141334513098752 -8 -8 1 NULL 0 8470141334513098752 +8472429318602268672 NULL NULL 1 -308225568 1 8472429318602268672 +8473699639908261888 -86 -86 1 -591879497 1 8473699639908261888 +8487573502287478784 -8 -8 1 1895282160 1 8487573502287478784 +8489584373231919104 -22 -22 1 1416850873 1 8489584373231919104 +8489735221193138176 -89 -89 1 -1124028213 1 8489735221193138176 +85 -91 -91 1 -913906252 1 85 +8501910015960735744 19 19 1 1579460630 1 8501910015960735744 +8508401924853850112 108 108 1 -1578387726 1 8508401924853850112 +8509508263705477120 -103 -103 1 1107757211 1 8509508263705477120 +8514851182589771776 52 52 1 415234946 1 8514851182589771776 +8514979402185596928 -77 -77 1 1902676205 1 8514979402185596928 +8515682078777081856 98 98 1 -1026458834 1 8515682078777081856 +8518454006987948032 -78 -78 1 -379174037 1 8518454006987948032 +8519937082746634240 -3 -3 1 -1745449855 1 8519937082746634240 +8523972434954510336 -52 -52 1 2134433675 1 8523972434954510336 +8524940073536954368 52 52 1 476858779 1 8524940073536954368 +8525336514806317056 119 119 1 350802495 1 8525336514806317056 +8525894870444638208 13 13 1 1216287232 1 8525894870444638208 +8532016240026279936 -67 -67 1 -1726585032 1 8532016240026279936 +8536948829863198720 100 100 1 1723691683 1 8536948829863198720 +8540237852367446016 92 92 1 398960205 1 8540237852367446016 +8543177193114779648 51 51 1 2048533360 1 8543177193114779648 +8547243497773457408 42 42 1 -534991774 1 8547243497773457408 +8551446856960942080 72 72 1 -1312782341 1 8551446856960942080 +8553195689344991232 45 45 1 566646177 1 8553195689344991232 +8554899472487596032 -24 -24 1 -491882534 1 8554899472487596032 +8555933456197828608 29 29 1 NULL 0 8555933456197828608 +8555948987770511360 -54 -54 1 107941738 1 8555948987770511360 +8557218322962644992 42 42 1 -1210550573 1 8557218322962644992 +8558000156325707776 6 6 1 -370901197 1 8558000156325707776 +8560526613401714688 17 17 1 1592467112 1 8560526613401714688 +8569030475428511744 -55 -55 1 1743671220 1 8569030475428511744 +8570983266408103936 106 106 1 950545385 1 8570983266408103936 +8571268359622172672 119 119 1 1187495452 1 8571268359622172672 +8573305425181941760 115 115 1 1583280136 1 8573305425181941760 +8577096957495025664 125 125 1 NULL 0 8577096957495025664 +8579974641030365184 -97 -97 1 -1545388906 1 8579974641030365184 +8583916402383601664 56 56 1 -733239404 1 8583916402383601664 +8613562211893919744 98 98 1 -1109134719 1 8613562211893919744 +8625937019655200768 -104 -104 1 272086526 1 8625937019655200768 +8631515095562887168 -77 -77 1 -1244527286 1 8631515095562887168 +8637720762289659904 1 1 1 1669519977 1 8637720762289659904 +8639254009546055680 NULL NULL 1 477584560 1 8639254009546055680 +8641221723991433216 -46 -46 1 -1531040609 1 8641221723991433216 +8643198489997254656 94 94 1 -1079086534 1 8643198489997254656 +8644602243484803072 79 79 1 -1218592418 1 8644602243484803072 +8649296591032172544 -92 -92 1 -1744964279 1 8649296591032172544 +8652485812846567424 42 42 1 1372705672 1 8652485812846567424 +8656571350884048896 -19 -19 1 NULL 0 8656571350884048896 +8660248367767076864 -122 -122 1 1520375588 1 8660248367767076864 +8665969966920990720 -105 -105 1 1372982791 1 8665969966920990720 +8666178591503564800 -104 -104 1 -1565785026 1 8666178591503564800 +8677632093825916928 21 21 1 2040926345 1 8677632093825916928 +8677794924343164928 123 123 1 115470151 1 8677794924343164928 +868 NULL NULL 1 -2133145181 1 868 +8682955459667951616 96 96 1 2009215103 1 8682955459667951616 +8687042963221159936 -61 -61 1 -870624802 1 8687042963221159936 +8688483860094599168 -96 -96 1 -273937943 1 8688483860094599168 +8693036785094565888 41 41 1 2090496825 1 8693036785094565888 +8697823501349609472 -2 -2 1 922553769 1 8697823501349609472 +8698055291501543424 71 71 1 -1755088362 1 8698055291501543424 +8708232769657815040 -13 -13 1 6526476 1 8708232769657815040 +8708845895460577280 -34 -34 1 1860113703 1 8708845895460577280 +871 -31 -31 1 915505006 1 871 +8714829359200747520 -11 -11 1 672919099 1 8714829359200747520 +8716401555586727936 92 92 1 -789126455 1 8716401555586727936 +8720504651219001344 -93 -93 1 825677248 1 8720504651219001344 +8723248113030782976 -8 -8 1 144499388 1 8723248113030782976 +873 8 8 1 842283345 1 873 +8731960288562044928 15 15 1 869288953 1 8731960288562044928 +8734584858442498048 -71 -71 1 -946830673 1 8734584858442498048 +8736061027343859712 79 79 1 -1974972123 1 8736061027343859712 +874 NULL NULL 1 58313734 1 874 +8752150411997356032 -97 -97 1 -1502924486 1 8752150411997356032 +8759089349412847616 NULL NULL 1 1972940844 1 8759089349412847616 +8759184090543857664 -2 -2 1 435426302 1 8759184090543857664 +8760285623204290560 100 100 1 -573787626 1 8760285623204290560 +8761174805938331648 -114 -114 1 1205391962 1 8761174805938331648 +8769199243315814400 -123 -123 1 2100377172 1 8769199243315814400 +8773222500321361920 -74 -74 1 217823040 1 8773222500321361920 +8775009214012456960 113 113 1 -213198503 1 8775009214012456960 +8779073705407963136 -75 -75 1 -1979314577 1 8779073705407963136 +8779711700787298304 71 71 1 -859535015 1 8779711700787298304 +878 106 106 1 290601612 1 878 +8780196485890555904 48 48 1 -607285491 1 8780196485890555904 +8782900615468302336 88 88 1 -1411407810 1 8782900615468302336 +8783241818558193664 -102 -102 1 -714270951 1 8783241818558193664 +8785153741735616512 -107 -107 1 1028092807 1 8785153741735616512 +8792059919353348096 41 41 1 -745678338 1 8792059919353348096 +8793387410919038976 -73 -73 1 -1058166020 1 8793387410919038976 +8795069490394882048 6 6 1 1366402722 1 8795069490394882048 +8806507556248731648 89 89 1 1190554937 1 8806507556248731648 +8808467247666241536 59 59 1 -1706867123 1 8808467247666241536 +8811693967537774592 NULL NULL 1 1731764471 1 8811693967537774592 +8815398225009967104 103 103 1 -1701502632 1 8815398225009967104 +8817665768680906752 -82 -82 1 1550375386 1 8817665768680906752 +8822384228057604096 85 85 1 -1371840597 1 8822384228057604096 +8825059717746376704 75 75 1 872554087 1 8825059717746376704 +8829545979081744384 90 90 1 NULL 0 8829545979081744384 +883 62 62 1 -1554130090 1 883 +8836228556823977984 49 49 1 1499399891 1 8836228556823977984 +8837420822750314496 -23 -23 1 2052773366 1 8837420822750314496 +8849475396952514560 -28 -28 1 718692886 1 8849475396952514560 +8850055384477401088 21 21 1 1503176016 1 8850055384477401088 +8853989376829833216 82 82 1 -1505397109 1 8853989376829833216 +8854495099223375872 -49 -49 1 2065408093 1 8854495099223375872 +8854677881758162944 NULL NULL 1 1883400319 1 8854677881758162944 +8854715632851345408 49 49 1 1301997393 1 8854715632851345408 +8856674723376668672 NULL NULL 1 -4943292 1 8856674723376668672 +8868529429494071296 52 52 1 1830870769 1 8868529429494071296 +8871707618793996288 23 23 1 -677778959 1 8871707618793996288 +8875745082589929472 -50 -50 1 -1460613213 1 8875745082589929472 +888 -6 -6 1 1012696613 1 888 +8895174927321243648 -57 -57 1 -522450861 1 8895174927321243648 +8896237972875370496 -54 -54 1 1540680149 1 8896237972875370496 +8897901899039473664 39 39 1 -535056977 1 8897901899039473664 +8899122608190930944 124 124 1 -2146432765 1 8899122608190930944 +8900180888218329088 87 87 1 -1058356124 1 8900180888218329088 +8900351886974279680 -83 -83 1 1000106109 1 8900351886974279680 +8900545829211299840 -102 -102 1 352214248 1 8900545829211299840 +8905330479248064512 46 46 1 NULL 0 8905330479248064512 +8910706980937261056 118 118 1 1166237779 1 8910706980937261056 +8920344895701393408 81 81 1 -1126628450 1 8920344895701393408 +8920533610804609024 84 84 1 1739911574 1 8920533610804609024 +8927691194719174656 76 76 1 -917062754 1 8927691194719174656 +8928133990107881472 -70 -70 1 -1511162508 1 8928133990107881472 +8935252708196999168 97 97 1 1603612975 1 8935252708196999168 +8936639033158410240 -57 -57 1 -1305139473 1 8936639033158410240 +8939431770838810624 -108 -108 1 -934008333 1 8939431770838810624 +8945004737083555840 15 15 1 252169185 1 8945004737083555840 +8945302550165004288 -116 -116 1 1117805438 1 8945302550165004288 +8962097525980225536 NULL NULL 1 -329695030 1 8962097525980225536 +8972161729142095872 90 90 1 1709983738 1 8972161729142095872 +8979012655944220672 -16 -16 1 -120692484 1 8979012655944220672 +898 56 32 2 104527563 2 898 +8983857919580209152 16 16 1 1273798925 1 8983857919580209152 +8983912573761167360 -95 -95 1 NULL 0 8983912573761167360 +8984935029383389184 -96 -96 1 -1565671389 1 8984935029383389184 +8987827141270880256 -42 -42 1 -1024500955 1 8987827141270880256 +8991071342495531008 -59 -59 1 -574475259 1 8991071342495531008 +8991442360387584000 -10 -10 1 2081243058 1 8991442360387584000 +8994608999945125888 113 113 1 -839512271 1 8994608999945125888 +8995562121346260992 2 2 1 -618505946 1 8995562121346260992 +8996824426131390464 0 0 1 -214166042 1 8996824426131390464 +9000633029632499712 -35 -35 1 -641062448 1 9000633029632499712 +9001907486943993856 NULL NULL 1 -1974257754 1 9001907486943993856 +9005866015985713152 -98 -98 1 652118640 1 9005866015985713152 +9016280522993975296 -8 -8 1 388707554 1 9016280522993975296 +9020143715350814720 4 4 1 NULL 0 9020143715350814720 +9023663198045544448 0 0 1 1145627305 1 9023663198045544448 +9030480306789818368 -91 -91 1 -758973175 1 9030480306789818368 +9038087402564657152 74 74 1 NULL 0 9038087402564657152 +9040958359122640896 -48 -48 1 -1635301453 1 9040958359122640896 +9043089884440068096 33 33 1 -1527024213 1 9043089884440068096 +9048002942653710336 -15 -15 1 -1079231269 1 9048002942653710336 +9048297564833079296 7 7 1 -1534307678 1 9048297564833079296 +9050032047355125760 -52 -52 1 -1240048334 1 9050032047355125760 +9053187076403060736 73 73 1 1075444504 1 9053187076403060736 +9054887854393950208 75 75 1 -1517536924 1 9054887854393950208 +9062227900376203264 30 30 1 1260101584 1 9062227900376203264 +9064847977742032896 3 3 1 -1849091666 1 9064847977742032896 +9067985867711291392 126 126 1 43672187 1 9067985867711291392 +9073672806863790080 116 116 1 -2144241640 1 9073672806863790080 +9075404705968840704 -17 -17 1 712816880 1 9075404705968840704 +9078604269481148416 90 90 1 -298221893 1 9078604269481148416 +908 -73 -73 1 266601601 1 908 +9083076230151864320 126 126 1 2111462911 1 9083076230151864320 +9083704659251798016 57 57 1 -1359838019 1 9083704659251798016 +9084402694981533696 52 52 1 NULL 0 9084402694981533696 +9085381906890203136 71 71 1 -240529113 1 9085381906890203136 +9085434340468473856 -1 -1 1 76381404 1 9085434340468473856 +9086905513121890304 -126 -126 1 1796013407 1 9086905513121890304 +9089435102788009984 11 11 1 2102440065 1 9089435102788009984 +9091082386452684800 70 70 1 748185058 1 9091082386452684800 +9091085792947666944 64 64 1 254921167 1 9091085792947666944 +9094945190752903168 -19 -19 1 2126491387 1 9094945190752903168 +9096395849845194752 -122 -122 1 100270148 1 9096395849845194752 +91 -21 -21 1 -1288198020 1 91 +9104574294205636608 -20 -20 1 1257621270 1 9104574294205636608 +9107991000536498176 30 30 1 -847235873 1 9107991000536498176 +9112400579327483904 -65 -65 1 1111985530 1 9112400579327483904 +9114850402293882880 107 107 1 1571267481 1 9114850402293882880 +9116137265342169088 NULL NULL 1 -236700442 1 9116137265342169088 +9117063974299148288 42 42 1 -297664578 1 9117063974299148288 +9119046173224370176 -94 -94 1 1604076720 1 9119046173224370176 +9123116008004288512 NULL NULL 1 1882932986 1 9123116008004288512 +913 -62 -62 1 1845797092 1 913 +9131533983989358592 4 4 1 -1234163924 1 9131533983989358592 +9132009829414584320 107 107 1 -1856034030 1 9132009829414584320 +9136234417125007360 -71 -71 1 NULL 0 9136234417125007360 +9136548192574529536 44 44 1 1121512594 1 9136548192574529536 +9139805788041134080 -45 -45 1 881396599 1 9139805788041134080 +914 -91 -91 1 -1257859205 1 914 +9148071980848742400 -77 -77 1 1370723240 1 9148071980848742400 +9149216169284091904 -72 -72 1 -694520014 1 9149216169284091904 +9165199002069458944 -6 -6 1 430686478 1 9165199002069458944 +9169248521377374208 86 86 1 1566958573 1 9169248521377374208 +917 25 25 1 -2076460151 1 917 +9174894805640142848 -94 -94 1 1336842978 1 9174894805640142848 +918 -105 -105 1 1359437295 1 918 +9180098147855769600 111 111 1 1950882901 1 9180098147855769600 +9182828596851990528 -87 -87 1 -1012329052 1 9182828596851990528 +9185458640237641728 -6 -6 1 -1011125931 1 9185458640237641728 +9185952983951343616 -68 -68 1 889733679 1 9185952983951343616 +9188173682239275008 50 50 1 -1248781172 1 9188173682239275008 +919 120 120 1 -357680544 1 919 +9190466190353661952 14 14 1 1918230406 1 9190466190353661952 +9191943992860327936 22 22 1 -595769210 1 9191943992860327936 +9194388393453060096 -11 -11 1 1002519329 1 9194388393453060096 +9199741683232399360 -125 -125 1 -1096771844 1 9199741683232399360 +9207107990561972224 122 122 1 -765190882 1 9207107990561972224 +9207927479837319168 116 116 1 2066707767 1 9207927479837319168 +9209153648361848832 77 77 1 471464395 1 9209153648361848832 +921 92 92 1 1238986437 1 921 +9211455920344088576 54 54 1 166320811 1 9211455920344088576 +922 28 28 1 932774185 1 922 +923 -37 -37 1 -1506324615 1 923 +927 84 84 1 1044196568 1 927 +928 -9 -9 1 413090363 1 928 +939 -31 -31 1 -982238309 1 939 +94 87 87 1 NULL 0 94 +945 -43 -43 1 219415594 1 945 +947 -85 -85 1 -896274896 1 947 +950 37 45 2 -3606362766 2 950 +958 46 46 1 NULL 0 958 +961 -27 -27 1 1805139501 1 961 +965 125 125 1 1336951982 1 965 +967 -57 -57 1 -1240208945 1 967 +976 72 72 1 -1563676282 1 976 +979 123 123 1 1022214896 1 979 +982 -98 -98 1 -835198551 1 982 +987 NULL NULL 1 1807877618 1 987 +997 -14 -14 1 -742707249 1 997 +999 107 107 1 -346607939 1 999 +NULL 127 -1065 83 -9784926725 80 NULL diff --git ql/src/test/results/clientpositive/vector_groupby1.q.out ql/src/test/results/clientpositive/vector_groupby1.q.out new file mode 100644 index 0000000..5a0bdc9 --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby1.q.out @@ -0,0 +1,2022 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, count(*) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, count(*) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint) + outputColumnNames: _col0 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: count() + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: bigint) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: count(VALUE._col0) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, count(*) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, count(*) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 1 +-6919476845891313664 1 +-6920172215209426944 1 +-6921654334727036928 1 +-6933565857643814912 1 +-6934304742087655424 1 +-6935038507792801792 1 +-6935548339131138048 1 +-6938706403992854528 1 +-6941777546186579968 1 +-6947955278050181120 1 +-6951350560260784128 1 +-6957946688477274112 1 +-6960947572095770624 1 +-6962271229404348416 1 +-6962292590214234112 1 +-6968771079156654080 1 +-6968892545529896960 1 +-6970396058557005824 1 +-6974654664348033024 1 +-6975459232300236800 1 +-6986178228432322560 1 +-6988811476286873600 1 +-6988970700649168896 1 +-6992217501957169152 1 +-6997233584896229376 1 +-7000925438663041024 1 +-7003696402314215424 1 +-7011425384222244864 1 +-7017212700635545600 1 +-7020852530219171840 1 +-7030489936116252672 1 +-7035132060308643840 1 +-7036607470351654912 1 +-7037375807670501376 1 +-7037638331316469760 1 +-7038455462786334720 1 +-7040248820505149440 1 +-7041362811802148864 1 +-7042183597114081280 1 +-7046180371529351168 1 +-7049618574399692800 1 +-7052619594823221248 1 +-7055619148037554176 1 +-7055760785575665664 1 +-7057750467944931328 1 +-7058986555327307776 1 +-7063777488249085952 1 +-7078068944081002496 1 +-7079898537463537664 1 +-7081500255163727872 1 +-7083646746411720704 1 +-7085247548404178944 1 +-7093825013581979648 1 +-7094189393339678720 1 +-7094827141662539776 1 +-7104310188119834624 1 +-7106210529681350656 1 +-7109790267244814336 1 +-7115054815375073280 1 +-7120456708338688000 1 +-7127548949860818944 1 +-7138415011665043456 1 +-7139677575412686848 1 +-7140008543769042944 1 +-7144791190333546496 1 +-7145585429014888448 1 +-7147490721376591872 1 +-7152177800841502720 1 +-7155539549555105792 1 +-7158472098920390656 1 +-7159700138947862528 1 +-7161165959057334272 1 +-7162299524557471744 1 +-7172594404186693632 1 +-7185369278665605120 1 +-7192529627893858304 1 +-7194281951646187520 1 +-7195217207163166720 1 +-7198372044947275776 1 +-7199983995864711168 1 +-7201085131997011968 1 +-7209060152494817280 1 +-7213775605408178176 1 +-7220731681653604352 1 +-7221474017515347968 1 +-7228589258642194432 1 +-7240213957902663680 1 +-7242345057866285056 1 +-7245872320493322240 1 +-7246123871306244096 1 +-7255010240787030016 1 +-7255686273677328384 1 +-7262049693594943488 1 +-7262384251828518912 1 +-7262798781688651776 1 +-7263060340185194496 1 +-7265998318110711808 1 +-7266719102957125632 1 +-7270034223527993344 1 +-7273590251991162880 1 +-7273694358642851840 1 +-7276111129363046400 1 +-7287583262310350848 1 +-7292078334519894016 1 +-7296096276653391872 1 +-7303847963918393344 1 +-7319315187617587200 1 +-7326863346317598720 1 +-7328087811698909184 1 +-7329767178250018816 1 +-7329807949048193024 1 +-7330203470474985472 1 +-7330413050756235264 1 +-7333278178640953344 1 +-7333362172439035904 1 +-7340231535789727744 1 +-7344146703223496704 1 +-7344947507044466688 1 +-7345562788132315136 1 +-7356685674003021824 1 +-7357888618985873408 1 +-7362189611124563968 1 +-7366430883634929664 1 +-7378096180613840896 1 +-7380731416973295616 1 +-7395343938785738752 1 +-7395553021620731904 1 +-7399631791131074560 1 +-7404052043914526720 1 +-7404057145074712576 1 +-7409317158045442048 1 +-7409653086454030336 1 +-7412431471807283200 1 +-7413317118463164416 1 +-7419068456205385728 1 +-7420448501073051648 1 +-7425160895830573056 1 +-7429331808102899712 1 +-7433265617153343488 1 +-7442593976514420736 1 +-7444070205513138176 1 +-7451660755269853184 1 +-7453525026342617088 1 +-7455898404374921216 1 +-7456869587112255488 1 +-7461750143936897024 1 +-7464270453557993472 1 +-7469660864676585472 1 +-7470307155642245120 1 +-7476082621253402624 1 +-7483435388852559872 1 +-7488345684795342848 1 +-7488415863027367936 1 +-7494411162675691520 1 +-7496839341561954304 1 +-7497303453253402624 1 +-7500200359698907136 1 +-7501803640821456896 1 +-7506254246954500096 1 +-7507424948896415744 1 +-7507578199583694848 1 +-7510418793070075904 1 +-7511202710200885248 1 +-7511952204985049088 1 +-7512289590991544320 1 +-7512297136103800832 1 +-7515996202498473984 1 +-7524170566881329152 1 +-7526793959592140800 1 +-7528526815026692096 1 +-7532751268425261056 1 +-7535857766791577600 1 +-7535958203887706112 1 +-7536330682873937920 1 +-7540104552219860992 1 +-7541860097718902784 1 +-7542857121910046720 1 +-7547245548870025216 1 +-7547432761381339136 1 +-7551394356730339328 1 +-7557017910095650816 1 +-7558524160894427136 1 +-7571293705217687552 1 +-7571957778022178816 1 +-7572262898020278272 1 +-7572962089372991488 1 +-7576194692683563008 1 +-7593363318079610880 1 +-7594824008626372608 1 +-7598782894648565760 1 +-7600138468036386816 1 +-7603467428164009984 1 +-7603569103205916672 1 +-7610137349734883328 1 +-7611584069753552896 1 +-7612455481940246528 1 +-7612466483992051712 1 +-7616522969329262592 1 +-7617860842651017216 1 +-7623047151287754752 1 +-7623359796281999360 1 +-7623405558242500608 1 +-7624057992767782912 1 +-7629401308029976576 1 +-7637494527844343808 1 +-7637755520917741568 1 +-7642381493746483200 1 +-7647020450676146176 1 +-7661192563533062144 1 +-7661250850555633664 1 +-7663293054873812992 1 +-7665186441284968448 1 +-7668388017287020544 1 +-7669169138124275712 1 +-7673901622181953536 1 +-7679894005808693248 1 +-7686220526274502656 1 +-7687052294777208832 1 +-7692192232238678016 1 +-7695491171376291840 1 +-7700203302632210432 1 +-7703540456272994304 1 +-7707242953271500800 1 +-7707867749256445952 1 +-7708932208121225216 1 +-7709958788604936192 1 +-7712425776235274240 1 +-7720966287634112512 1 +-7739424919198187520 1 +-7744462446680375296 1 +-7751265769984491520 1 +-7751427073017544704 1 +-7753051494275432448 1 +-7759238919361888256 1 +-7759425383684849664 1 +-7772064021830574080 1 +-7773957003968675840 1 +-7777884099756122112 1 +-7778829032042790912 1 +-7779270198785875968 1 +-7782344916178796544 1 +-7784419454650843136 1 +-7792903881635938304 1 +-7793447076762345472 1 +-7797149520019062784 1 +-7797151404935618560 1 +-7800879252150779904 1 +-7802538500225777664 1 +-7804116532814151680 1 +-7805985795815342080 1 +-7811060170911375360 1 +-7818454479651135488 1 +-7819437864839495680 1 +-7822452149325094912 1 +-7824788571789279232 1 +-7827420207675105280 1 +-7831320202242228224 1 +-7831595638727565312 1 +-7833618000492109824 1 +-7835907977757245440 1 +-7838598833900584960 1 +-7840338174858199040 1 +-7845896959112658944 1 +-7848043121524228096 1 +-7849504559236210688 1 +-7858505678035951616 1 +-7866079955473989632 1 +-7867219225874571264 1 +-7868306678534193152 1 +-7873753603299540992 1 +-7875953567586451456 1 +-7877598807023386624 1 +-7878145001776152576 1 +-7879864376629567488 1 +-7881262505761710080 1 +-7881351200983613440 1 +-7883252982752665600 1 +-7884460946615984128 1 +-7888051992910274560 1 +-7892780594910871552 1 +-7893577088764174336 1 +-7894382303337832448 1 +-7895991410072928256 1 +-7902517224300036096 1 +-7903158849011843072 1 +-7904188195431661568 1 +-7907355742053883904 1 +-7910019233726242816 1 +-7911421221625077760 1 +-7915999634274369536 1 +-7916510129632296960 1 +-7928062266382778368 1 +-7928440849566146560 1 +-7939634346485858304 1 +-7949309059286163456 1 +-7949445503604604928 1 +-7953426740065312768 1 +-7964801953178091520 1 +-7966960765508280320 1 +-7978782649203228672 1 +-7989766326847807488 1 +-7998947380180819968 1 +-8007017894942638080 1 +-8013397854633648128 1 +-8016589197379289088 1 +-8017791189288869888 1 +-8018511948141748224 1 +-8021859935185928192 1 +-8022573309127000064 1 +-8023708819947323392 1 +-8028275725610909696 1 +-8028910243475038208 1 +-8030058711611629568 1 +-8034414142083170304 1 +-8046189486447017984 1 +-8046238369820344320 1 +-8047774491688255488 1 +-8051395538179063808 1 +-8051587217208967168 1 +-8051871680800120832 1 +-8054581198284668928 1 +-8067243114610532352 1 +-8070535484085895168 1 +-8076479329071955968 1 +-8082793390939193344 1 +-8084716955963252736 1 +-8086577583338061824 1 +-8088337436168830976 1 +-8099313480512716800 1 +-8103788088118018048 1 +-8104684579106914304 1 +-8108693586698706944 1 +-8115963579415650304 1 +-8117838333114212352 1 +-8122639684164501504 1 +-8127494999848919040 1 +-8131997716860526592 1 +-8136227554401107968 1 +-8140349174954893312 1 +-8142667274351345664 1 +-8147405381260345344 1 +-8158011642485825536 1 +-8161047750470279168 1 +-8172827216441573376 1 +-8182421179156905984 1 +-8191825921746305024 1 +-8194062064124362752 1 +-8203008052020879360 1 +-8203075743525806080 1 +-8205148279289085952 1 +-8214462866994339840 1 +-8219876839318716416 1 +-8232763638546694144 1 +-8240034910581153792 1 +-8240684139569233920 1 +-8243487285852766208 1 +-8244116388227104768 1 +-8244657976255889408 1 +-8260340354454503424 1 +-8269917980278980608 1 +-8270479187688816640 1 +-8275337702906757120 1 +-8280276629934981120 1 +-8293833565967810560 1 +-8297230235506343936 1 +-8300526097982226432 1 +-8300764106868350976 1 +-8302817097848307712 1 +-8317591428117274624 1 +-8318886086186213376 1 +-8322751250650218496 1 +-8330233444291084288 1 +-8335810316927213568 1 +-8340523561480437760 1 +-8345065519816695808 1 +-8347088645602050048 1 +-8357136656913686528 1 +-8358130693961195520 1 +-8359839265974165504 1 +-8368269352975982592 1 +-8368487814665895936 1 +-8369487968903897088 1 +-8379109122834997248 1 +-8379964450833367040 1 +-8384695077413412864 1 +-8387347109404286976 1 +-8387536830476820480 1 +-8395998375405912064 1 +-8400045653258444800 1 +-8411282676082565120 1 +-8418913260807217152 1 +-8425998949410889728 1 +-8426531414463545344 1 +-8430283518005846016 1 +-8430370933326536704 1 +-8431492599012163584 1 +-8438554249514491904 1 +-8445801063348281344 1 +-8453491903284994048 1 +-8454143651040444416 1 +-8465978403747037184 1 +-8469607298426437632 1 +-8471480409335513088 1 +-8485389240529354752 1 +-8488247955875618816 1 +-8490382417169408000 1 +-8494118409594650624 1 +-8503342882470019072 1 +-8503573595507761152 1 +-8507279516485566464 1 +-8509547439040757760 1 +-8518060755719585792 1 +-8518258741831680000 1 +-8521578237232529408 1 +-8522878384019169280 1 +-8523434203900674048 1 +-8525212657458348032 1 +-8535957064499879936 1 +-8536369662934401024 1 +-8543982423727128576 1 +-8544299740525461504 1 +-8545239748068941824 1 +-8546758906409312256 1 +-8552393882631389184 1 +-8555709701170552832 1 +-8559008501282832384 1 +-8559252110266564608 1 +-8562524688907485184 1 +-8566856504746352640 1 +-8566940231897874432 1 +-8570933074545745920 1 +-8572823448513445888 1 +-8572949572756774912 1 +-8581765103969312768 1 +-8581979259158929408 1 +-8584520406368493568 1 +-8585134536083660800 1 +-8585966098173870080 1 +-8593419958317056000 1 +-8603817012434198528 1 +-8604758220106014720 1 +-8607195685207408640 1 +-8615168537390571520 1 +-8619303037130301440 1 +-8623238306523824128 1 +-8623965248051789824 1 +-8632237187473088512 1 +-8649711322250362880 1 +-8651641150831362048 1 +-8654433008222797824 1 +-8654797319350927360 1 +-8658387566611996672 1 +-8659643752269242368 1 +-8659692318743314432 1 +-8660149447361404928 1 +-8664374244449050624 1 +-8664806103426252800 1 +-8665218198816497664 1 +-8665764757143658496 1 +-8675661101615489024 1 +-8675892979328212992 1 +-8683802826440105984 1 +-8688153842294595584 1 +-8689606130068611072 1 +-8694818694700048384 1 +-8696162322976997376 1 +-8703026916864802816 1 +-8704234107608203264 1 +-8705403811649355776 1 +-8710298418608619520 1 +-8714995808835444736 1 +-8719510423723155456 1 +-8730803262481580032 1 +-8731068123910987776 1 +-8746702976270385152 1 +-8754966081778565120 1 +-8754992450211692544 1 +-8756989568739835904 1 +-8760655406971863040 1 +-8763062627136864256 1 +-8768744394742235136 1 +-8782213262837530624 1 +-8783777723063099392 1 +-8789178184387641344 1 +-8797972842900307968 1 +-8807361476639629312 1 +-8813211231120031744 1 +-8831091081349758976 1 +-8832750849949892608 1 +-8833019327569510400 1 +-8835408234247168000 1 +-8836899523028312064 1 +-8843859708698583040 1 +-8844949406948671488 1 +-8845239510002753536 1 +-8852770376039219200 1 +-8853553406533894144 1 +-8856151919723003904 1 +-8856821118526734336 1 +-8857335871148171264 1 +-8858063395050110976 1 +-8859107121649893376 1 +-8866442231663067136 1 +-8870186814744420352 1 +-8870673219965001728 1 +-8875546987176206336 1 +-8877053610728161280 1 +-8877431933441327104 1 +-8879742387365429248 1 +-8881446757271846912 1 +-8887058200926093312 1 +-8892963883085578240 1 +-8896045754034978816 1 +-8914039133569400832 1 +-8916987977485312000 1 +-8922409715403112448 1 +-8923529803981905920 1 +-8927968289860370432 1 +-8930307926221807616 1 +-8938849835283677184 1 +-8940944155843461120 1 +-8941201923743703040 1 +-8946656952763777024 1 +-8948335470186373120 1 +-8959796625322680320 1 +-8961059046745669632 1 +-8962547695651323904 1 +-8965578088652095488 1 +-8989473881707921408 1 +-8990843030306717696 1 +-8992599250893979648 1 +-8996954350906294272 1 +-9002912355472736256 1 +-9004892183139811328 1 +-9008631121684832256 1 +-9012093603044245504 1 +-9013952631912325120 1 +-9014145341570203648 1 +-9022154842129547264 1 +-9032650742739836928 1 +-9049720998034137088 1 +-9051477157204770816 1 +-9058029636530003968 1 +-9066993118333706240 1 +-9071565764086521856 1 +-9075302542655684608 1 +-9075486079396069376 1 +-9078662294976061440 1 +-9079801920509001728 1 +-9080568167841226752 1 +-9080956291212132352 1 +-9084940280061485056 1 +-9088239683374350336 1 +-9091113592821972992 1 +-9095689235523264512 1 +-9101953184875757568 1 +-9102482277760983040 1 +-9105358806324035584 1 +-9105701280936501248 1 +-9109392978217484288 1 +-9117959922369060864 1 +-9126793997498957824 1 +-9136398397785948160 1 +-9142610685888192512 1 +-9145593811310010368 1 +-9148197394287779840 1 +-9149719074367946752 1 +-9157613004431998976 1 +-9175038118837149696 1 +-9175279464813223936 1 +-9178166810751909888 1 +-9187662685618348032 1 +-9189155542884474880 1 +-9203804401302323200 1 +-9203942396257984512 1 +-9206329156028112896 1 +-9210275791460499456 1 +-9213132862973829120 1 +-9215144824304721920 1 +-9218875542187065344 1 +-9219066990552760320 1 +1021 1 +1030 1 +1032 1 +1039 1 +1046 1 +1048 1 +1053 1 +1055 1 +1058 1 +1065 1 +1066 1 +1074 1 +1075 3 +108 1 +1086 1 +1093 1 +1094 1 +1095 1 +1099 1 +1115 1 +112 1 +1127 1 +1128 1 +1132 1 +1134 1 +1141 1 +1142 1 +1145 1 +1153 1 +1157 1 +1158 1 +1165 2 +1168 1 +1177 1 +1187 1 +1189 1 +1198 1 +120 1 +1201 1 +1217 1 +1234 1 +1243 1 +1247 1 +1252 1 +1261 1 +1270 1 +1280 1 +1282 1 +1286 1 +1287 1 +1290 1 +1291 1 +1299 1 +130 1 +1307 1 +1312 1 +1316 1 +1321 1 +1337 1 +1341 1 +1342 1 +1343 1 +1345 1 +1346 1 +135 1 +1366 1 +1368 2 +1371 2 +138 1 +1386 1 +1398 1 +1409 1 +1422 1 +1423 1 +1436 1 +1439 1 +1447 1 +1450 1 +1454 1 +1458 1 +1462 1 +1466 1 +1470 1 +1477 1 +1481 2 +1489 1 +1493 1 +1495 1 +1501 1 +1506 1 +1508 1 +1509 2 +1518 1 +1520 1 +1521 1 +1524 1 +1530 1 +1537 2 +154 2 +1541 1 +1542 1 +1545 1 +1556 1 +1559 1 +1561 1 +1566 1 +1604 1 +1606 1 +1608 1 +1613 1 +1614 1 +1620 1 +1638 1 +1641 1 +1643 1 +1648 1 +1651 1 +1667 1 +1671 1 +1674 1 +1676 1 +1678 1 +168 1 +1681 1 +169 1 +1693 1 +1701 2 +1704 1 +1719 2 +1726 1 +1728 1 +1745 1 +1751 1 +1752 1 +1769 1 +1774 1 +1775 1 +1777 2 +1780 1 +1781 1 +1785 1 +1786 1 +1788 1 +1789 1 +1791 1 +1796 1 +1806 1 +181 1 +1811 1 +1813 1 +1826 1 +1827 1 +1835 1 +1837 1 +1845 1 +1846 1 +1856 2 +1862 1 +1863 1 +1864 1 +1866 1 +187 1 +1870 1 +188 1 +1880 1 +1890 1 +1892 1 +1899 1 +19 2 +1906 1 +1910 1 +1914 2 +1926 1 +1937 1 +1940 1 +1941 1 +1948 3 +1955 1 +1965 1 +1972 1 +1981 1 +1983 1 +1987 1 +1990 1 +1995 1 +1999 1 +2001 1 +2002 1 +2004 1 +2009 1 +2011 1 +2013 1 +2016 1 +2017 1 +2020 2 +2025 1 +2026 1 +2029 1 +203 1 +204 1 +2046 1 +2056 1 +2067 1 +2072 1 +2073 1 +2085 1 +2089 1 +2092 1 +2105 1 +2106 1 +2108 1 +213 2 +2131 1 +2138 1 +2140 1 +2144 1 +2155 1 +2177 1 +2179 1 +2180 1 +2183 1 +2186 1 +2187 1 +2189 1 +2193 2 +2194 1 +22 1 +2201 1 +2205 1 +2214 1 +2217 1 +2218 1 +2223 1 +2227 1 +2229 1 +2232 1 +2241 1 +2244 1 +2255 1 +2262 1 +2264 1 +2270 1 +2274 1 +2277 1 +2279 1 +228 1 +2283 1 +2285 2 +2295 1 +2306 1 +2320 1 +2323 1 +2325 2 +2335 1 +2341 1 +2348 1 +2358 1 +236 1 +2373 1 +238 1 +2386 1 +2393 2 +2398 1 +2400 1 +2410 1 +2412 2 +2420 1 +2426 1 +2434 1 +244 1 +2461 1 +2463 3 +2465 1 +2469 1 +2475 1 +2476 1 +2485 2 +2487 1 +2492 1 +2494 1 +2502 1 +2506 1 +2509 1 +2512 1 +2514 1 +2515 1 +2517 1 +2524 1 +2533 1 +2539 1 +2540 1 +255 1 +2551 1 +2553 1 +2560 2 +2563 1 +2565 1 +2569 1 +2579 1 +2580 1 +2587 1 +259 1 +2599 1 +2607 1 +2608 1 +2619 2 +2625 1 +2626 1 +263 2 +2637 1 +2647 1 +2649 1 +2662 1 +2663 1 +2675 1 +268 2 +2680 1 +2682 1 +2688 1 +2689 1 +2692 1 +2700 1 +2712 1 +2714 1 +2715 2 +2719 1 +2724 1 +2725 1 +2735 1 +2745 1 +275 1 +2752 1 +2762 1 +2772 1 +2776 1 +2786 2 +279 1 +2790 1 +2791 1 +2803 3 +2805 1 +281 1 +2810 1 +2811 1 +2816 1 +2821 1 +2824 1 +2835 1 +2842 1 +2843 2 +2846 1 +2847 1 +2848 1 +2850 1 +2855 2 +2862 1 +2878 1 +2886 1 +289 1 +2897 2 +2900 1 +2903 1 +2905 1 +2911 1 +2915 1 +2919 1 +2933 2 +2938 1 +294 1 +2941 1 +2942 1 +296 2 +2962 1 +2968 2 +2971 1 +2977 1 +2979 1 +2984 1 +2986 1 +2988 1 +2991 1 +3002 1 +3006 1 +301 1 +302 1 +3021 2 +3024 1 +3029 1 +3031 1 +3036 1 +3043 1 +3054 1 +3055 1 +3058 1 +3059 1 +3060 2 +3067 1 +3071 1 +3073 1 +3079 2 +3083 1 +3084 1 +3089 1 +3094 1 +3103 1 +311 1 +3111 1 +3118 1 +3119 1 +3144 1 +3147 1 +3159 2 +3163 1 +3174 1 +3183 1 +3190 1 +3197 1 +3199 1 +320 1 +3203 1 +3206 1 +3208 1 +3212 1 +3213 1 +3231 1 +3232 1 +3235 1 +3244 1 +3245 1 +3248 1 +3249 1 +3253 1 +3255 1 +3263 1 +3286 1 +3300 1 +3307 1 +3322 1 +3333 1 +3352 1 +336 1 +3365 1 +3366 1 +3397 1 +34 1 +3401 1 +3407 1 +3409 1 +341 1 +3418 2 +342 1 +3421 1 +3430 1 +3443 1 +3446 1 +345 1 +3456 1 +346 2 +3460 1 +3462 3 +3467 2 +347 1 +3472 1 +3478 1 +3493 1 +350 1 +3507 1 +3510 1 +3512 1 +3533 1 +3534 1 +3541 1 +3542 1 +355 1 +3554 1 +3555 2 +3563 1 +3566 1 +3567 1 +3568 1 +3579 1 +3588 2 +3599 1 +3606 1 +3608 1 +3609 1 +361 1 +3613 1 +3622 2 +3625 1 +3630 1 +3637 1 +364 1 +3648 1 +3663 1 +3664 1 +367 1 +3672 1 +3673 1 +3677 1 +3680 1 +3682 1 +3690 1 +3691 1 +3701 1 +3702 1 +3703 1 +3707 1 +3722 1 +3724 1 +3725 2 +3728 2 +3739 1 +3747 1 +3749 1 +375 1 +3755 1 +3763 1 +3764 1 +3769 1 +3770 2 +378 1 +3781 2 +3789 1 +379 1 +3810 1 +3812 1 +3823 1 +3824 1 +383 2 +3830 1 +3835 1 +3841 1 +3848 1 +3858 1 +3860 1 +3866 2 +3874 1 +3879 1 +388 1 +3887 1 +3901 1 +3904 1 +3907 1 +391 1 +3910 1 +3911 1 +3913 1 +392 1 +3932 1 +3940 1 +3941 1 +3945 1 +3946 1 +3949 1 +3958 1 +3960 1 +3961 1 +3962 1 +3965 1 +3974 2 +3980 1 +3990 1 +4018 1 +4020 1 +4024 1 +4030 1 +4037 1 +4051 1 +4054 1 +4056 1 +4075 1 +4078 1 +4088 1 +41 1 +412 2 +417 1 +425 1 +443 1 +454 1 +455 1 +462 1 +470 1 +471 1 +481 1 +482 1 +485 1 +489 1 +49 1 +490 1 +491 1 +5 1 +500 1 +501 2 +504 1 +522 1 +523 1 +524 1 +530 1 +535 1 +579 1 +583 1 +584 1 +586 1 +587 1 +590 1 +597 1 +601 1 +612 1 +615 1 +618 1 +65 1 +650 1 +658 1 +66 1 +661 2 +663 1 +664 1 +677 1 +68 1 +681 1 +687 1 +688 1 +690 1 +691 1 +6923604860394528768 1 +6924820982050758656 1 +6926925215281774592 1 +6927260280037097472 1 +6928080429732536320 1 +6933001829416034304 1 +6933451028794925056 1 +6933731240564056064 1 +6934570741217755136 1 +694 1 +6947488599548215296 1 +695 1 +6960137166475911168 1 +6962726713896484864 1 +6963217546192322560 1 +6964585306125008896 1 +6967631925774639104 1 +6969599299897163776 1 +6974475559697768448 1 +6982145326341423104 1 +6987889924212203520 1 +6991316084916879360 1 +6996686091335884800 1 +7006803044329021440 1 +7013693841855774720 1 +7014537632150224896 1 +7017956982081404928 1 +7022349041913978880 1 +7027529814236192768 1 +7031339012080549888 1 +7039820685967343616 1 +7045967493826387968 1 +7049773031131283456 1 +7052226236896256000 1 +7054271419461812224 1 +7054938591408996352 1 +7060236714847412224 1 +7061498706968428544 1 +7061809776248545280 1 +7062382339142156288 1 +7062605127422894080 1 +7065344324692443136 1 +7068517339681259520 1 +7069729473166090240 1 +707 1 +7077311975029555200 1 +7078641038157643776 1 +7080269176324218880 1 +7084659344078970880 1 +7086206629592252416 1 +7091300332052062208 1 +7099005292698550272 1 +71 1 +7107604675626008576 1 +7125231541858205696 1 +7128222874437238784 1 +7130159794259353600 1 +7130306447560826880 1 +7149417430082027520 1 +7153922334283776000 1 +7157247449513484288 1 +7164349895861829632 1 +7165364563962191872 1 +7166263463731421184 1 +7175638927948562432 1 +7186401810812059648 1 +7195454019231834112 1 +7198687580227043328 1 +7199539820886958080 1 +7204802700490858496 1 +7210160489915236352 1 +7212016545671348224 1 +7212090742612467712 1 +7217123582035116032 1 +7220131672176058368 1 +7220581538170413056 1 +7223569671814987776 1 +7226360892091416576 1 +7229607057201127424 1 +723 1 +7231399302953377792 1 +7232273749940838400 1 +7235109456886816768 1 +7237310132329488384 1 +7238339720750948352 1 +724 1 +7242751359672631296 1 +7249443195032985600 1 +7250237407877382144 1 +7254710367022645248 1 +7255302164215013376 1 +7259955893466931200 1 +7260908278294560768 1 +7265141874315517952 1 +7266437490436341760 1 +7271786885641666560 1 +7271887863395459072 1 +7274777328897802240 1 +7291432593139507200 1 +7295502697317097472 1 +7295926343524163584 1 +7296164580491075584 1 +7299197687217856512 1 +73 1 +7304839835188609024 1 +7308289763456000000 1 +7309156463509061632 1 +7310869618402910208 1 +7319711402123149312 1 +7333512171174223872 1 +7339426767877390336 1 +7343171468838567936 1 +7344029858387820544 1 +7345991518378442752 1 +7347732772348870656 1 +7348598907182800896 1 +735 1 +7354813692542304256 1 +7359004378440146944 1 +736 1 +7368920486374989824 1 +7370078518278397952 1 +7370803940448305152 1 +7375521127126089728 1 +7376467688511455232 1 +7378993334503694336 1 +738 1 +7381659098423926784 1 +7384150968511315968 1 +7386087924003676160 1 +7391208370547269632 1 +7393308503950548992 1 +7394967727502467072 1 +7401968422230032384 1 +7410096605330227200 1 +7410872053689794560 1 +7411793502161182720 1 +7412924364686458880 1 +7414865343000322048 1 +7418271723644403712 1 +743 1 +7432428551399669760 1 +7432998950057975808 1 +7436133434239229952 1 +7440265908266827776 1 +7450416810848313344 1 +7452756603516190720 1 +7454442625055145984 1 +7454632396542074880 1 +7461153404961128448 1 +7471208109437304832 1 +7473537548003352576 1 +7486884806277611520 1 +7487338208419823616 1 +7487538600082554880 1 +7490717730239250432 1 +7491898395977523200 1 +7492436934952574976 1 +7497276415392407552 1 +7497306924248834048 1 +7500716020874674176 1 +7514552840617558016 1 +7517159036469575680 1 +7524958388842078208 1 +7528074274555305984 1 +7528211148397944832 1 +7534042483076857856 1 +7534145866886782976 1 +7534549597202194432 1 +7545689659010949120 1 +7548958830580563968 1 +7549858023389003776 1 +7555301305375858688 1 +7566273236152721408 1 +7569249672628789248 1 +7570474972934488064 1 +7573530789362262016 1 +7575087487730196480 1 +7581052107944361984 1 +7581614118458335232 1 +7584007864107778048 1 +7592440105065308160 1 +7593521922173419520 1 +7596563216912211968 1 +7599019810193211392 1 +7608447395949109248 1 +7614435638888210432 1 +7620183559667081216 1 +7621013099259527168 1 +7625728883085025280 1 +7626715182847090688 1 +763 1 +7637152193832886272 1 +7647481735646363648 1 +7648729477297987584 1 +7652123583449161728 1 +7659279803863146496 1 +7662037650719850496 1 +7675009476762918912 1 +7678790769408172032 1 +7682327310082531328 1 +7686992843032010752 1 +7689489436826804224 1 +7690986322714066944 1 +7691062622443044864 1 +7696737688942567424 1 +7697541332524376064 1 +7700734109530767360 1 +7701723309715685376 1 +7705445437881278464 1 +7710447533880614912 1 +7718825401976684544 1 +7720187583697502208 1 +7731443941834678272 1 +7735566678126616576 1 +774 1 +7741854854673367040 1 +7746402369011277824 1 +7747874976739016704 1 +7748799008146366464 1 +7752740515534422016 1 +7753359568986636288 1 +7753882935005880320 1 +7761834341179375616 1 +7762823913046556672 1 +7765456790394871808 1 +7768984605670604800 1 +7775034125776363520 1 +7778936842502275072 1 +7779486624537370624 1 +7779735136559579136 1 +7782245855193874432 1 +7784169796350730240 1 +7784489776013295616 1 +779 1 +7790728456522784768 1 +7792036342592348160 1 +7794244032613703680 1 +78 1 +780 1 +7800332581637259264 1 +7801697837312884736 1 +7818464507324121088 1 +782 1 +7823874904139849728 1 +784 1 +7843804446688264192 1 +7844258063629852672 1 +7845953007588401152 1 +7857878068300898304 1 +7868367829080506368 1 +7870277756614623232 1 +7871189141676998656 1 +7871554728617025536 1 +7874764415950176256 1 +7885697257930588160 1 +7888238729321496576 1 +789 1 +7892026679115554816 1 +7892281003266408448 1 +7898670840507031552 1 +7909645665163804672 1 +7917494645725765632 1 +7919597361814577152 1 +7921639119138070528 1 +7922443154272395264 1 +7926898770090491904 1 +7933040277013962752 1 +7936149988210212864 1 +7944741547145502720 1 +7947544013461512192 1 +7948803266578161664 1 +7955126053367119872 1 +7961515985722605568 1 +7961909238130270208 1 +797 1 +7983789401706094592 1 +7989119273552158720 1 +7989160253372817408 1 +7997694023324975104 1 +7998357471114969088 1 +7998687089080467456 1 +80 1 +8000440057238052864 1 +8002769767000145920 1 +8004633750273925120 1 +8011181697250631680 1 +8011602724663336960 1 +8014986215157530624 1 +8017403886247927808 1 +803 1 +8045070943673671680 1 +8048726769133592576 1 +8059284960252731392 1 +8069531888205086720 1 +8071961599867387904 1 +8073733016154431488 1 +8079573715140485120 1 +808 1 +8087737899452432384 1 +809 1 +8091421389575282688 1 +8099215208813903872 1 +8100036735858401280 1 +8109381965028548608 1 +8111757081791733760 1 +8113585123802529792 1 +8116738401948377088 1 +812 1 +8120593157178228736 1 +8129551357032259584 1 +8135164922674872320 1 +8142241016679735296 1 +8143462899383345152 1 +8144552446127972352 1 +8145745969573666816 1 +8145750910080745472 1 +8146288732715196416 1 +8146492373537660928 1 +8148211378319933440 1 +815 1 +8150115791664340992 1 +8156018594610790400 1 +8156782979767238656 1 +8160569434550403072 1 +8160662610166194176 1 +8163948965373386752 1 +8168742078705262592 1 +8169878743136043008 1 +8171188598958407680 1 +8183233196086214656 1 +8184799300477943808 1 +8190539859890601984 1 +8190967051000659968 1 +8192304692696383488 1 +8195103847607967744 1 +8199513544090730496 1 +820 2 +8201303040648052736 1 +8201491077550874624 1 +8208354137450766336 1 +8210813831744118784 1 +8213810702473183232 1 +8219326436390821888 1 +8220104397160169472 1 +8221561626658881536 1 +8222714144797368320 1 +8223732800007864320 1 +823 1 +8230371298967609344 1 +8235179243092090880 1 +8244041599171862528 1 +8254763178969915392 1 +8268875586442256384 1 +8269730157217062912 1 +8272001752345690112 1 +8279056098670198784 1 +8282648443538710528 1 +8283099811330506752 1 +8286706213485297664 1 +8287522765741301760 1 +8290014929764040704 1 +8290944180915871744 1 +8294315622451740672 1 +8295110846998233088 1 +83 1 +8302473563519950848 1 +8316336224427483136 1 +8323460620425330688 1 +8325227661920133120 1 +8332670681629106176 1 +8333523087360901120 1 +8337549596011102208 1 +8345435427356090368 1 +835 1 +8351163199364390912 1 +8362046808797306880 1 +8365058996333953024 1 +8367680396909404160 1 +8368012468775608320 1 +837 1 +8371939471056470016 1 +8372408423196270592 1 +8372588378498777088 1 +8374321007870836736 1 +8376440110255243264 1 +8383159090746204160 1 +8388363436324085760 1 +8391407951622815744 1 +8391785334471589888 1 +8396433451610652672 1 +8398862954249560064 1 +8407869317250220032 1 +8410599906334097408 1 +8411494452500930560 1 +8415171956168417280 1 +8416121695917498368 1 +8417381121663746048 1 +8419958579638157312 1 +8424515140664360960 1 +8435912708683087872 1 +845 1 +8451612303224520704 1 +8454154705460666368 1 +8455496814886002688 1 +8457906374051020800 1 +8461498293348065280 1 +8463868417649524736 1 +8467976965865799680 1 +8470141334513098752 1 +8472429318602268672 1 +8473699639908261888 1 +8487573502287478784 1 +8489584373231919104 1 +8489735221193138176 1 +85 1 +8501910015960735744 1 +8508401924853850112 1 +8509508263705477120 1 +8514851182589771776 1 +8514979402185596928 1 +8515682078777081856 1 +8518454006987948032 1 +8519937082746634240 1 +8523972434954510336 1 +8524940073536954368 1 +8525336514806317056 1 +8525894870444638208 1 +8532016240026279936 1 +8536948829863198720 1 +8540237852367446016 1 +8543177193114779648 1 +8547243497773457408 1 +8551446856960942080 1 +8553195689344991232 1 +8554899472487596032 1 +8555933456197828608 1 +8555948987770511360 1 +8557218322962644992 1 +8558000156325707776 1 +8560526613401714688 1 +8569030475428511744 1 +8570983266408103936 1 +8571268359622172672 1 +8573305425181941760 1 +8577096957495025664 1 +8579974641030365184 1 +8583916402383601664 1 +8613562211893919744 1 +8625937019655200768 1 +8631515095562887168 1 +8637720762289659904 1 +8639254009546055680 1 +8641221723991433216 1 +8643198489997254656 1 +8644602243484803072 1 +8649296591032172544 1 +8652485812846567424 1 +8656571350884048896 1 +8660248367767076864 1 +8665969966920990720 1 +8666178591503564800 1 +8677632093825916928 1 +8677794924343164928 1 +868 1 +8682955459667951616 1 +8687042963221159936 1 +8688483860094599168 1 +8693036785094565888 1 +8697823501349609472 1 +8698055291501543424 1 +8708232769657815040 1 +8708845895460577280 1 +871 1 +8714829359200747520 1 +8716401555586727936 1 +8720504651219001344 1 +8723248113030782976 1 +873 1 +8731960288562044928 1 +8734584858442498048 1 +8736061027343859712 1 +874 1 +8752150411997356032 1 +8759089349412847616 1 +8759184090543857664 1 +8760285623204290560 1 +8761174805938331648 1 +8769199243315814400 1 +8773222500321361920 1 +8775009214012456960 1 +8779073705407963136 1 +8779711700787298304 1 +878 1 +8780196485890555904 1 +8782900615468302336 1 +8783241818558193664 1 +8785153741735616512 1 +8792059919353348096 1 +8793387410919038976 1 +8795069490394882048 1 +8806507556248731648 1 +8808467247666241536 1 +8811693967537774592 1 +8815398225009967104 1 +8817665768680906752 1 +8822384228057604096 1 +8825059717746376704 1 +8829545979081744384 1 +883 1 +8836228556823977984 1 +8837420822750314496 1 +8849475396952514560 1 +8850055384477401088 1 +8853989376829833216 1 +8854495099223375872 1 +8854677881758162944 1 +8854715632851345408 1 +8856674723376668672 1 +8868529429494071296 1 +8871707618793996288 1 +8875745082589929472 1 +888 1 +8895174927321243648 1 +8896237972875370496 1 +8897901899039473664 1 +8899122608190930944 1 +8900180888218329088 1 +8900351886974279680 1 +8900545829211299840 1 +8905330479248064512 1 +8910706980937261056 1 +8920344895701393408 1 +8920533610804609024 1 +8927691194719174656 1 +8928133990107881472 1 +8935252708196999168 1 +8936639033158410240 1 +8939431770838810624 1 +8945004737083555840 1 +8945302550165004288 1 +8962097525980225536 1 +8972161729142095872 1 +8979012655944220672 1 +898 2 +8983857919580209152 1 +8983912573761167360 1 +8984935029383389184 1 +8987827141270880256 1 +8991071342495531008 1 +8991442360387584000 1 +8994608999945125888 1 +8995562121346260992 1 +8996824426131390464 1 +9000633029632499712 1 +9001907486943993856 1 +9005866015985713152 1 +9016280522993975296 1 +9020143715350814720 1 +9023663198045544448 1 +9030480306789818368 1 +9038087402564657152 1 +9040958359122640896 1 +9043089884440068096 1 +9048002942653710336 1 +9048297564833079296 1 +9050032047355125760 1 +9053187076403060736 1 +9054887854393950208 1 +9062227900376203264 1 +9064847977742032896 1 +9067985867711291392 1 +9073672806863790080 1 +9075404705968840704 1 +9078604269481148416 1 +908 1 +9083076230151864320 1 +9083704659251798016 1 +9084402694981533696 1 +9085381906890203136 1 +9085434340468473856 1 +9086905513121890304 1 +9089435102788009984 1 +9091082386452684800 1 +9091085792947666944 1 +9094945190752903168 1 +9096395849845194752 1 +91 1 +9104574294205636608 1 +9107991000536498176 1 +9112400579327483904 1 +9114850402293882880 1 +9116137265342169088 1 +9117063974299148288 1 +9119046173224370176 1 +9123116008004288512 1 +913 1 +9131533983989358592 1 +9132009829414584320 1 +9136234417125007360 1 +9136548192574529536 1 +9139805788041134080 1 +914 1 +9148071980848742400 1 +9149216169284091904 1 +9165199002069458944 1 +9169248521377374208 1 +917 1 +9174894805640142848 1 +918 1 +9180098147855769600 1 +9182828596851990528 1 +9185458640237641728 1 +9185952983951343616 1 +9188173682239275008 1 +919 1 +9190466190353661952 1 +9191943992860327936 1 +9194388393453060096 1 +9199741683232399360 1 +9207107990561972224 1 +9207927479837319168 1 +9209153648361848832 1 +921 1 +9211455920344088576 1 +922 1 +923 1 +927 1 +928 1 +939 1 +94 1 +945 1 +947 1 +950 2 +958 1 +961 1 +965 1 +967 1 +976 1 +979 1 +982 1 +987 1 +997 1 +999 1 +NULL 83 diff --git ql/src/test/results/clientpositive/vector_groupby2.q.out ql/src/test/results/clientpositive/vector_groupby2.q.out new file mode 100644 index 0000000..d4433ea --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby2.q.out @@ -0,0 +1,2022 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(i) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), i (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(i) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 -603273425 +-6919476845891313664 710856472 +-6920172215209426944 -764412063 +-6921654334727036928 -1066775085 +-6933565857643814912 581259902 +-6934304742087655424 955171928 +-6935038507792801792 174310705 +-6935548339131138048 -1062159435 +-6938706403992854528 980732494 +-6941777546186579968 121663320 +-6947955278050181120 641695802 +-6951350560260784128 1342923026 +-6957946688477274112 1505168716 +-6960947572095770624 1136976809 +-6962271229404348416 1106995930 +-6962292590214234112 -1147471772 +-6968771079156654080 -939348081 +-6968892545529896960 470993066 +-6970396058557005824 2140632003 +-6974654664348033024 -968377273 +-6975459232300236800 1151752586 +-6986178228432322560 -1369253050 +-6988811476286873600 -1968097621 +-6988970700649168896 -1230459100 +-6992217501957169152 1472487454 +-6997233584896229376 -76654979 +-7000925438663041024 596045726 +-7003696402314215424 -1458382451 +-7011425384222244864 NULL +-7017212700635545600 304860245 +-7020852530219171840 824836988 +-7030489936116252672 1115197541 +-7035132060308643840 NULL +-7036607470351654912 -1933192293 +-7037375807670501376 -1168823523 +-7037638331316469760 14573904 +-7038455462786334720 524317972 +-7040248820505149440 196581473 +-7041362811802148864 -455114104 +-7042183597114081280 658636280 +-7046180371529351168 -117723745 +-7049618574399692800 -978892011 +-7052619594823221248 -1117358187 +-7055619148037554176 -838656526 +-7055760785575665664 759899363 +-7057750467944931328 -71449585 +-7058986555327307776 1942004879 +-7063777488249085952 -507250351 +-7078068944081002496 2013178181 +-7079898537463537664 -1205034356 +-7081500255163727872 -1969751342 +-7083646746411720704 780938234 +-7085247548404178944 1640192895 +-7093825013581979648 -628790799 +-7094189393339678720 1796486238 +-7094827141662539776 -632803945 +-7104310188119834624 -1928197479 +-7106210529681350656 1718167702 +-7109790267244814336 -291577538 +-7115054815375073280 NULL +-7120456708338688000 1751468853 +-7127548949860818944 260463232 +-7138415011665043456 -1345391395 +-7139677575412686848 -1556127172 +-7140008543769042944 -1938290238 +-7144791190333546496 -876122064 +-7145585429014888448 -817093900 +-7147490721376591872 1759741857 +-7152177800841502720 -37773326 +-7155539549555105792 -345542922 +-7158472098920390656 -71305062 +-7159700138947862528 -76430653 +-7161165959057334272 1352649032 +-7162299524557471744 1813010930 +-7172594404186693632 -1949359208 +-7185369278665605120 -374337252 +-7192529627893858304 -45439614 +-7194281951646187520 -797889292 +-7195217207163166720 -1977762695 +-7198372044947275776 -1424770359 +-7199983995864711168 -1870912732 +-7201085131997011968 -1356601829 +-7209060152494817280 -2071851852 +-7213775605408178176 1222935237 +-7220731681653604352 -851663638 +-7221474017515347968 -1421860505 +-7228589258642194432 1958701268 +-7240213957902663680 -841634659 +-7242345057866285056 548375173 +-7245872320493322240 -134686276 +-7246123871306244096 1686537335 +-7255010240787030016 1373871781 +-7255686273677328384 2100839074 +-7262049693594943488 1295073553 +-7262384251828518912 1647411522 +-7262798781688651776 -423190290 +-7263060340185194496 1590744669 +-7265998318110711808 1437057145 +-7266719102957125632 960187615 +-7270034223527993344 -1984079412 +-7273590251991162880 994798486 +-7273694358642851840 2009890220 +-7276111129363046400 -1462604138 +-7287583262310350848 -1108723753 +-7292078334519894016 -785261879 +-7296096276653391872 160290374 +-7303847963918393344 -1769423338 +-7319315187617587200 -235238928 +-7326863346317598720 958866509 +-7328087811698909184 -1017629298 +-7329767178250018816 -448060992 +-7329807949048193024 -369183838 +-7330203470474985472 -1065248998 +-7330413050756235264 -2024003241 +-7333278178640953344 1393506704 +-7333362172439035904 -835002549 +-7340231535789727744 526502851 +-7344146703223496704 789871166 +-7344947507044466688 -340951385 +-7345562788132315136 1750433588 +-7356685674003021824 1319589591 +-7357888618985873408 NULL +-7362189611124563968 -496915240 +-7366430883634929664 1592153312 +-7378096180613840896 218917585 +-7380731416973295616 -1114208576 +-7395343938785738752 830944953 +-7395553021620731904 1056997296 +-7399631791131074560 -932921363 +-7404052043914526720 -1349876582 +-7404057145074712576 56316391 +-7409317158045442048 -1463884101 +-7409653086454030336 -624029057 +-7412431471807283200 622925063 +-7413317118463164416 -507015439 +-7419068456205385728 -4393552 +-7420448501073051648 -1155174991 +-7425160895830573056 -765102534 +-7429331808102899712 -1057522129 +-7433265617153343488 NULL +-7442593976514420736 1851805558 +-7444070205513138176 -520725912 +-7451660755269853184 1338047392 +-7453525026342617088 1505665168 +-7455898404374921216 1544482684 +-7456869587112255488 -224865887 +-7461750143936897024 -1343425152 +-7464270453557993472 -1439293109 +-7469660864676585472 85774760 +-7470307155642245120 1137950964 +-7476082621253402624 1083855659 +-7483435388852559872 -914329027 +-7488345684795342848 -1668736016 +-7488415863027367936 1286367391 +-7494411162675691520 1595326878 +-7496839341561954304 868714547 +-7497303453253402624 1415647436 +-7500200359698907136 -423074450 +-7501803640821456896 1809795770 +-7506254246954500096 -511198293 +-7507424948896415744 -828522499 +-7507578199583694848 -1784633305 +-7510418793070075904 975932228 +-7511202710200885248 -2042647152 +-7511952204985049088 -1351437382 +-7512289590991544320 1409872356 +-7512297136103800832 -1180153422 +-7515996202498473984 344989592 +-7524170566881329152 -1908696083 +-7526793959592140800 -570632618 +-7528526815026692096 2125479431 +-7532751268425261056 1752520642 +-7535857766791577600 1846184880 +-7535958203887706112 656636097 +-7536330682873937920 -1289501869 +-7540104552219860992 1081187102 +-7541860097718902784 -625788713 +-7542857121910046720 1495575878 +-7547245548870025216 1784291853 +-7547432761381339136 434679307 +-7551394356730339328 1179528290 +-7557017910095650816 195281533 +-7558524160894427136 375106978 +-7571293705217687552 1240875512 +-7571957778022178816 1042184256 +-7572262898020278272 -1875699183 +-7572962089372991488 -841268868 +-7576194692683563008 2080249726 +-7593363318079610880 -1811563127 +-7594824008626372608 824743780 +-7598782894648565760 -983874694 +-7600138468036386816 -722294882 +-7603467428164009984 -619311578 +-7603569103205916672 390124976 +-7610137349734883328 683320224 +-7611584069753552896 -1765795567 +-7612455481940246528 NULL +-7612466483992051712 -1969235238 +-7616522969329262592 1924741890 +-7617860842651017216 386741352 +-7623047151287754752 -1050029724 +-7623359796281999360 1829544791 +-7623405558242500608 283322761 +-7624057992767782912 -1218581850 +-7629401308029976576 -1655030261 +-7637494527844343808 2005560498 +-7637755520917741568 648935848 +-7642381493746483200 583458404 +-7647020450676146176 609917172 +-7661192563533062144 -1319753324 +-7661250850555633664 -693249555 +-7663293054873812992 -1478812842 +-7665186441284968448 791096295 +-7668388017287020544 NULL +-7669169138124275712 -1484033125 +-7673901622181953536 1141303816 +-7679894005808693248 -306214368 +-7686220526274502656 -892839693 +-7687052294777208832 -1989778424 +-7692192232238678016 745725681 +-7695491171376291840 1225312439 +-7700203302632210432 1805308672 +-7703540456272994304 1312270193 +-7707242953271500800 1568180994 +-7707867749256445952 -596963345 +-7708932208121225216 307333276 +-7709958788604936192 595836061 +-7712425776235274240 -1432316859 +-7720966287634112512 NULL +-7739424919198187520 712625264 +-7744462446680375296 2029657999 +-7751265769984491520 700341242 +-7751427073017544704 615619268 +-7753051494275432448 -1599905147 +-7759238919361888256 -2065287410 +-7759425383684849664 -938762477 +-7772064021830574080 -1201785350 +-7773957003968675840 270090617 +-7777884099756122112 914583645 +-7778829032042790912 -807242371 +-7779270198785875968 -1242677422 +-7782344916178796544 -1213081886 +-7784419454650843136 -1210907929 +-7792903881635938304 -191899537 +-7793447076762345472 1196151988 +-7797149520019062784 -1262842192 +-7797151404935618560 -507955215 +-7800879252150779904 1352739140 +-7802538500225777664 215759857 +-7804116532814151680 -1146649990 +-7805985795815342080 -2076886223 +-7811060170911375360 1513689502 +-7818454479651135488 -559270035 +-7819437864839495680 -370093295 +-7822452149325094912 60847311 +-7824788571789279232 -1406691044 +-7827420207675105280 -36682325 +-7831320202242228224 -1726479726 +-7831595638727565312 1626884085 +-7833618000492109824 589546540 +-7835907977757245440 -87470856 +-7838598833900584960 1028204648 +-7840338174858199040 -300717684 +-7845896959112658944 -1688105985 +-7848043121524228096 1667594394 +-7849504559236210688 -2052386812 +-7858505678035951616 NULL +-7866079955473989632 196980893 +-7867219225874571264 -1078579367 +-7868306678534193152 -2144138362 +-7873753603299540992 -971698865 +-7875953567586451456 816439627 +-7877598807023386624 340384179 +-7878145001776152576 -1489628668 +-7879864376629567488 -472303419 +-7881262505761710080 -103219371 +-7881351200983613440 720703232 +-7883252982752665600 1136548971 +-7884460946615984128 1772349172 +-7888051992910274560 1818213677 +-7892780594910871552 -779743333 +-7893577088764174336 268888160 +-7894382303337832448 1832650234 +-7895991410072928256 1467284000 +-7902517224300036096 -950738312 +-7903158849011843072 -217930632 +-7904188195431661568 -442839889 +-7907355742053883904 794783516 +-7910019233726242816 -1259611508 +-7911421221625077760 476704350 +-7915999634274369536 1814570016 +-7916510129632296960 -2136052026 +-7928062266382778368 152654715 +-7928440849566146560 -800975421 +-7939634346485858304 1012843193 +-7949309059286163456 88774647 +-7949445503604604928 1695098246 +-7953426740065312768 22308780 +-7964801953178091520 661659208 +-7966960765508280320 -884109192 +-7978782649203228672 491016124 +-7989766326847807488 -1731820254 +-7998947380180819968 -136514115 +-8007017894942638080 1219616145 +-8013397854633648128 -1391183008 +-8016589197379289088 -1721763321 +-8017791189288869888 -2057666812 +-8018511948141748224 661380540 +-8021859935185928192 1420099773 +-8022573309127000064 1194243726 +-8023708819947323392 198539698 +-8028275725610909696 -1937640350 +-8028910243475038208 873035819 +-8030058711611629568 -752222556 +-8034414142083170304 -267130580 +-8046189486447017984 925032386 +-8046238369820344320 819069589 +-8047774491688255488 -1339495001 +-8051395538179063808 -469749219 +-8051587217208967168 51376784 +-8051871680800120832 NULL +-8054581198284668928 1395450272 +-8067243114610532352 214068706 +-8070535484085895168 829101712 +-8076479329071955968 2017314998 +-8082793390939193344 -1878838836 +-8084716955963252736 -1609864597 +-8086577583338061824 -340462064 +-8088337436168830976 2124297747 +-8099313480512716800 -392713245 +-8103788088118018048 -533227056 +-8104684579106914304 -1091003492 +-8108693586698706944 -896261100 +-8115963579415650304 -951728053 +-8117838333114212352 -1642207005 +-8122639684164501504 1425456189 +-8127494999848919040 1701817607 +-8131997716860526592 -457341338 +-8136227554401107968 127917714 +-8140349174954893312 NULL +-8142667274351345664 453613037 +-8147405381260345344 659397992 +-8158011642485825536 NULL +-8161047750470279168 -621365995 +-8172827216441573376 -113253627 +-8182421179156905984 -1892816721 +-8191825921746305024 703111607 +-8194062064124362752 1482983157 +-8203008052020879360 -1127100849 +-8203075743525806080 -626484313 +-8205148279289085952 768198315 +-8214462866994339840 NULL +-8219876839318716416 1452244326 +-8232763638546694144 -514010922 +-8240034910581153792 -665623523 +-8240684139569233920 -1721368386 +-8243487285852766208 1153811197 +-8244116388227104768 1893512909 +-8244657976255889408 688547276 +-8260340354454503424 1456367662 +-8269917980278980608 -1700451326 +-8270479187688816640 1519993904 +-8275337702906757120 210003006 +-8280276629934981120 -588160623 +-8293833565967810560 -1464514590 +-8297230235506343936 283618733 +-8300526097982226432 1314531900 +-8300764106868350976 -1196101029 +-8302817097848307712 -1021859098 +-8317591428117274624 -670925379 +-8318886086186213376 1033609549 +-8322751250650218496 -1212524805 +-8330233444291084288 -409404534 +-8335810316927213568 -1562552002 +-8340523561480437760 39723411 +-8345065519816695808 654939016 +-8347088645602050048 76299337 +-8357136656913686528 1517915751 +-8358130693961195520 -122391516 +-8359839265974165504 1572563948 +-8368269352975982592 NULL +-8368487814665895936 156101201 +-8369487968903897088 -194270271 +-8379109122834997248 1566607834 +-8379964450833367040 -181122344 +-8384695077413412864 -1818456584 +-8387347109404286976 -2011708220 +-8387536830476820480 -1703620970 +-8395998375405912064 -1141801925 +-8400045653258444800 1523657918 +-8411282676082565120 253621570 +-8418913260807217152 -41864614 +-8425998949410889728 -656478771 +-8426531414463545344 1701761102 +-8430283518005846016 -16094879 +-8430370933326536704 NULL +-8431492599012163584 -1131684944 +-8438554249514491904 232405034 +-8445801063348281344 -1247325089 +-8453491903284994048 1524010024 +-8454143651040444416 516479816 +-8465978403747037184 1347876055 +-8469607298426437632 374283948 +-8471480409335513088 1891680787 +-8485389240529354752 -1528033060 +-8488247955875618816 1802498539 +-8490382417169408000 987917448 +-8494118409594650624 631207613 +-8503342882470019072 1367179645 +-8503573595507761152 2068018858 +-8507279516485566464 631711489 +-8509547439040757760 -1749415887 +-8518060755719585792 -1100641049 +-8518258741831680000 -809805200 +-8521578237232529408 -373034494 +-8522878384019169280 633813435 +-8523434203900674048 -590374062 +-8525212657458348032 -1280919769 +-8535957064499879936 -99205196 +-8536369662934401024 447426619 +-8543982423727128576 -607667405 +-8544299740525461504 -846450672 +-8545239748068941824 -897586947 +-8546758906409312256 -1236536142 +-8552393882631389184 1920863389 +-8555709701170552832 -1364322216 +-8559008501282832384 895945459 +-8559252110266564608 259204652 +-8562524688907485184 1775355987 +-8566856504746352640 2018442973 +-8566940231897874432 -1409508377 +-8570933074545745920 -749042352 +-8572823448513445888 -101960322 +-8572949572756774912 1787826883 +-8581765103969312768 -890374552 +-8581979259158929408 -674478103 +-8584520406368493568 -19116270 +-8585134536083660800 -1196808950 +-8585966098173870080 318631333 +-8593419958317056000 6266567 +-8603817012434198528 1114521964 +-8604758220106014720 -1798573685 +-8607195685207408640 -1111937842 +-8615168537390571520 1469775272 +-8619303037130301440 -2074079977 +-8623238306523824128 -1442424087 +-8623965248051789824 1637295757 +-8632237187473088512 NULL +-8649711322250362880 -500921094 +-8651641150831362048 -1533934649 +-8654433008222797824 -1728171376 +-8654797319350927360 895763504 +-8658387566611996672 NULL +-8659643752269242368 1204834275 +-8659692318743314432 25400543 +-8660149447361404928 1317690178 +-8664374244449050624 1059212450 +-8664806103426252800 964810954 +-8665218198816497664 -1031592590 +-8665764757143658496 -45460011 +-8675661101615489024 -1918651448 +-8675892979328212992 1478365409 +-8683802826440105984 -1344287228 +-8688153842294595584 -1741895392 +-8689606130068611072 488559595 +-8694818694700048384 94220511 +-8696162322976997376 1228837108 +-8703026916864802816 -397683105 +-8704234107608203264 -1318045616 +-8705403811649355776 206121314 +-8710298418608619520 -1817938378 +-8714995808835444736 206454818 +-8719510423723155456 -327648289 +-8730803262481580032 NULL +-8731068123910987776 -1434562279 +-8746702976270385152 1767359228 +-8754966081778565120 -125419186 +-8754992450211692544 1785455842 +-8756989568739835904 -158420748 +-8760655406971863040 -1249011023 +-8763062627136864256 -454598288 +-8768744394742235136 -726879427 +-8782213262837530624 1565313938 +-8783777723063099392 877053605 +-8789178184387641344 -1045771991 +-8797972842900307968 284646137 +-8807361476639629312 NULL +-8813211231120031744 1575300276 +-8831091081349758976 -1832606512 +-8832750849949892608 -66010816 +-8833019327569510400 -189393743 +-8835408234247168000 -938112972 +-8836899523028312064 397255100 +-8843859708698583040 2008211296 +-8844949406948671488 315973457 +-8845239510002753536 -1358159222 +-8852770376039219200 311478497 +-8853553406533894144 -1820436871 +-8856151919723003904 -575513309 +-8856821118526734336 618321042 +-8857335871148171264 1061043704 +-8858063395050110976 -1117019030 +-8859107121649893376 -37876543 +-8866442231663067136 -1079633326 +-8870186814744420352 NULL +-8870673219965001728 -1620148746 +-8875546987176206336 414645489 +-8877053610728161280 706823078 +-8877431933441327104 1650676897 +-8879742387365429248 1912175355 +-8881446757271846912 1224662770 +-8887058200926093312 -191704948 +-8892963883085578240 -2087815643 +-8896045754034978816 1392980712 +-8914039133569400832 1332042427 +-8916987977485312000 -839176151 +-8922409715403112448 -536315467 +-8923529803981905920 1148500740 +-8927968289860370432 1033836308 +-8930307926221807616 -966979668 +-8938849835283677184 1318606691 +-8940944155843461120 -858439361 +-8941201923743703040 NULL +-8946656952763777024 -759911896 +-8948335470186373120 -1078397698 +-8959796625322680320 1318956413 +-8961059046745669632 1783034168 +-8962547695651323904 1091736925 +-8965578088652095488 -1216166764 +-8989473881707921408 1310360849 +-8990843030306717696 -311437801 +-8992599250893979648 1677494300 +-8996954350906294272 -1769037737 +-9002912355472736256 -561932449 +-9004892183139811328 -1949698319 +-9008631121684832256 704038411 +-9012093603044245504 538766635 +-9013952631912325120 -1052493316 +-9014145341570203648 273256071 +-9022154842129547264 1130043800 +-9032650742739836928 1102561039 +-9049720998034137088 1747664003 +-9051477157204770816 -1648991909 +-9058029636530003968 -1197602595 +-9066993118333706240 -425196209 +-9071565764086521856 2058640744 +-9075302542655684608 -295186284 +-9075486079396069376 -1805915233 +-9078662294976061440 -235819331 +-9079801920509001728 -705887590 +-9080568167841226752 906074599 +-9080956291212132352 1330219997 +-9084940280061485056 128430191 +-9088239683374350336 -18917438 +-9091113592821972992 1861276585 +-9095689235523264512 1687784247 +-9101953184875757568 -1918847735 +-9102482277760983040 742866312 +-9105358806324035584 1679381813 +-9105701280936501248 1109664665 +-9109392978217484288 407098216 +-9117959922369060864 936133387 +-9126793997498957824 770574055 +-9136398397785948160 376076075 +-9142610685888192512 -387395264 +-9145593811310010368 -202409329 +-9148197394287779840 -1568536214 +-9149719074367946752 234452496 +-9157613004431998976 1362740312 +-9175038118837149696 -1701492480 +-9175279464813223936 2080412555 +-9178166810751909888 -1407817977 +-9187662685618348032 NULL +-9189155542884474880 -1955545912 +-9203804401302323200 -671853199 +-9203942396257984512 -1625800024 +-9206329156028112896 2084666529 +-9210275791460499456 601376532 +-9213132862973829120 -1216206795 +-9215144824304721920 -399643110 +-9218875542187065344 785382955 +-9219066990552760320 2090044777 +1021 -1884780525 +1030 -300429552 +1032 -1914210382 +1039 914062370 +1046 -990781312 +1048 -249150336 +1053 -1369302744 +1055 371383749 +1058 -1497098905 +1065 1194089079 +1066 1767019352 +1074 161210995 +1075 2144365072 +108 -835107230 +1086 -1341627565 +1093 NULL +1094 -359194591 +1095 291866793 +1099 1390704286 +1115 -144862954 +112 -2147071655 +1127 -423378447 +1128 -932525608 +1132 239078089 +1134 187718349 +1141 -540820650 +1142 1184001017 +1145 669484010 +1153 1646811064 +1157 590719541 +1158 990246086 +1165 1153089364 +1168 NULL +1177 1182595271 +1187 69110370 +1189 215508794 +1198 -1857500489 +120 29680001 +1201 945911081 +1217 -1802746460 +1234 -1921909135 +1243 1938788165 +1247 -866304147 +1252 30036142 +1261 -343173797 +1270 1969239701 +1280 991397535 +1282 -1140071443 +1286 -480058682 +1287 -1362178985 +1290 177837042 +1291 1398486099 +1299 765656980 +130 -2081501748 +1307 882331889 +1312 742059797 +1316 997193329 +1321 731241198 +1337 -1948257321 +1341 492120544 +1342 1203482872 +1343 -217785690 +1345 -600315936 +1346 -158233823 +135 198017473 +1366 748358417 +1368 1650573576 +1371 821316302 +138 843282593 +1386 2081152819 +1398 955267058 +1409 865013617 +1422 -1402821064 +1423 631954352 +1436 1765173148 +1439 531459992 +1447 NULL +1450 740883263 +1454 NULL +1458 -1001529082 +1462 287239980 +1466 574069547 +1470 1406029775 +1477 -707228984 +1481 1022707418 +1489 766737781 +1493 557053197 +1495 -1222897252 +1501 1081920048 +1506 1893632113 +1508 1632769786 +1509 1920662116 +1518 824235855 +1520 NULL +1521 -993029335 +1524 -1851280202 +1530 1934970004 +1537 278601840 +154 998793176 +1541 -1430903652 +1542 NULL +1545 564366133 +1556 -1202975006 +1559 -206177972 +1561 NULL +1566 747122546 +1604 -2077771325 +1606 -1901806083 +1608 142722637 +1613 -1422780798 +1614 -296195507 +1620 -1989378509 +1638 92777932 +1641 NULL +1643 1346627771 +1648 -496870819 +1651 -1575588203 +1667 -499533481 +1671 1504919241 +1674 1488440165 +1676 -393723522 +1678 -1104268719 +168 -53587991 +1681 929751599 +169 -1759354458 +1693 -1545572711 +1701 1404346934 +1704 -605370177 +1719 1008698636 +1726 NULL +1728 626251612 +1745 368170021 +1751 -667383951 +1752 -1538978853 +1769 805672638 +1774 -1974777102 +1775 1928365430 +1777 1061638369 +1780 -71433796 +1781 NULL +1785 -524189419 +1786 -1009249550 +1788 -997463353 +1789 -1098379914 +1791 -1900369503 +1796 -1625062942 +1806 -40284975 +181 1742536084 +1811 -922200749 +1813 -738157651 +1826 505902480 +1827 -956668825 +1835 1768399622 +1837 290921475 +1845 -909024258 +1846 418182899 +1856 44009986 +1862 674547678 +1863 -1017027298 +1864 NULL +1866 -400501472 +187 2133950868 +1870 25644069 +188 316438994 +1880 1293876597 +1890 -1660344634 +1892 596595603 +1899 734267314 +19 -436386350 +1906 1070989126 +1910 1978200605 +1914 -1146055387 +1926 -490337498 +1937 -987995271 +1940 950997304 +1941 -54793232 +1948 735732067 +1955 -316678117 +1965 1173098061 +1972 -1404921781 +1981 -980869630 +1983 -1954890941 +1987 65956045 +1990 1050809633 +1995 1012230484 +1999 -9958400 +2001 217476429 +2002 1535954353 +2004 1464703053 +2009 -1471147786 +2011 33234633 +2013 1142098316 +2016 135341845 +2017 44628821 +2020 37730738 +2025 989475408 +2026 -1454941039 +2029 546555204 +203 2070969353 +204 2018249426 +2046 363981930 +2056 1941527322 +2067 NULL +2072 -1652600376 +2073 -856843296 +2085 -1179668872 +2089 945683736 +2092 1678261510 +2105 1550112473 +2106 1597303154 +2108 977292235 +213 -361944328 +2131 -464804906 +2138 -1048181367 +2140 -1319686435 +2144 117620760 +2155 1126157283 +2177 -1960344717 +2179 1394370866 +2180 -120704505 +2183 -1947868215 +2186 -1655396452 +2187 -906986958 +2189 NULL +2193 -598552521 +2194 -853967587 +22 176792505 +2201 1425362689 +2205 2013376408 +2214 1602631923 +2217 479566810 +2218 NULL +2223 1605596441 +2227 1054864168 +2229 516843026 +2232 277582670 +2241 810157660 +2244 -1699049982 +2255 -1561738723 +2262 1283898734 +2264 -425103007 +2270 -1429346144 +2274 -1676261015 +2277 -1447263708 +2279 -1412187081 +228 167432368 +2283 530274409 +2285 1533817551 +2295 -1914072976 +2306 -604362582 +2320 -1919939921 +2323 -2028355450 +2325 1645067708 +2335 1281277970 +2341 1951869763 +2348 -40407627 +2358 -370798230 +236 514833409 +2373 -1602792666 +238 713031549 +2386 930008274 +2393 1852725744 +2398 1489169773 +2400 663222148 +2410 NULL +2412 -887663189 +2420 480849725 +2426 62293025 +2434 1621606222 +244 860708524 +2461 -1668974292 +2463 2031604236 +2465 -1819075185 +2469 524808 +2475 -1116100266 +2476 -1210261177 +2485 1594107168 +2487 NULL +2492 -270683864 +2494 -1830870295 +2502 -336625622 +2506 776606164 +2509 693331761 +2512 -1164833898 +2514 407233168 +2515 -601946913 +2517 198624903 +2524 -1081766449 +2533 672266669 +2539 1090344463 +2540 1103878879 +255 -1106469823 +2551 -1762037754 +2553 1112783661 +2560 -1493282775 +2563 -1141652793 +2565 -1302592941 +2569 -837503491 +2579 1640445482 +2580 1933545427 +2587 -1125605439 +259 -922875124 +2599 -1903090602 +2607 NULL +2608 335359004 +2619 1895751360 +2625 -1897998366 +2626 1620529246 +263 1807358029 +2637 1522208504 +2647 92834720 +2649 659343542 +2662 209430502 +2663 43983130 +2675 1305668933 +268 860658464 +2680 825977391 +2682 -675125724 +2688 -1249134513 +2689 -1343327 +2692 NULL +2700 -123529324 +2712 -901778330 +2714 1284956108 +2715 1569269522 +2719 1516149502 +2724 922373046 +2725 257821327 +2735 1307148254 +2745 1134416796 +275 1517488324 +2752 962091264 +2762 314232856 +2772 1835749815 +2776 -1801684055 +2786 343362793 +279 -1709246310 +2790 686081268 +2791 -714594143 +2803 923980398 +2805 -295751373 +281 -42151403 +2810 1844415080 +2811 -170643477 +2816 -912429611 +2821 829055499 +2824 -1679120527 +2835 144428297 +2842 889772203 +2843 -887790938 +2846 -121162464 +2847 1634441052 +2848 -985817478 +2850 1618123796 +2855 1756592797 +2862 1956887369 +2878 -906545548 +2886 84231802 +289 -1144976744 +2897 1211873318 +2900 2114363167 +2903 1552351592 +2905 -1232183416 +2911 1483580941 +2915 -470798506 +2919 1002132158 +2933 -1484787952 +2938 -2032576637 +294 -1817096156 +2941 -1862095575 +2942 1638471881 +296 597657990 +2962 1042237722 +2968 1556919269 +2971 -373541958 +2977 -2007662579 +2979 131031898 +2984 1440427914 +2986 -933324607 +2988 492639283 +2991 NULL +3002 -1538558250 +3006 1328225044 +301 -1924909143 +302 -1730740504 +3021 177294487 +3024 -891543038 +3029 -1198036877 +3031 NULL +3036 -449333854 +3043 692666133 +3054 -973128166 +3055 -1198465530 +3058 -1144920802 +3059 1386071996 +3060 818313200 +3067 1256676429 +3071 1129173487 +3073 722737062 +3079 -882028850 +3083 -385247581 +3084 1333148555 +3089 584084934 +3094 1335803002 +3103 -1622653291 +311 -1850492820 +3111 -1299159155 +3118 NULL +3119 673904922 +3144 -758231588 +3147 1102069050 +3159 1127080164 +3163 26270580 +3174 -1871446009 +3183 1363459426 +3190 297577612 +3197 976870621 +3199 -2086352100 +320 1198172036 +3203 -491377296 +3206 -733756717 +3208 -211669740 +3212 900992177 +3213 -1171326281 +3231 -817383093 +3232 1434588588 +3235 -287400633 +3244 1303632852 +3245 1385883394 +3248 1202720813 +3249 206942178 +3253 -1218871391 +3255 -1212433954 +3263 -419335927 +3286 -1078214868 +3300 1743696703 +3307 -1128317466 +3322 -1544877665 +3333 -462541618 +3352 -1621814212 +336 1376818328 +3365 1712411993 +3366 -606214770 +3397 -2066134281 +34 1969650228 +3401 -2138343289 +3407 NULL +3409 -337586880 +341 278643258 +3418 786565385 +342 -884796655 +3421 -1878572820 +3430 -395499919 +3443 -1006768637 +3446 440393309 +345 NULL +3456 NULL +346 -938756287 +3460 1204325852 +3462 511836073 +3467 596802082 +347 -414207254 +3472 868717604 +3478 1772545157 +3493 -890552359 +350 330302407 +3507 2032271149 +3510 197056787 +3512 636901402 +3533 1076088102 +3534 NULL +3541 -996953616 +3542 459269456 +355 1258721737 +3554 48554395 +3555 458190500 +3563 1332181668 +3566 -519978947 +3567 410340192 +3568 NULL +3579 -1426893312 +3588 850625480 +3599 2069258195 +3606 -1032306832 +3608 773730574 +3609 -1380191654 +361 -434747475 +3613 1191238870 +3622 2057486961 +3625 -1656822229 +3630 693876030 +3637 929560791 +364 1336365018 +3648 1142481557 +3663 -886741158 +3664 -186600427 +367 -1324624386 +3672 1825828852 +3673 -362603422 +3677 470575409 +3680 1124269631 +3682 -1718163874 +3690 1500437122 +3691 -664111469 +3701 760466914 +3702 -1423467446 +3703 1796950944 +3707 1377359511 +3722 -1322736153 +3724 1625751062 +3725 1911834442 +3728 -800799595 +3739 -192181579 +3747 1001732850 +3749 1027147837 +375 -1754347372 +3755 -7929246 +3763 -679230165 +3764 -2027812975 +3769 -1431196400 +3770 -1627366321 +378 -1270523286 +3781 141492068 +3789 -139448716 +379 1625699061 +3810 -1043413503 +3812 -870900240 +3823 1563120121 +3824 1372224352 +383 1063524922 +3830 1443426396 +3835 133276416 +3841 -901079162 +3848 1436480682 +3858 1925283040 +3860 -423945469 +3866 436093771 +3874 -1603071732 +3879 461680901 +388 -66112513 +3887 476919973 +3901 -1909635960 +3904 1473503196 +3907 -373038706 +391 1107258026 +3910 NULL +3911 -1283465451 +3913 1506907734 +392 1664736741 +3932 2145269593 +3940 923353533 +3941 -734921821 +3945 -1758125445 +3946 523289079 +3949 1797164732 +3958 65172363 +3960 1509573831 +3961 -1955647385 +3962 NULL +3965 771827308 +3974 670667262 +3980 -564495517 +3990 -1392487784 +4018 -396852483 +4020 -1447140800 +4024 -202035134 +4030 -216495498 +4037 1003667927 +4051 1052255272 +4054 1998185704 +4056 -1516259168 +4075 NULL +4078 727802564 +4088 947846543 +41 -203911033 +412 2144454927 +417 152891873 +425 1336194583 +443 596242714 +454 -1227085134 +455 1159353899 +462 1677444379 +470 -181523892 +471 -207899360 +481 536235636 +482 765084282 +485 874824958 +489 -928013434 +49 1673218677 +490 1229172951 +491 -201554470 +5 -1063673827 +500 1216016081 +501 715333063 +504 851975276 +522 -853606287 +523 149701884 +524 -1326025787 +530 -1851680302 +535 888896424 +579 -1804244259 +583 -1554325042 +584 -2017279089 +586 -310343273 +587 1485934602 +590 -186764959 +597 1577999613 +601 -592568201 +612 1131663263 +615 2097519027 +618 -412333994 +65 919363072 +650 1222217404 +658 -1254129998 +66 2013444562 +661 1045719941 +663 -1261099087 +664 899810881 +677 -1038565721 +68 879290165 +681 -893863493 +687 1888675011 +688 NULL +690 -1112062809 +691 -1156193121 +6923604860394528768 -1095938490 +6924820982050758656 -1709117770 +6926925215281774592 987734049 +6927260280037097472 1668094749 +6928080429732536320 1300798829 +6933001829416034304 2089198703 +6933451028794925056 1776456512 +6933731240564056064 780859673 +6934570741217755136 491758252 +694 -2015780444 +6947488599548215296 1141595012 +695 -521886983 +6960137166475911168 -558456218 +6962726713896484864 2051470532 +6963217546192322560 -1340213051 +6964585306125008896 2146312499 +6967631925774639104 373031319 +6969599299897163776 -2042831105 +6974475559697768448 1493555718 +6982145326341423104 -941433219 +6987889924212203520 -2053551539 +6991316084916879360 -1345085327 +6996686091335884800 -1738775004 +7006803044329021440 1614297403 +7013693841855774720 656187584 +7014537632150224896 -44426049 +7017956982081404928 -828724467 +7022349041913978880 -1096013673 +7027529814236192768 -1988508336 +7031339012080549888 1182390248 +7039820685967343616 -483740394 +7045967493826387968 -1669227632 +7049773031131283456 814544198 +7052226236896256000 1119976718 +7054271419461812224 -1266138408 +7054938591408996352 -352146259 +7060236714847412224 -1858443953 +7061498706968428544 -290558484 +7061809776248545280 -469870330 +7062382339142156288 536876888 +7062605127422894080 -1614194712 +7065344324692443136 -1881263242 +7068517339681259520 -1871209811 +7069729473166090240 NULL +707 1343581455 +7077311975029555200 1103797891 +7078641038157643776 NULL +7080269176324218880 -337073639 +7084659344078970880 963854010 +7086206629592252416 -1106685577 +7091300332052062208 NULL +7099005292698550272 917891418 +71 -20639382 +7107604675626008576 1949494660 +7125231541858205696 -2111312205 +7128222874437238784 -283378057 +7130159794259353600 -837506172 +7130306447560826880 77063155 +7149417430082027520 -1352545619 +7153922334283776000 NULL +7157247449513484288 -36038293 +7164349895861829632 -1153978907 +7165364563962191872 -1272838092 +7166263463731421184 -1838281337 +7175638927948562432 596280431 +7186401810812059648 1430614653 +7195454019231834112 -1419573027 +7198687580227043328 563507584 +7199539820886958080 NULL +7204802700490858496 -1719427168 +7210160489915236352 -1353470095 +7212016545671348224 1309976380 +7212090742612467712 -1067083033 +7217123582035116032 -90029636 +7220131672176058368 1017953606 +7220581538170413056 615661052 +7223569671814987776 -1004204053 +7226360892091416576 -935723237 +7229607057201127424 -1818380492 +723 1616782308 +7231399302953377792 1990792684 +7232273749940838400 -1231821948 +7235109456886816768 -2098078720 +7237310132329488384 -1061859761 +7238339720750948352 -1770229099 +724 -616724730 +7242751359672631296 -2016985611 +7249443195032985600 -51612681 +7250237407877382144 -772236518 +7254710367022645248 1911809937 +7255302164215013376 1281159709 +7259955893466931200 NULL +7260908278294560768 826519029 +7265141874315517952 -571587579 +7266437490436341760 177391521 +7271786885641666560 936752497 +7271887863395459072 -94709066 +7274777328897802240 482977302 +7291432593139507200 1570238232 +7295502697317097472 210728566 +7295926343524163584 1182646662 +7296164580491075584 1412102605 +7299197687217856512 172075892 +73 488014426 +7304839835188609024 1961954939 +7308289763456000000 -1423477356 +7309156463509061632 1304431147 +7310869618402910208 -359943425 +7319711402123149312 1036391201 +7333512171174223872 -332125121 +7339426767877390336 538268118 +7343171468838567936 879289168 +7344029858387820544 -1669848306 +7345991518378442752 849859032 +7347732772348870656 -1800413845 +7348598907182800896 -1940205653 +735 115111911 +7354813692542304256 1426152053 +7359004378440146944 1082837515 +736 -1183469360 +7368920486374989824 -1822850051 +7370078518278397952 -215703544 +7370803940448305152 -533281137 +7375521127126089728 -688296901 +7376467688511455232 -348628614 +7378993334503694336 1870464222 +738 -453739759 +7381659098423926784 867587289 +7384150968511315968 1447462863 +7386087924003676160 2038381675 +7391208370547269632 -743680989 +7393308503950548992 -849551464 +7394967727502467072 -1983567458 +7401968422230032384 -504529358 +7410096605330227200 1987336880 +7410872053689794560 -916344293 +7411793502161182720 -177025818 +7412924364686458880 1817671655 +7414865343000322048 -829717122 +7418271723644403712 1202593021 +743 1004241194 +7432428551399669760 -805288503 +7432998950057975808 -434656160 +7436133434239229952 203688965 +7440265908266827776 -1425942083 +7450416810848313344 1393262450 +7452756603516190720 -2009569943 +7454442625055145984 -267554590 +7454632396542074880 859140926 +7461153404961128448 -23865350 +7471208109437304832 -1603374745 +7473537548003352576 -1439424023 +7486884806277611520 1516236846 +7487338208419823616 1974939899 +7487538600082554880 2068538934 +7490717730239250432 -1829691116 +7491898395977523200 1265528735 +7492436934952574976 NULL +7497276415392407552 1543611951 +7497306924248834048 550594651 +7500716020874674176 -1953605752 +7514552840617558016 334208532 +7517159036469575680 -1437126017 +7524958388842078208 -664856187 +7528074274555305984 550186724 +7528211148397944832 -512198016 +7534042483076857856 1645753684 +7534145866886782976 -532755480 +7534549597202194432 2044130430 +7545689659010949120 -1380678829 +7548958830580563968 1836499981 +7549858023389003776 NULL +7555301305375858688 1916363472 +7566273236152721408 881673558 +7569249672628789248 -1952235832 +7570474972934488064 -432218419 +7573530789362262016 NULL +7575087487730196480 1421779455 +7581052107944361984 1493152791 +7581614118458335232 -1129489281 +7584007864107778048 1410516523 +7592440105065308160 NULL +7593521922173419520 1260480653 +7596563216912211968 605946758 +7599019810193211392 -2112149052 +7608447395949109248 882762933 +7614435638888210432 735600165 +7620183559667081216 -1967660827 +7621013099259527168 -553349593 +7625728883085025280 -1699044525 +7626715182847090688 1905812339 +763 -1933374662 +7637152193832886272 1880017800 +7647481735646363648 1164895226 +7648729477297987584 NULL +7652123583449161728 472901914 +7659279803863146496 1541249928 +7662037650719850496 -175727228 +7675009476762918912 522895626 +7678790769408172032 -1313618168 +7682327310082531328 879500678 +7686992843032010752 -897622427 +7689489436826804224 -909127123 +7690986322714066944 -2124994385 +7691062622443044864 1516165279 +7696737688942567424 -269702086 +7697541332524376064 -1070951602 +7700734109530767360 194754262 +7701723309715685376 -1831957182 +7705445437881278464 527598540 +7710447533880614912 -583908704 +7718825401976684544 -1226425562 +7720187583697502208 -1366059787 +7731443941834678272 -1092872261 +7735566678126616576 1626868156 +774 449788961 +7741854854673367040 -1743938290 +7746402369011277824 -1735287250 +7747874976739016704 315055746 +7748799008146366464 -540401598 +7752740515534422016 1851654062 +7753359568986636288 -816661030 +7753882935005880320 1190302173 +7761834341179375616 1273877405 +7762823913046556672 1198701102 +7765456790394871808 1074488452 +7768984605670604800 NULL +7775034125776363520 -1628799508 +7778936842502275072 -1702587308 +7779486624537370624 -1998652546 +7779735136559579136 -1228063838 +7782245855193874432 618991041 +7784169796350730240 -958165276 +7784489776013295616 -158848747 +779 -1939362279 +7790728456522784768 1575091509 +7792036342592348160 -538812082 +7794244032613703680 1301426600 +78 95356298 +780 -737624128 +7800332581637259264 592011541 +7801697837312884736 -116484575 +7818464507324121088 -2119724898 +782 -1552053883 +7823874904139849728 344239980 +784 44595790 +7843804446688264192 -397951021 +7844258063629852672 972835688 +7845953007588401152 NULL +7857878068300898304 977624089 +7868367829080506368 658008867 +7870277756614623232 985634256 +7871189141676998656 1363568842 +7871554728617025536 -309571354 +7874764415950176256 2127682701 +7885697257930588160 1992977592 +7888238729321496576 978044705 +789 NULL +7892026679115554816 626941809 +7892281003266408448 -371779520 +7898670840507031552 776459017 +7909645665163804672 -1289665817 +7917494645725765632 2076370203 +7919597361814577152 2125311222 +7921639119138070528 -1030565036 +7922443154272395264 -1333770335 +7926898770090491904 1582537271 +7933040277013962752 -1061222139 +7936149988210212864 1769324649 +7944741547145502720 372099650 +7947544013461512192 -1184620079 +7948803266578161664 1766517223 +7955126053367119872 1447438548 +7961515985722605568 866084887 +7961909238130270208 -1138530007 +797 996831203 +7983789401706094592 230954385 +7989119273552158720 NULL +7989160253372817408 1848935036 +7997694023324975104 -1826997220 +7998357471114969088 346562088 +7998687089080467456 NULL +80 NULL +8000440057238052864 1251556414 +8002769767000145920 1668446119 +8004633750273925120 -1754203978 +8011181697250631680 1773417290 +8011602724663336960 667283966 +8014986215157530624 -799249885 +8017403886247927808 -1491722659 +803 -2096425960 +8045070943673671680 435407142 +8048726769133592576 -406264741 +8059284960252731392 -251576563 +8069531888205086720 1978171687 +8071961599867387904 52667480 +8073733016154431488 1815882183 +8079573715140485120 503752931 +808 -1836166334 +8087737899452432384 -2137168636 +809 -682333536 +8091421389575282688 NULL +8099215208813903872 492968645 +8100036735858401280 -146961490 +8109381965028548608 2022944702 +8111757081791733760 -234758376 +8113585123802529792 129675822 +8116738401948377088 1914993018 +812 -954480325 +8120593157178228736 -1379039356 +8129551357032259584 323817967 +8135164922674872320 -1459528251 +8142241016679735296 -163859725 +8143462899383345152 644934949 +8144552446127972352 2083836439 +8145745969573666816 467753905 +8145750910080745472 1275228381 +8146288732715196416 -728015067 +8146492373537660928 1316369941 +8148211378319933440 NULL +815 1910930064 +8150115791664340992 793047956 +8156018594610790400 1384071499 +8156782979767238656 -1651993300 +8160569434550403072 -1808960215 +8160662610166194176 -310584775 +8163948965373386752 1968813171 +8168742078705262592 -303747347 +8169878743136043008 1765874562 +8171188598958407680 1996235654 +8183233196086214656 1450881368 +8184799300477943808 -579916775 +8190539859890601984 1418228573 +8190967051000659968 604460005 +8192304692696383488 494570380 +8195103847607967744 15020431 +8199513544090730496 758926227 +820 746904285 +8201303040648052736 -774406989 +8201491077550874624 1677197847 +8208354137450766336 1377144283 +8210813831744118784 139661585 +8213810702473183232 587797446 +8219326436390821888 2064448036 +8220104397160169472 -1274158260 +8221561626658881536 -1626062014 +8222714144797368320 -318380015 +8223732800007864320 -599396052 +823 1660088606 +8230371298967609344 1660278264 +8235179243092090880 187893585 +8244041599171862528 402173272 +8254763178969915392 658850444 +8268875586442256384 1271280812 +8269730157217062912 127051381 +8272001752345690112 3999930 +8279056098670198784 2133492883 +8282648443538710528 -402441123 +8283099811330506752 737149747 +8286706213485297664 -916495008 +8287522765741301760 -1817564067 +8290014929764040704 -1424027104 +8290944180915871744 684561551 +8294315622451740672 -43858652 +8295110846998233088 -1945738830 +83 -684022323 +8302473563519950848 -1524081566 +8316336224427483136 345556325 +8323460620425330688 -1524554771 +8325227661920133120 -178568841 +8332670681629106176 -314935936 +8333523087360901120 -442732016 +8337549596011102208 904604938 +8345435427356090368 323919214 +835 -1054609414 +8351163199364390912 391186487 +8362046808797306880 89366322 +8365058996333953024 -2043805661 +8367680396909404160 -1269216718 +8368012468775608320 -1665164127 +837 170870820 +8371939471056470016 826143442 +8372408423196270592 564349193 +8372588378498777088 1321678350 +8374321007870836736 -329336519 +8376440110255243264 1665724041 +8383159090746204160 605141554 +8388363436324085760 -707108808 +8391407951622815744 NULL +8391785334471589888 -630900418 +8396433451610652672 -180280420 +8398862954249560064 669871113 +8407869317250220032 -1240912824 +8410599906334097408 -1606567895 +8411494452500930560 -1568646283 +8415171956168417280 541118710 +8416121695917498368 63706286 +8417381121663746048 1458051497 +8419958579638157312 -99916247 +8424515140664360960 1847210729 +8435912708683087872 -2081809883 +845 -1026746699 +8451612303224520704 -971203543 +8454154705460666368 -1421396891 +8455496814886002688 107680423 +8457906374051020800 106847364 +8461498293348065280 1636364987 +8463868417649524736 -1643714866 +8467976965865799680 916057807 +8470141334513098752 NULL +8472429318602268672 -308225568 +8473699639908261888 -591879497 +8487573502287478784 1895282160 +8489584373231919104 1416850873 +8489735221193138176 -1124028213 +85 -913906252 +8501910015960735744 1579460630 +8508401924853850112 -1578387726 +8509508263705477120 1107757211 +8514851182589771776 415234946 +8514979402185596928 1902676205 +8515682078777081856 -1026458834 +8518454006987948032 -379174037 +8519937082746634240 -1745449855 +8523972434954510336 2134433675 +8524940073536954368 476858779 +8525336514806317056 350802495 +8525894870444638208 1216287232 +8532016240026279936 -1726585032 +8536948829863198720 1723691683 +8540237852367446016 398960205 +8543177193114779648 2048533360 +8547243497773457408 -534991774 +8551446856960942080 -1312782341 +8553195689344991232 566646177 +8554899472487596032 -491882534 +8555933456197828608 NULL +8555948987770511360 107941738 +8557218322962644992 -1210550573 +8558000156325707776 -370901197 +8560526613401714688 1592467112 +8569030475428511744 1743671220 +8570983266408103936 950545385 +8571268359622172672 1187495452 +8573305425181941760 1583280136 +8577096957495025664 NULL +8579974641030365184 -1545388906 +8583916402383601664 -733239404 +8613562211893919744 -1109134719 +8625937019655200768 272086526 +8631515095562887168 -1244527286 +8637720762289659904 1669519977 +8639254009546055680 477584560 +8641221723991433216 -1531040609 +8643198489997254656 -1079086534 +8644602243484803072 -1218592418 +8649296591032172544 -1744964279 +8652485812846567424 1372705672 +8656571350884048896 NULL +8660248367767076864 1520375588 +8665969966920990720 1372982791 +8666178591503564800 -1565785026 +8677632093825916928 2040926345 +8677794924343164928 115470151 +868 -2133145181 +8682955459667951616 2009215103 +8687042963221159936 -870624802 +8688483860094599168 -273937943 +8693036785094565888 2090496825 +8697823501349609472 922553769 +8698055291501543424 -1755088362 +8708232769657815040 6526476 +8708845895460577280 1860113703 +871 915505006 +8714829359200747520 672919099 +8716401555586727936 -789126455 +8720504651219001344 825677248 +8723248113030782976 144499388 +873 842283345 +8731960288562044928 869288953 +8734584858442498048 -946830673 +8736061027343859712 -1974972123 +874 58313734 +8752150411997356032 -1502924486 +8759089349412847616 1972940844 +8759184090543857664 435426302 +8760285623204290560 -573787626 +8761174805938331648 1205391962 +8769199243315814400 2100377172 +8773222500321361920 217823040 +8775009214012456960 -213198503 +8779073705407963136 -1979314577 +8779711700787298304 -859535015 +878 290601612 +8780196485890555904 -607285491 +8782900615468302336 -1411407810 +8783241818558193664 -714270951 +8785153741735616512 1028092807 +8792059919353348096 -745678338 +8793387410919038976 -1058166020 +8795069490394882048 1366402722 +8806507556248731648 1190554937 +8808467247666241536 -1706867123 +8811693967537774592 1731764471 +8815398225009967104 -1701502632 +8817665768680906752 1550375386 +8822384228057604096 -1371840597 +8825059717746376704 872554087 +8829545979081744384 NULL +883 -1554130090 +8836228556823977984 1499399891 +8837420822750314496 2052773366 +8849475396952514560 718692886 +8850055384477401088 1503176016 +8853989376829833216 -1505397109 +8854495099223375872 2065408093 +8854677881758162944 1883400319 +8854715632851345408 1301997393 +8856674723376668672 -4943292 +8868529429494071296 1830870769 +8871707618793996288 -677778959 +8875745082589929472 -1460613213 +888 1012696613 +8895174927321243648 -522450861 +8896237972875370496 1540680149 +8897901899039473664 -535056977 +8899122608190930944 -2146432765 +8900180888218329088 -1058356124 +8900351886974279680 1000106109 +8900545829211299840 352214248 +8905330479248064512 NULL +8910706980937261056 1166237779 +8920344895701393408 -1126628450 +8920533610804609024 1739911574 +8927691194719174656 -917062754 +8928133990107881472 -1511162508 +8935252708196999168 1603612975 +8936639033158410240 -1305139473 +8939431770838810624 -934008333 +8945004737083555840 252169185 +8945302550165004288 1117805438 +8962097525980225536 -329695030 +8972161729142095872 1709983738 +8979012655944220672 -120692484 +898 338805871 +8983857919580209152 1273798925 +8983912573761167360 NULL +8984935029383389184 -1565671389 +8987827141270880256 -1024500955 +8991071342495531008 -574475259 +8991442360387584000 2081243058 +8994608999945125888 -839512271 +8995562121346260992 -618505946 +8996824426131390464 -214166042 +9000633029632499712 -641062448 +9001907486943993856 -1974257754 +9005866015985713152 652118640 +9016280522993975296 388707554 +9020143715350814720 NULL +9023663198045544448 1145627305 +9030480306789818368 -758973175 +9038087402564657152 NULL +9040958359122640896 -1635301453 +9043089884440068096 -1527024213 +9048002942653710336 -1079231269 +9048297564833079296 -1534307678 +9050032047355125760 -1240048334 +9053187076403060736 1075444504 +9054887854393950208 -1517536924 +9062227900376203264 1260101584 +9064847977742032896 -1849091666 +9067985867711291392 43672187 +9073672806863790080 -2144241640 +9075404705968840704 712816880 +9078604269481148416 -298221893 +908 266601601 +9083076230151864320 2111462911 +9083704659251798016 -1359838019 +9084402694981533696 NULL +9085381906890203136 -240529113 +9085434340468473856 76381404 +9086905513121890304 1796013407 +9089435102788009984 2102440065 +9091082386452684800 748185058 +9091085792947666944 254921167 +9094945190752903168 2126491387 +9096395849845194752 100270148 +91 -1288198020 +9104574294205636608 1257621270 +9107991000536498176 -847235873 +9112400579327483904 1111985530 +9114850402293882880 1571267481 +9116137265342169088 -236700442 +9117063974299148288 -297664578 +9119046173224370176 1604076720 +9123116008004288512 1882932986 +913 1845797092 +9131533983989358592 -1234163924 +9132009829414584320 -1856034030 +9136234417125007360 NULL +9136548192574529536 1121512594 +9139805788041134080 881396599 +914 -1257859205 +9148071980848742400 1370723240 +9149216169284091904 -694520014 +9165199002069458944 430686478 +9169248521377374208 1566958573 +917 -2076460151 +9174894805640142848 1336842978 +918 1359437295 +9180098147855769600 1950882901 +9182828596851990528 -1012329052 +9185458640237641728 -1011125931 +9185952983951343616 889733679 +9188173682239275008 -1248781172 +919 -357680544 +9190466190353661952 1918230406 +9191943992860327936 -595769210 +9194388393453060096 1002519329 +9199741683232399360 -1096771844 +9207107990561972224 -765190882 +9207927479837319168 2066707767 +9209153648361848832 471464395 +921 1238986437 +9211455920344088576 166320811 +922 932774185 +923 -1506324615 +927 1044196568 +928 413090363 +939 -982238309 +94 NULL +945 219415594 +947 -896274896 +950 -1541281934 +958 NULL +961 1805139501 +965 1336951982 +967 -1240208945 +976 -1563676282 +979 1022214896 +982 -835198551 +987 1807877618 +997 -742707249 +999 -346607939 +NULL 2142592987 diff --git ql/src/test/results/clientpositive/vector_groupby3.q.out ql/src/test/results/clientpositive/vector_groupby3.q.out new file mode 100644 index 0000000..9116079 --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby3.q.out @@ -0,0 +1,87 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +CREATE TABLE orc_table_1(a INT, b INT) STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@orc_table_1 +POSTHOOK: query: -- SORT_QUERY_RESULTS + +CREATE TABLE orc_table_1(a INT, b INT) STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@orc_table_1 +PREHOOK: query: insert into table orc_table_1 values(12, 1),(5, 1), (9, 2),(12, 1) +PREHOOK: type: QUERY +PREHOOK: Input: default@values__tmp__table__1 +PREHOOK: Output: default@orc_table_1 +POSTHOOK: query: insert into table orc_table_1 values(12, 1),(5, 1), (9, 2),(12, 1) +POSTHOOK: type: QUERY +POSTHOOK: Input: default@values__tmp__table__1 +POSTHOOK: Output: default@orc_table_1 +POSTHOOK: Lineage: orc_table_1.a EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ] +POSTHOOK: Lineage: orc_table_1.b EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] +PREHOOK: query: explain +select b, max(a) from orc_table_1 group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(a) from orc_table_1 group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: orc_table_1 + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: int), a (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1) + keys: _col0 (type: int) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int) + sort order: + + Map-reduce partition columns: _col0 (type: int) + Statistics: Num rows: 4 Data size: 32 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0) + keys: KEY._col0 (type: int) + mode: mergepartial + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2 Data size: 16 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 2 Data size: 16 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(a) from orc_table_1 group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@orc_table_1 +#### A masked pattern was here #### +POSTHOOK: query: select b, max(a) from orc_table_1 group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@orc_table_1 +#### A masked pattern was here #### +1 12 +2 9 diff --git ql/src/test/results/clientpositive/vector_groupby4.q.out ql/src/test/results/clientpositive/vector_groupby4.q.out new file mode 100644 index 0000000..e2140ed --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby4.q.out @@ -0,0 +1,2022 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), i (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1), min(_col1), sum(_col1), count(_col1) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int), _col2 (type: int), _col3 (type: bigint), _col4 (type: bigint) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), min(VALUE._col1), sum(VALUE._col2), count(VALUE._col3) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(i), min(i), sum(i), count(i) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 -603273425 -603273425 -603273425 1 +-6919476845891313664 710856472 710856472 710856472 1 +-6920172215209426944 -764412063 -764412063 -764412063 1 +-6921654334727036928 -1066775085 -1066775085 -1066775085 1 +-6933565857643814912 581259902 581259902 581259902 1 +-6934304742087655424 955171928 955171928 955171928 1 +-6935038507792801792 174310705 174310705 174310705 1 +-6935548339131138048 -1062159435 -1062159435 -1062159435 1 +-6938706403992854528 980732494 980732494 980732494 1 +-6941777546186579968 121663320 121663320 121663320 1 +-6947955278050181120 641695802 641695802 641695802 1 +-6951350560260784128 1342923026 1342923026 1342923026 1 +-6957946688477274112 1505168716 1505168716 1505168716 1 +-6960947572095770624 1136976809 1136976809 1136976809 1 +-6962271229404348416 1106995930 1106995930 1106995930 1 +-6962292590214234112 -1147471772 -1147471772 -1147471772 1 +-6968771079156654080 -939348081 -939348081 -939348081 1 +-6968892545529896960 470993066 470993066 470993066 1 +-6970396058557005824 2140632003 2140632003 2140632003 1 +-6974654664348033024 -968377273 -968377273 -968377273 1 +-6975459232300236800 1151752586 1151752586 1151752586 1 +-6986178228432322560 -1369253050 -1369253050 -1369253050 1 +-6988811476286873600 -1968097621 -1968097621 -1968097621 1 +-6988970700649168896 -1230459100 -1230459100 -1230459100 1 +-6992217501957169152 1472487454 1472487454 1472487454 1 +-6997233584896229376 -76654979 -76654979 -76654979 1 +-7000925438663041024 596045726 596045726 596045726 1 +-7003696402314215424 -1458382451 -1458382451 -1458382451 1 +-7011425384222244864 NULL NULL NULL 0 +-7017212700635545600 304860245 304860245 304860245 1 +-7020852530219171840 824836988 824836988 824836988 1 +-7030489936116252672 1115197541 1115197541 1115197541 1 +-7035132060308643840 NULL NULL NULL 0 +-7036607470351654912 -1933192293 -1933192293 -1933192293 1 +-7037375807670501376 -1168823523 -1168823523 -1168823523 1 +-7037638331316469760 14573904 14573904 14573904 1 +-7038455462786334720 524317972 524317972 524317972 1 +-7040248820505149440 196581473 196581473 196581473 1 +-7041362811802148864 -455114104 -455114104 -455114104 1 +-7042183597114081280 658636280 658636280 658636280 1 +-7046180371529351168 -117723745 -117723745 -117723745 1 +-7049618574399692800 -978892011 -978892011 -978892011 1 +-7052619594823221248 -1117358187 -1117358187 -1117358187 1 +-7055619148037554176 -838656526 -838656526 -838656526 1 +-7055760785575665664 759899363 759899363 759899363 1 +-7057750467944931328 -71449585 -71449585 -71449585 1 +-7058986555327307776 1942004879 1942004879 1942004879 1 +-7063777488249085952 -507250351 -507250351 -507250351 1 +-7078068944081002496 2013178181 2013178181 2013178181 1 +-7079898537463537664 -1205034356 -1205034356 -1205034356 1 +-7081500255163727872 -1969751342 -1969751342 -1969751342 1 +-7083646746411720704 780938234 780938234 780938234 1 +-7085247548404178944 1640192895 1640192895 1640192895 1 +-7093825013581979648 -628790799 -628790799 -628790799 1 +-7094189393339678720 1796486238 1796486238 1796486238 1 +-7094827141662539776 -632803945 -632803945 -632803945 1 +-7104310188119834624 -1928197479 -1928197479 -1928197479 1 +-7106210529681350656 1718167702 1718167702 1718167702 1 +-7109790267244814336 -291577538 -291577538 -291577538 1 +-7115054815375073280 NULL NULL NULL 0 +-7120456708338688000 1751468853 1751468853 1751468853 1 +-7127548949860818944 260463232 260463232 260463232 1 +-7138415011665043456 -1345391395 -1345391395 -1345391395 1 +-7139677575412686848 -1556127172 -1556127172 -1556127172 1 +-7140008543769042944 -1938290238 -1938290238 -1938290238 1 +-7144791190333546496 -876122064 -876122064 -876122064 1 +-7145585429014888448 -817093900 -817093900 -817093900 1 +-7147490721376591872 1759741857 1759741857 1759741857 1 +-7152177800841502720 -37773326 -37773326 -37773326 1 +-7155539549555105792 -345542922 -345542922 -345542922 1 +-7158472098920390656 -71305062 -71305062 -71305062 1 +-7159700138947862528 -76430653 -76430653 -76430653 1 +-7161165959057334272 1352649032 1352649032 1352649032 1 +-7162299524557471744 1813010930 1813010930 1813010930 1 +-7172594404186693632 -1949359208 -1949359208 -1949359208 1 +-7185369278665605120 -374337252 -374337252 -374337252 1 +-7192529627893858304 -45439614 -45439614 -45439614 1 +-7194281951646187520 -797889292 -797889292 -797889292 1 +-7195217207163166720 -1977762695 -1977762695 -1977762695 1 +-7198372044947275776 -1424770359 -1424770359 -1424770359 1 +-7199983995864711168 -1870912732 -1870912732 -1870912732 1 +-7201085131997011968 -1356601829 -1356601829 -1356601829 1 +-7209060152494817280 -2071851852 -2071851852 -2071851852 1 +-7213775605408178176 1222935237 1222935237 1222935237 1 +-7220731681653604352 -851663638 -851663638 -851663638 1 +-7221474017515347968 -1421860505 -1421860505 -1421860505 1 +-7228589258642194432 1958701268 1958701268 1958701268 1 +-7240213957902663680 -841634659 -841634659 -841634659 1 +-7242345057866285056 548375173 548375173 548375173 1 +-7245872320493322240 -134686276 -134686276 -134686276 1 +-7246123871306244096 1686537335 1686537335 1686537335 1 +-7255010240787030016 1373871781 1373871781 1373871781 1 +-7255686273677328384 2100839074 2100839074 2100839074 1 +-7262049693594943488 1295073553 1295073553 1295073553 1 +-7262384251828518912 1647411522 1647411522 1647411522 1 +-7262798781688651776 -423190290 -423190290 -423190290 1 +-7263060340185194496 1590744669 1590744669 1590744669 1 +-7265998318110711808 1437057145 1437057145 1437057145 1 +-7266719102957125632 960187615 960187615 960187615 1 +-7270034223527993344 -1984079412 -1984079412 -1984079412 1 +-7273590251991162880 994798486 994798486 994798486 1 +-7273694358642851840 2009890220 2009890220 2009890220 1 +-7276111129363046400 -1462604138 -1462604138 -1462604138 1 +-7287583262310350848 -1108723753 -1108723753 -1108723753 1 +-7292078334519894016 -785261879 -785261879 -785261879 1 +-7296096276653391872 160290374 160290374 160290374 1 +-7303847963918393344 -1769423338 -1769423338 -1769423338 1 +-7319315187617587200 -235238928 -235238928 -235238928 1 +-7326863346317598720 958866509 958866509 958866509 1 +-7328087811698909184 -1017629298 -1017629298 -1017629298 1 +-7329767178250018816 -448060992 -448060992 -448060992 1 +-7329807949048193024 -369183838 -369183838 -369183838 1 +-7330203470474985472 -1065248998 -1065248998 -1065248998 1 +-7330413050756235264 -2024003241 -2024003241 -2024003241 1 +-7333278178640953344 1393506704 1393506704 1393506704 1 +-7333362172439035904 -835002549 -835002549 -835002549 1 +-7340231535789727744 526502851 526502851 526502851 1 +-7344146703223496704 789871166 789871166 789871166 1 +-7344947507044466688 -340951385 -340951385 -340951385 1 +-7345562788132315136 1750433588 1750433588 1750433588 1 +-7356685674003021824 1319589591 1319589591 1319589591 1 +-7357888618985873408 NULL NULL NULL 0 +-7362189611124563968 -496915240 -496915240 -496915240 1 +-7366430883634929664 1592153312 1592153312 1592153312 1 +-7378096180613840896 218917585 218917585 218917585 1 +-7380731416973295616 -1114208576 -1114208576 -1114208576 1 +-7395343938785738752 830944953 830944953 830944953 1 +-7395553021620731904 1056997296 1056997296 1056997296 1 +-7399631791131074560 -932921363 -932921363 -932921363 1 +-7404052043914526720 -1349876582 -1349876582 -1349876582 1 +-7404057145074712576 56316391 56316391 56316391 1 +-7409317158045442048 -1463884101 -1463884101 -1463884101 1 +-7409653086454030336 -624029057 -624029057 -624029057 1 +-7412431471807283200 622925063 622925063 622925063 1 +-7413317118463164416 -507015439 -507015439 -507015439 1 +-7419068456205385728 -4393552 -4393552 -4393552 1 +-7420448501073051648 -1155174991 -1155174991 -1155174991 1 +-7425160895830573056 -765102534 -765102534 -765102534 1 +-7429331808102899712 -1057522129 -1057522129 -1057522129 1 +-7433265617153343488 NULL NULL NULL 0 +-7442593976514420736 1851805558 1851805558 1851805558 1 +-7444070205513138176 -520725912 -520725912 -520725912 1 +-7451660755269853184 1338047392 1338047392 1338047392 1 +-7453525026342617088 1505665168 1505665168 1505665168 1 +-7455898404374921216 1544482684 1544482684 1544482684 1 +-7456869587112255488 -224865887 -224865887 -224865887 1 +-7461750143936897024 -1343425152 -1343425152 -1343425152 1 +-7464270453557993472 -1439293109 -1439293109 -1439293109 1 +-7469660864676585472 85774760 85774760 85774760 1 +-7470307155642245120 1137950964 1137950964 1137950964 1 +-7476082621253402624 1083855659 1083855659 1083855659 1 +-7483435388852559872 -914329027 -914329027 -914329027 1 +-7488345684795342848 -1668736016 -1668736016 -1668736016 1 +-7488415863027367936 1286367391 1286367391 1286367391 1 +-7494411162675691520 1595326878 1595326878 1595326878 1 +-7496839341561954304 868714547 868714547 868714547 1 +-7497303453253402624 1415647436 1415647436 1415647436 1 +-7500200359698907136 -423074450 -423074450 -423074450 1 +-7501803640821456896 1809795770 1809795770 1809795770 1 +-7506254246954500096 -511198293 -511198293 -511198293 1 +-7507424948896415744 -828522499 -828522499 -828522499 1 +-7507578199583694848 -1784633305 -1784633305 -1784633305 1 +-7510418793070075904 975932228 975932228 975932228 1 +-7511202710200885248 -2042647152 -2042647152 -2042647152 1 +-7511952204985049088 -1351437382 -1351437382 -1351437382 1 +-7512289590991544320 1409872356 1409872356 1409872356 1 +-7512297136103800832 -1180153422 -1180153422 -1180153422 1 +-7515996202498473984 344989592 344989592 344989592 1 +-7524170566881329152 -1908696083 -1908696083 -1908696083 1 +-7526793959592140800 -570632618 -570632618 -570632618 1 +-7528526815026692096 2125479431 2125479431 2125479431 1 +-7532751268425261056 1752520642 1752520642 1752520642 1 +-7535857766791577600 1846184880 1846184880 1846184880 1 +-7535958203887706112 656636097 656636097 656636097 1 +-7536330682873937920 -1289501869 -1289501869 -1289501869 1 +-7540104552219860992 1081187102 1081187102 1081187102 1 +-7541860097718902784 -625788713 -625788713 -625788713 1 +-7542857121910046720 1495575878 1495575878 1495575878 1 +-7547245548870025216 1784291853 1784291853 1784291853 1 +-7547432761381339136 434679307 434679307 434679307 1 +-7551394356730339328 1179528290 1179528290 1179528290 1 +-7557017910095650816 195281533 195281533 195281533 1 +-7558524160894427136 375106978 375106978 375106978 1 +-7571293705217687552 1240875512 1240875512 1240875512 1 +-7571957778022178816 1042184256 1042184256 1042184256 1 +-7572262898020278272 -1875699183 -1875699183 -1875699183 1 +-7572962089372991488 -841268868 -841268868 -841268868 1 +-7576194692683563008 2080249726 2080249726 2080249726 1 +-7593363318079610880 -1811563127 -1811563127 -1811563127 1 +-7594824008626372608 824743780 824743780 824743780 1 +-7598782894648565760 -983874694 -983874694 -983874694 1 +-7600138468036386816 -722294882 -722294882 -722294882 1 +-7603467428164009984 -619311578 -619311578 -619311578 1 +-7603569103205916672 390124976 390124976 390124976 1 +-7610137349734883328 683320224 683320224 683320224 1 +-7611584069753552896 -1765795567 -1765795567 -1765795567 1 +-7612455481940246528 NULL NULL NULL 0 +-7612466483992051712 -1969235238 -1969235238 -1969235238 1 +-7616522969329262592 1924741890 1924741890 1924741890 1 +-7617860842651017216 386741352 386741352 386741352 1 +-7623047151287754752 -1050029724 -1050029724 -1050029724 1 +-7623359796281999360 1829544791 1829544791 1829544791 1 +-7623405558242500608 283322761 283322761 283322761 1 +-7624057992767782912 -1218581850 -1218581850 -1218581850 1 +-7629401308029976576 -1655030261 -1655030261 -1655030261 1 +-7637494527844343808 2005560498 2005560498 2005560498 1 +-7637755520917741568 648935848 648935848 648935848 1 +-7642381493746483200 583458404 583458404 583458404 1 +-7647020450676146176 609917172 609917172 609917172 1 +-7661192563533062144 -1319753324 -1319753324 -1319753324 1 +-7661250850555633664 -693249555 -693249555 -693249555 1 +-7663293054873812992 -1478812842 -1478812842 -1478812842 1 +-7665186441284968448 791096295 791096295 791096295 1 +-7668388017287020544 NULL NULL NULL 0 +-7669169138124275712 -1484033125 -1484033125 -1484033125 1 +-7673901622181953536 1141303816 1141303816 1141303816 1 +-7679894005808693248 -306214368 -306214368 -306214368 1 +-7686220526274502656 -892839693 -892839693 -892839693 1 +-7687052294777208832 -1989778424 -1989778424 -1989778424 1 +-7692192232238678016 745725681 745725681 745725681 1 +-7695491171376291840 1225312439 1225312439 1225312439 1 +-7700203302632210432 1805308672 1805308672 1805308672 1 +-7703540456272994304 1312270193 1312270193 1312270193 1 +-7707242953271500800 1568180994 1568180994 1568180994 1 +-7707867749256445952 -596963345 -596963345 -596963345 1 +-7708932208121225216 307333276 307333276 307333276 1 +-7709958788604936192 595836061 595836061 595836061 1 +-7712425776235274240 -1432316859 -1432316859 -1432316859 1 +-7720966287634112512 NULL NULL NULL 0 +-7739424919198187520 712625264 712625264 712625264 1 +-7744462446680375296 2029657999 2029657999 2029657999 1 +-7751265769984491520 700341242 700341242 700341242 1 +-7751427073017544704 615619268 615619268 615619268 1 +-7753051494275432448 -1599905147 -1599905147 -1599905147 1 +-7759238919361888256 -2065287410 -2065287410 -2065287410 1 +-7759425383684849664 -938762477 -938762477 -938762477 1 +-7772064021830574080 -1201785350 -1201785350 -1201785350 1 +-7773957003968675840 270090617 270090617 270090617 1 +-7777884099756122112 914583645 914583645 914583645 1 +-7778829032042790912 -807242371 -807242371 -807242371 1 +-7779270198785875968 -1242677422 -1242677422 -1242677422 1 +-7782344916178796544 -1213081886 -1213081886 -1213081886 1 +-7784419454650843136 -1210907929 -1210907929 -1210907929 1 +-7792903881635938304 -191899537 -191899537 -191899537 1 +-7793447076762345472 1196151988 1196151988 1196151988 1 +-7797149520019062784 -1262842192 -1262842192 -1262842192 1 +-7797151404935618560 -507955215 -507955215 -507955215 1 +-7800879252150779904 1352739140 1352739140 1352739140 1 +-7802538500225777664 215759857 215759857 215759857 1 +-7804116532814151680 -1146649990 -1146649990 -1146649990 1 +-7805985795815342080 -2076886223 -2076886223 -2076886223 1 +-7811060170911375360 1513689502 1513689502 1513689502 1 +-7818454479651135488 -559270035 -559270035 -559270035 1 +-7819437864839495680 -370093295 -370093295 -370093295 1 +-7822452149325094912 60847311 60847311 60847311 1 +-7824788571789279232 -1406691044 -1406691044 -1406691044 1 +-7827420207675105280 -36682325 -36682325 -36682325 1 +-7831320202242228224 -1726479726 -1726479726 -1726479726 1 +-7831595638727565312 1626884085 1626884085 1626884085 1 +-7833618000492109824 589546540 589546540 589546540 1 +-7835907977757245440 -87470856 -87470856 -87470856 1 +-7838598833900584960 1028204648 1028204648 1028204648 1 +-7840338174858199040 -300717684 -300717684 -300717684 1 +-7845896959112658944 -1688105985 -1688105985 -1688105985 1 +-7848043121524228096 1667594394 1667594394 1667594394 1 +-7849504559236210688 -2052386812 -2052386812 -2052386812 1 +-7858505678035951616 NULL NULL NULL 0 +-7866079955473989632 196980893 196980893 196980893 1 +-7867219225874571264 -1078579367 -1078579367 -1078579367 1 +-7868306678534193152 -2144138362 -2144138362 -2144138362 1 +-7873753603299540992 -971698865 -971698865 -971698865 1 +-7875953567586451456 816439627 816439627 816439627 1 +-7877598807023386624 340384179 340384179 340384179 1 +-7878145001776152576 -1489628668 -1489628668 -1489628668 1 +-7879864376629567488 -472303419 -472303419 -472303419 1 +-7881262505761710080 -103219371 -103219371 -103219371 1 +-7881351200983613440 720703232 720703232 720703232 1 +-7883252982752665600 1136548971 1136548971 1136548971 1 +-7884460946615984128 1772349172 1772349172 1772349172 1 +-7888051992910274560 1818213677 1818213677 1818213677 1 +-7892780594910871552 -779743333 -779743333 -779743333 1 +-7893577088764174336 268888160 268888160 268888160 1 +-7894382303337832448 1832650234 1832650234 1832650234 1 +-7895991410072928256 1467284000 1467284000 1467284000 1 +-7902517224300036096 -950738312 -950738312 -950738312 1 +-7903158849011843072 -217930632 -217930632 -217930632 1 +-7904188195431661568 -442839889 -442839889 -442839889 1 +-7907355742053883904 794783516 794783516 794783516 1 +-7910019233726242816 -1259611508 -1259611508 -1259611508 1 +-7911421221625077760 476704350 476704350 476704350 1 +-7915999634274369536 1814570016 1814570016 1814570016 1 +-7916510129632296960 -2136052026 -2136052026 -2136052026 1 +-7928062266382778368 152654715 152654715 152654715 1 +-7928440849566146560 -800975421 -800975421 -800975421 1 +-7939634346485858304 1012843193 1012843193 1012843193 1 +-7949309059286163456 88774647 88774647 88774647 1 +-7949445503604604928 1695098246 1695098246 1695098246 1 +-7953426740065312768 22308780 22308780 22308780 1 +-7964801953178091520 661659208 661659208 661659208 1 +-7966960765508280320 -884109192 -884109192 -884109192 1 +-7978782649203228672 491016124 491016124 491016124 1 +-7989766326847807488 -1731820254 -1731820254 -1731820254 1 +-7998947380180819968 -136514115 -136514115 -136514115 1 +-8007017894942638080 1219616145 1219616145 1219616145 1 +-8013397854633648128 -1391183008 -1391183008 -1391183008 1 +-8016589197379289088 -1721763321 -1721763321 -1721763321 1 +-8017791189288869888 -2057666812 -2057666812 -2057666812 1 +-8018511948141748224 661380540 661380540 661380540 1 +-8021859935185928192 1420099773 1420099773 1420099773 1 +-8022573309127000064 1194243726 1194243726 1194243726 1 +-8023708819947323392 198539698 198539698 198539698 1 +-8028275725610909696 -1937640350 -1937640350 -1937640350 1 +-8028910243475038208 873035819 873035819 873035819 1 +-8030058711611629568 -752222556 -752222556 -752222556 1 +-8034414142083170304 -267130580 -267130580 -267130580 1 +-8046189486447017984 925032386 925032386 925032386 1 +-8046238369820344320 819069589 819069589 819069589 1 +-8047774491688255488 -1339495001 -1339495001 -1339495001 1 +-8051395538179063808 -469749219 -469749219 -469749219 1 +-8051587217208967168 51376784 51376784 51376784 1 +-8051871680800120832 NULL NULL NULL 0 +-8054581198284668928 1395450272 1395450272 1395450272 1 +-8067243114610532352 214068706 214068706 214068706 1 +-8070535484085895168 829101712 829101712 829101712 1 +-8076479329071955968 2017314998 2017314998 2017314998 1 +-8082793390939193344 -1878838836 -1878838836 -1878838836 1 +-8084716955963252736 -1609864597 -1609864597 -1609864597 1 +-8086577583338061824 -340462064 -340462064 -340462064 1 +-8088337436168830976 2124297747 2124297747 2124297747 1 +-8099313480512716800 -392713245 -392713245 -392713245 1 +-8103788088118018048 -533227056 -533227056 -533227056 1 +-8104684579106914304 -1091003492 -1091003492 -1091003492 1 +-8108693586698706944 -896261100 -896261100 -896261100 1 +-8115963579415650304 -951728053 -951728053 -951728053 1 +-8117838333114212352 -1642207005 -1642207005 -1642207005 1 +-8122639684164501504 1425456189 1425456189 1425456189 1 +-8127494999848919040 1701817607 1701817607 1701817607 1 +-8131997716860526592 -457341338 -457341338 -457341338 1 +-8136227554401107968 127917714 127917714 127917714 1 +-8140349174954893312 NULL NULL NULL 0 +-8142667274351345664 453613037 453613037 453613037 1 +-8147405381260345344 659397992 659397992 659397992 1 +-8158011642485825536 NULL NULL NULL 0 +-8161047750470279168 -621365995 -621365995 -621365995 1 +-8172827216441573376 -113253627 -113253627 -113253627 1 +-8182421179156905984 -1892816721 -1892816721 -1892816721 1 +-8191825921746305024 703111607 703111607 703111607 1 +-8194062064124362752 1482983157 1482983157 1482983157 1 +-8203008052020879360 -1127100849 -1127100849 -1127100849 1 +-8203075743525806080 -626484313 -626484313 -626484313 1 +-8205148279289085952 768198315 768198315 768198315 1 +-8214462866994339840 NULL NULL NULL 0 +-8219876839318716416 1452244326 1452244326 1452244326 1 +-8232763638546694144 -514010922 -514010922 -514010922 1 +-8240034910581153792 -665623523 -665623523 -665623523 1 +-8240684139569233920 -1721368386 -1721368386 -1721368386 1 +-8243487285852766208 1153811197 1153811197 1153811197 1 +-8244116388227104768 1893512909 1893512909 1893512909 1 +-8244657976255889408 688547276 688547276 688547276 1 +-8260340354454503424 1456367662 1456367662 1456367662 1 +-8269917980278980608 -1700451326 -1700451326 -1700451326 1 +-8270479187688816640 1519993904 1519993904 1519993904 1 +-8275337702906757120 210003006 210003006 210003006 1 +-8280276629934981120 -588160623 -588160623 -588160623 1 +-8293833565967810560 -1464514590 -1464514590 -1464514590 1 +-8297230235506343936 283618733 283618733 283618733 1 +-8300526097982226432 1314531900 1314531900 1314531900 1 +-8300764106868350976 -1196101029 -1196101029 -1196101029 1 +-8302817097848307712 -1021859098 -1021859098 -1021859098 1 +-8317591428117274624 -670925379 -670925379 -670925379 1 +-8318886086186213376 1033609549 1033609549 1033609549 1 +-8322751250650218496 -1212524805 -1212524805 -1212524805 1 +-8330233444291084288 -409404534 -409404534 -409404534 1 +-8335810316927213568 -1562552002 -1562552002 -1562552002 1 +-8340523561480437760 39723411 39723411 39723411 1 +-8345065519816695808 654939016 654939016 654939016 1 +-8347088645602050048 76299337 76299337 76299337 1 +-8357136656913686528 1517915751 1517915751 1517915751 1 +-8358130693961195520 -122391516 -122391516 -122391516 1 +-8359839265974165504 1572563948 1572563948 1572563948 1 +-8368269352975982592 NULL NULL NULL 0 +-8368487814665895936 156101201 156101201 156101201 1 +-8369487968903897088 -194270271 -194270271 -194270271 1 +-8379109122834997248 1566607834 1566607834 1566607834 1 +-8379964450833367040 -181122344 -181122344 -181122344 1 +-8384695077413412864 -1818456584 -1818456584 -1818456584 1 +-8387347109404286976 -2011708220 -2011708220 -2011708220 1 +-8387536830476820480 -1703620970 -1703620970 -1703620970 1 +-8395998375405912064 -1141801925 -1141801925 -1141801925 1 +-8400045653258444800 1523657918 1523657918 1523657918 1 +-8411282676082565120 253621570 253621570 253621570 1 +-8418913260807217152 -41864614 -41864614 -41864614 1 +-8425998949410889728 -656478771 -656478771 -656478771 1 +-8426531414463545344 1701761102 1701761102 1701761102 1 +-8430283518005846016 -16094879 -16094879 -16094879 1 +-8430370933326536704 NULL NULL NULL 0 +-8431492599012163584 -1131684944 -1131684944 -1131684944 1 +-8438554249514491904 232405034 232405034 232405034 1 +-8445801063348281344 -1247325089 -1247325089 -1247325089 1 +-8453491903284994048 1524010024 1524010024 1524010024 1 +-8454143651040444416 516479816 516479816 516479816 1 +-8465978403747037184 1347876055 1347876055 1347876055 1 +-8469607298426437632 374283948 374283948 374283948 1 +-8471480409335513088 1891680787 1891680787 1891680787 1 +-8485389240529354752 -1528033060 -1528033060 -1528033060 1 +-8488247955875618816 1802498539 1802498539 1802498539 1 +-8490382417169408000 987917448 987917448 987917448 1 +-8494118409594650624 631207613 631207613 631207613 1 +-8503342882470019072 1367179645 1367179645 1367179645 1 +-8503573595507761152 2068018858 2068018858 2068018858 1 +-8507279516485566464 631711489 631711489 631711489 1 +-8509547439040757760 -1749415887 -1749415887 -1749415887 1 +-8518060755719585792 -1100641049 -1100641049 -1100641049 1 +-8518258741831680000 -809805200 -809805200 -809805200 1 +-8521578237232529408 -373034494 -373034494 -373034494 1 +-8522878384019169280 633813435 633813435 633813435 1 +-8523434203900674048 -590374062 -590374062 -590374062 1 +-8525212657458348032 -1280919769 -1280919769 -1280919769 1 +-8535957064499879936 -99205196 -99205196 -99205196 1 +-8536369662934401024 447426619 447426619 447426619 1 +-8543982423727128576 -607667405 -607667405 -607667405 1 +-8544299740525461504 -846450672 -846450672 -846450672 1 +-8545239748068941824 -897586947 -897586947 -897586947 1 +-8546758906409312256 -1236536142 -1236536142 -1236536142 1 +-8552393882631389184 1920863389 1920863389 1920863389 1 +-8555709701170552832 -1364322216 -1364322216 -1364322216 1 +-8559008501282832384 895945459 895945459 895945459 1 +-8559252110266564608 259204652 259204652 259204652 1 +-8562524688907485184 1775355987 1775355987 1775355987 1 +-8566856504746352640 2018442973 2018442973 2018442973 1 +-8566940231897874432 -1409508377 -1409508377 -1409508377 1 +-8570933074545745920 -749042352 -749042352 -749042352 1 +-8572823448513445888 -101960322 -101960322 -101960322 1 +-8572949572756774912 1787826883 1787826883 1787826883 1 +-8581765103969312768 -890374552 -890374552 -890374552 1 +-8581979259158929408 -674478103 -674478103 -674478103 1 +-8584520406368493568 -19116270 -19116270 -19116270 1 +-8585134536083660800 -1196808950 -1196808950 -1196808950 1 +-8585966098173870080 318631333 318631333 318631333 1 +-8593419958317056000 6266567 6266567 6266567 1 +-8603817012434198528 1114521964 1114521964 1114521964 1 +-8604758220106014720 -1798573685 -1798573685 -1798573685 1 +-8607195685207408640 -1111937842 -1111937842 -1111937842 1 +-8615168537390571520 1469775272 1469775272 1469775272 1 +-8619303037130301440 -2074079977 -2074079977 -2074079977 1 +-8623238306523824128 -1442424087 -1442424087 -1442424087 1 +-8623965248051789824 1637295757 1637295757 1637295757 1 +-8632237187473088512 NULL NULL NULL 0 +-8649711322250362880 -500921094 -500921094 -500921094 1 +-8651641150831362048 -1533934649 -1533934649 -1533934649 1 +-8654433008222797824 -1728171376 -1728171376 -1728171376 1 +-8654797319350927360 895763504 895763504 895763504 1 +-8658387566611996672 NULL NULL NULL 0 +-8659643752269242368 1204834275 1204834275 1204834275 1 +-8659692318743314432 25400543 25400543 25400543 1 +-8660149447361404928 1317690178 1317690178 1317690178 1 +-8664374244449050624 1059212450 1059212450 1059212450 1 +-8664806103426252800 964810954 964810954 964810954 1 +-8665218198816497664 -1031592590 -1031592590 -1031592590 1 +-8665764757143658496 -45460011 -45460011 -45460011 1 +-8675661101615489024 -1918651448 -1918651448 -1918651448 1 +-8675892979328212992 1478365409 1478365409 1478365409 1 +-8683802826440105984 -1344287228 -1344287228 -1344287228 1 +-8688153842294595584 -1741895392 -1741895392 -1741895392 1 +-8689606130068611072 488559595 488559595 488559595 1 +-8694818694700048384 94220511 94220511 94220511 1 +-8696162322976997376 1228837108 1228837108 1228837108 1 +-8703026916864802816 -397683105 -397683105 -397683105 1 +-8704234107608203264 -1318045616 -1318045616 -1318045616 1 +-8705403811649355776 206121314 206121314 206121314 1 +-8710298418608619520 -1817938378 -1817938378 -1817938378 1 +-8714995808835444736 206454818 206454818 206454818 1 +-8719510423723155456 -327648289 -327648289 -327648289 1 +-8730803262481580032 NULL NULL NULL 0 +-8731068123910987776 -1434562279 -1434562279 -1434562279 1 +-8746702976270385152 1767359228 1767359228 1767359228 1 +-8754966081778565120 -125419186 -125419186 -125419186 1 +-8754992450211692544 1785455842 1785455842 1785455842 1 +-8756989568739835904 -158420748 -158420748 -158420748 1 +-8760655406971863040 -1249011023 -1249011023 -1249011023 1 +-8763062627136864256 -454598288 -454598288 -454598288 1 +-8768744394742235136 -726879427 -726879427 -726879427 1 +-8782213262837530624 1565313938 1565313938 1565313938 1 +-8783777723063099392 877053605 877053605 877053605 1 +-8789178184387641344 -1045771991 -1045771991 -1045771991 1 +-8797972842900307968 284646137 284646137 284646137 1 +-8807361476639629312 NULL NULL NULL 0 +-8813211231120031744 1575300276 1575300276 1575300276 1 +-8831091081349758976 -1832606512 -1832606512 -1832606512 1 +-8832750849949892608 -66010816 -66010816 -66010816 1 +-8833019327569510400 -189393743 -189393743 -189393743 1 +-8835408234247168000 -938112972 -938112972 -938112972 1 +-8836899523028312064 397255100 397255100 397255100 1 +-8843859708698583040 2008211296 2008211296 2008211296 1 +-8844949406948671488 315973457 315973457 315973457 1 +-8845239510002753536 -1358159222 -1358159222 -1358159222 1 +-8852770376039219200 311478497 311478497 311478497 1 +-8853553406533894144 -1820436871 -1820436871 -1820436871 1 +-8856151919723003904 -575513309 -575513309 -575513309 1 +-8856821118526734336 618321042 618321042 618321042 1 +-8857335871148171264 1061043704 1061043704 1061043704 1 +-8858063395050110976 -1117019030 -1117019030 -1117019030 1 +-8859107121649893376 -37876543 -37876543 -37876543 1 +-8866442231663067136 -1079633326 -1079633326 -1079633326 1 +-8870186814744420352 NULL NULL NULL 0 +-8870673219965001728 -1620148746 -1620148746 -1620148746 1 +-8875546987176206336 414645489 414645489 414645489 1 +-8877053610728161280 706823078 706823078 706823078 1 +-8877431933441327104 1650676897 1650676897 1650676897 1 +-8879742387365429248 1912175355 1912175355 1912175355 1 +-8881446757271846912 1224662770 1224662770 1224662770 1 +-8887058200926093312 -191704948 -191704948 -191704948 1 +-8892963883085578240 -2087815643 -2087815643 -2087815643 1 +-8896045754034978816 1392980712 1392980712 1392980712 1 +-8914039133569400832 1332042427 1332042427 1332042427 1 +-8916987977485312000 -839176151 -839176151 -839176151 1 +-8922409715403112448 -536315467 -536315467 -536315467 1 +-8923529803981905920 1148500740 1148500740 1148500740 1 +-8927968289860370432 1033836308 1033836308 1033836308 1 +-8930307926221807616 -966979668 -966979668 -966979668 1 +-8938849835283677184 1318606691 1318606691 1318606691 1 +-8940944155843461120 -858439361 -858439361 -858439361 1 +-8941201923743703040 NULL NULL NULL 0 +-8946656952763777024 -759911896 -759911896 -759911896 1 +-8948335470186373120 -1078397698 -1078397698 -1078397698 1 +-8959796625322680320 1318956413 1318956413 1318956413 1 +-8961059046745669632 1783034168 1783034168 1783034168 1 +-8962547695651323904 1091736925 1091736925 1091736925 1 +-8965578088652095488 -1216166764 -1216166764 -1216166764 1 +-8989473881707921408 1310360849 1310360849 1310360849 1 +-8990843030306717696 -311437801 -311437801 -311437801 1 +-8992599250893979648 1677494300 1677494300 1677494300 1 +-8996954350906294272 -1769037737 -1769037737 -1769037737 1 +-9002912355472736256 -561932449 -561932449 -561932449 1 +-9004892183139811328 -1949698319 -1949698319 -1949698319 1 +-9008631121684832256 704038411 704038411 704038411 1 +-9012093603044245504 538766635 538766635 538766635 1 +-9013952631912325120 -1052493316 -1052493316 -1052493316 1 +-9014145341570203648 273256071 273256071 273256071 1 +-9022154842129547264 1130043800 1130043800 1130043800 1 +-9032650742739836928 1102561039 1102561039 1102561039 1 +-9049720998034137088 1747664003 1747664003 1747664003 1 +-9051477157204770816 -1648991909 -1648991909 -1648991909 1 +-9058029636530003968 -1197602595 -1197602595 -1197602595 1 +-9066993118333706240 -425196209 -425196209 -425196209 1 +-9071565764086521856 2058640744 2058640744 2058640744 1 +-9075302542655684608 -295186284 -295186284 -295186284 1 +-9075486079396069376 -1805915233 -1805915233 -1805915233 1 +-9078662294976061440 -235819331 -235819331 -235819331 1 +-9079801920509001728 -705887590 -705887590 -705887590 1 +-9080568167841226752 906074599 906074599 906074599 1 +-9080956291212132352 1330219997 1330219997 1330219997 1 +-9084940280061485056 128430191 128430191 128430191 1 +-9088239683374350336 -18917438 -18917438 -18917438 1 +-9091113592821972992 1861276585 1861276585 1861276585 1 +-9095689235523264512 1687784247 1687784247 1687784247 1 +-9101953184875757568 -1918847735 -1918847735 -1918847735 1 +-9102482277760983040 742866312 742866312 742866312 1 +-9105358806324035584 1679381813 1679381813 1679381813 1 +-9105701280936501248 1109664665 1109664665 1109664665 1 +-9109392978217484288 407098216 407098216 407098216 1 +-9117959922369060864 936133387 936133387 936133387 1 +-9126793997498957824 770574055 770574055 770574055 1 +-9136398397785948160 376076075 376076075 376076075 1 +-9142610685888192512 -387395264 -387395264 -387395264 1 +-9145593811310010368 -202409329 -202409329 -202409329 1 +-9148197394287779840 -1568536214 -1568536214 -1568536214 1 +-9149719074367946752 234452496 234452496 234452496 1 +-9157613004431998976 1362740312 1362740312 1362740312 1 +-9175038118837149696 -1701492480 -1701492480 -1701492480 1 +-9175279464813223936 2080412555 2080412555 2080412555 1 +-9178166810751909888 -1407817977 -1407817977 -1407817977 1 +-9187662685618348032 NULL NULL NULL 0 +-9189155542884474880 -1955545912 -1955545912 -1955545912 1 +-9203804401302323200 -671853199 -671853199 -671853199 1 +-9203942396257984512 -1625800024 -1625800024 -1625800024 1 +-9206329156028112896 2084666529 2084666529 2084666529 1 +-9210275791460499456 601376532 601376532 601376532 1 +-9213132862973829120 -1216206795 -1216206795 -1216206795 1 +-9215144824304721920 -399643110 -399643110 -399643110 1 +-9218875542187065344 785382955 785382955 785382955 1 +-9219066990552760320 2090044777 2090044777 2090044777 1 +1021 -1884780525 -1884780525 -1884780525 1 +1030 -300429552 -300429552 -300429552 1 +1032 -1914210382 -1914210382 -1914210382 1 +1039 914062370 914062370 914062370 1 +1046 -990781312 -990781312 -990781312 1 +1048 -249150336 -249150336 -249150336 1 +1053 -1369302744 -1369302744 -1369302744 1 +1055 371383749 371383749 371383749 1 +1058 -1497098905 -1497098905 -1497098905 1 +1065 1194089079 1194089079 1194089079 1 +1066 1767019352 1767019352 1767019352 1 +1074 161210995 161210995 161210995 1 +1075 2144365072 -534894953 1609470119 2 +108 -835107230 -835107230 -835107230 1 +1086 -1341627565 -1341627565 -1341627565 1 +1093 NULL NULL NULL 0 +1094 -359194591 -359194591 -359194591 1 +1095 291866793 291866793 291866793 1 +1099 1390704286 1390704286 1390704286 1 +1115 -144862954 -144862954 -144862954 1 +112 -2147071655 -2147071655 -2147071655 1 +1127 -423378447 -423378447 -423378447 1 +1128 -932525608 -932525608 -932525608 1 +1132 239078089 239078089 239078089 1 +1134 187718349 187718349 187718349 1 +1141 -540820650 -540820650 -540820650 1 +1142 1184001017 1184001017 1184001017 1 +1145 669484010 669484010 669484010 1 +1153 1646811064 1646811064 1646811064 1 +1157 590719541 590719541 590719541 1 +1158 990246086 990246086 990246086 1 +1165 1153089364 477857533 1630946897 2 +1168 NULL NULL NULL 0 +1177 1182595271 1182595271 1182595271 1 +1187 69110370 69110370 69110370 1 +1189 215508794 215508794 215508794 1 +1198 -1857500489 -1857500489 -1857500489 1 +120 29680001 29680001 29680001 1 +1201 945911081 945911081 945911081 1 +1217 -1802746460 -1802746460 -1802746460 1 +1234 -1921909135 -1921909135 -1921909135 1 +1243 1938788165 1938788165 1938788165 1 +1247 -866304147 -866304147 -866304147 1 +1252 30036142 30036142 30036142 1 +1261 -343173797 -343173797 -343173797 1 +1270 1969239701 1969239701 1969239701 1 +1280 991397535 991397535 991397535 1 +1282 -1140071443 -1140071443 -1140071443 1 +1286 -480058682 -480058682 -480058682 1 +1287 -1362178985 -1362178985 -1362178985 1 +1290 177837042 177837042 177837042 1 +1291 1398486099 1398486099 1398486099 1 +1299 765656980 765656980 765656980 1 +130 -2081501748 -2081501748 -2081501748 1 +1307 882331889 882331889 882331889 1 +1312 742059797 742059797 742059797 1 +1316 997193329 997193329 997193329 1 +1321 731241198 731241198 731241198 1 +1337 -1948257321 -1948257321 -1948257321 1 +1341 492120544 492120544 492120544 1 +1342 1203482872 1203482872 1203482872 1 +1343 -217785690 -217785690 -217785690 1 +1345 -600315936 -600315936 -600315936 1 +1346 -158233823 -158233823 -158233823 1 +135 198017473 198017473 198017473 1 +1366 748358417 748358417 748358417 1 +1368 1650573576 -223311809 1427261767 2 +1371 821316302 -2041825946 -1220509644 2 +138 843282593 843282593 843282593 1 +1386 2081152819 2081152819 2081152819 1 +1398 955267058 955267058 955267058 1 +1409 865013617 865013617 865013617 1 +1422 -1402821064 -1402821064 -1402821064 1 +1423 631954352 631954352 631954352 1 +1436 1765173148 1765173148 1765173148 1 +1439 531459992 531459992 531459992 1 +1447 NULL NULL NULL 0 +1450 740883263 740883263 740883263 1 +1454 NULL NULL NULL 0 +1458 -1001529082 -1001529082 -1001529082 1 +1462 287239980 287239980 287239980 1 +1466 574069547 574069547 574069547 1 +1470 1406029775 1406029775 1406029775 1 +1477 -707228984 -707228984 -707228984 1 +1481 1022707418 819875108 1842582526 2 +1489 766737781 766737781 766737781 1 +1493 557053197 557053197 557053197 1 +1495 -1222897252 -1222897252 -1222897252 1 +1501 1081920048 1081920048 1081920048 1 +1506 1893632113 1893632113 1893632113 1 +1508 1632769786 1632769786 1632769786 1 +1509 1920662116 1304812803 3225474919 2 +1518 824235855 824235855 824235855 1 +1520 NULL NULL NULL 0 +1521 -993029335 -993029335 -993029335 1 +1524 -1851280202 -1851280202 -1851280202 1 +1530 1934970004 1934970004 1934970004 1 +1537 278601840 -20660936 257940904 2 +154 998793176 -445353909 553439267 2 +1541 -1430903652 -1430903652 -1430903652 1 +1542 NULL NULL NULL 0 +1545 564366133 564366133 564366133 1 +1556 -1202975006 -1202975006 -1202975006 1 +1559 -206177972 -206177972 -206177972 1 +1561 NULL NULL NULL 0 +1566 747122546 747122546 747122546 1 +1604 -2077771325 -2077771325 -2077771325 1 +1606 -1901806083 -1901806083 -1901806083 1 +1608 142722637 142722637 142722637 1 +1613 -1422780798 -1422780798 -1422780798 1 +1614 -296195507 -296195507 -296195507 1 +1620 -1989378509 -1989378509 -1989378509 1 +1638 92777932 92777932 92777932 1 +1641 NULL NULL NULL 0 +1643 1346627771 1346627771 1346627771 1 +1648 -496870819 -496870819 -496870819 1 +1651 -1575588203 -1575588203 -1575588203 1 +1667 -499533481 -499533481 -499533481 1 +1671 1504919241 1504919241 1504919241 1 +1674 1488440165 1488440165 1488440165 1 +1676 -393723522 -393723522 -393723522 1 +1678 -1104268719 -1104268719 -1104268719 1 +168 -53587991 -53587991 -53587991 1 +1681 929751599 929751599 929751599 1 +169 -1759354458 -1759354458 -1759354458 1 +1693 -1545572711 -1545572711 -1545572711 1 +1701 1404346934 -648766606 755580328 2 +1704 -605370177 -605370177 -605370177 1 +1719 1008698636 -1477897348 -469198712 2 +1726 NULL NULL NULL 0 +1728 626251612 626251612 626251612 1 +1745 368170021 368170021 368170021 1 +1751 -667383951 -667383951 -667383951 1 +1752 -1538978853 -1538978853 -1538978853 1 +1769 805672638 805672638 805672638 1 +1774 -1974777102 -1974777102 -1974777102 1 +1775 1928365430 1928365430 1928365430 1 +1777 1061638369 1061638369 1061638369 1 +1780 -71433796 -71433796 -71433796 1 +1781 NULL NULL NULL 0 +1785 -524189419 -524189419 -524189419 1 +1786 -1009249550 -1009249550 -1009249550 1 +1788 -997463353 -997463353 -997463353 1 +1789 -1098379914 -1098379914 -1098379914 1 +1791 -1900369503 -1900369503 -1900369503 1 +1796 -1625062942 -1625062942 -1625062942 1 +1806 -40284975 -40284975 -40284975 1 +181 1742536084 1742536084 1742536084 1 +1811 -922200749 -922200749 -922200749 1 +1813 -738157651 -738157651 -738157651 1 +1826 505902480 505902480 505902480 1 +1827 -956668825 -956668825 -956668825 1 +1835 1768399622 1768399622 1768399622 1 +1837 290921475 290921475 290921475 1 +1845 -909024258 -909024258 -909024258 1 +1846 418182899 418182899 418182899 1 +1856 44009986 -1873004551 -1828994565 2 +1862 674547678 674547678 674547678 1 +1863 -1017027298 -1017027298 -1017027298 1 +1864 NULL NULL NULL 0 +1866 -400501472 -400501472 -400501472 1 +187 2133950868 2133950868 2133950868 1 +1870 25644069 25644069 25644069 1 +188 316438994 316438994 316438994 1 +1880 1293876597 1293876597 1293876597 1 +1890 -1660344634 -1660344634 -1660344634 1 +1892 596595603 596595603 596595603 1 +1899 734267314 734267314 734267314 1 +19 -436386350 -1900894010 -2337280360 2 +1906 1070989126 1070989126 1070989126 1 +1910 1978200605 1978200605 1978200605 1 +1914 -1146055387 -1462331586 -2608386973 2 +1926 -490337498 -490337498 -490337498 1 +1937 -987995271 -987995271 -987995271 1 +1940 950997304 950997304 950997304 1 +1941 -54793232 -54793232 -54793232 1 +1948 735732067 -1446132523 -1338846770 3 +1955 -316678117 -316678117 -316678117 1 +1965 1173098061 1173098061 1173098061 1 +1972 -1404921781 -1404921781 -1404921781 1 +1981 -980869630 -980869630 -980869630 1 +1983 -1954890941 -1954890941 -1954890941 1 +1987 65956045 65956045 65956045 1 +1990 1050809633 1050809633 1050809633 1 +1995 1012230484 1012230484 1012230484 1 +1999 -9958400 -9958400 -9958400 1 +2001 217476429 217476429 217476429 1 +2002 1535954353 1535954353 1535954353 1 +2004 1464703053 1464703053 1464703053 1 +2009 -1471147786 -1471147786 -1471147786 1 +2011 33234633 33234633 33234633 1 +2013 1142098316 1142098316 1142098316 1 +2016 135341845 135341845 135341845 1 +2017 44628821 44628821 44628821 1 +2020 37730738 -244778184 -207047446 2 +2025 989475408 989475408 989475408 1 +2026 -1454941039 -1454941039 -1454941039 1 +2029 546555204 546555204 546555204 1 +203 2070969353 2070969353 2070969353 1 +204 2018249426 2018249426 2018249426 1 +2046 363981930 363981930 363981930 1 +2056 1941527322 1941527322 1941527322 1 +2067 NULL NULL NULL 0 +2072 -1652600376 -1652600376 -1652600376 1 +2073 -856843296 -856843296 -856843296 1 +2085 -1179668872 -1179668872 -1179668872 1 +2089 945683736 945683736 945683736 1 +2092 1678261510 1678261510 1678261510 1 +2105 1550112473 1550112473 1550112473 1 +2106 1597303154 1597303154 1597303154 1 +2108 977292235 977292235 977292235 1 +213 -361944328 -1081328752 -1443273080 2 +2131 -464804906 -464804906 -464804906 1 +2138 -1048181367 -1048181367 -1048181367 1 +2140 -1319686435 -1319686435 -1319686435 1 +2144 117620760 117620760 117620760 1 +2155 1126157283 1126157283 1126157283 1 +2177 -1960344717 -1960344717 -1960344717 1 +2179 1394370866 1394370866 1394370866 1 +2180 -120704505 -120704505 -120704505 1 +2183 -1947868215 -1947868215 -1947868215 1 +2186 -1655396452 -1655396452 -1655396452 1 +2187 -906986958 -906986958 -906986958 1 +2189 NULL NULL NULL 0 +2193 -598552521 -2037628236 -2636180757 2 +2194 -853967587 -853967587 -853967587 1 +22 176792505 176792505 176792505 1 +2201 1425362689 1425362689 1425362689 1 +2205 2013376408 2013376408 2013376408 1 +2214 1602631923 1602631923 1602631923 1 +2217 479566810 479566810 479566810 1 +2218 NULL NULL NULL 0 +2223 1605596441 1605596441 1605596441 1 +2227 1054864168 1054864168 1054864168 1 +2229 516843026 516843026 516843026 1 +2232 277582670 277582670 277582670 1 +2241 810157660 810157660 810157660 1 +2244 -1699049982 -1699049982 -1699049982 1 +2255 -1561738723 -1561738723 -1561738723 1 +2262 1283898734 1283898734 1283898734 1 +2264 -425103007 -425103007 -425103007 1 +2270 -1429346144 -1429346144 -1429346144 1 +2274 -1676261015 -1676261015 -1676261015 1 +2277 -1447263708 -1447263708 -1447263708 1 +2279 -1412187081 -1412187081 -1412187081 1 +228 167432368 167432368 167432368 1 +2283 530274409 530274409 530274409 1 +2285 1533817551 340929437 1874746988 2 +2295 -1914072976 -1914072976 -1914072976 1 +2306 -604362582 -604362582 -604362582 1 +2320 -1919939921 -1919939921 -1919939921 1 +2323 -2028355450 -2028355450 -2028355450 1 +2325 1645067708 1471913583 3116981291 2 +2335 1281277970 1281277970 1281277970 1 +2341 1951869763 1951869763 1951869763 1 +2348 -40407627 -40407627 -40407627 1 +2358 -370798230 -370798230 -370798230 1 +236 514833409 514833409 514833409 1 +2373 -1602792666 -1602792666 -1602792666 1 +238 713031549 713031549 713031549 1 +2386 930008274 930008274 930008274 1 +2393 1852725744 901084309 2753810053 2 +2398 1489169773 1489169773 1489169773 1 +2400 663222148 663222148 663222148 1 +2410 NULL NULL NULL 0 +2412 -887663189 -1749841790 -2637504979 2 +2420 480849725 480849725 480849725 1 +2426 62293025 62293025 62293025 1 +2434 1621606222 1621606222 1621606222 1 +244 860708524 860708524 860708524 1 +2461 -1668974292 -1668974292 -1668974292 1 +2463 2031604236 -655118881 2507326063 3 +2465 -1819075185 -1819075185 -1819075185 1 +2469 524808 524808 524808 1 +2475 -1116100266 -1116100266 -1116100266 1 +2476 -1210261177 -1210261177 -1210261177 1 +2485 1594107168 -379643543 1214463625 2 +2487 NULL NULL NULL 0 +2492 -270683864 -270683864 -270683864 1 +2494 -1830870295 -1830870295 -1830870295 1 +2502 -336625622 -336625622 -336625622 1 +2506 776606164 776606164 776606164 1 +2509 693331761 693331761 693331761 1 +2512 -1164833898 -1164833898 -1164833898 1 +2514 407233168 407233168 407233168 1 +2515 -601946913 -601946913 -601946913 1 +2517 198624903 198624903 198624903 1 +2524 -1081766449 -1081766449 -1081766449 1 +2533 672266669 672266669 672266669 1 +2539 1090344463 1090344463 1090344463 1 +2540 1103878879 1103878879 1103878879 1 +255 -1106469823 -1106469823 -1106469823 1 +2551 -1762037754 -1762037754 -1762037754 1 +2553 1112783661 1112783661 1112783661 1 +2560 -1493282775 -1946023520 -3439306295 2 +2563 -1141652793 -1141652793 -1141652793 1 +2565 -1302592941 -1302592941 -1302592941 1 +2569 -837503491 -837503491 -837503491 1 +2579 1640445482 1640445482 1640445482 1 +2580 1933545427 1933545427 1933545427 1 +2587 -1125605439 -1125605439 -1125605439 1 +259 -922875124 -922875124 -922875124 1 +2599 -1903090602 -1903090602 -1903090602 1 +2607 NULL NULL NULL 0 +2608 335359004 335359004 335359004 1 +2619 1895751360 -2019287179 -123535819 2 +2625 -1897998366 -1897998366 -1897998366 1 +2626 1620529246 1620529246 1620529246 1 +263 1807358029 1094778643 2902136672 2 +2637 1522208504 1522208504 1522208504 1 +2647 92834720 92834720 92834720 1 +2649 659343542 659343542 659343542 1 +2662 209430502 209430502 209430502 1 +2663 43983130 43983130 43983130 1 +2675 1305668933 1305668933 1305668933 1 +268 860658464 -203416622 657241842 2 +2680 825977391 825977391 825977391 1 +2682 -675125724 -675125724 -675125724 1 +2688 -1249134513 -1249134513 -1249134513 1 +2689 -1343327 -1343327 -1343327 1 +2692 NULL NULL NULL 0 +2700 -123529324 -123529324 -123529324 1 +2712 -901778330 -901778330 -901778330 1 +2714 1284956108 1284956108 1284956108 1 +2715 1569269522 962712814 2531982336 2 +2719 1516149502 1516149502 1516149502 1 +2724 922373046 922373046 922373046 1 +2725 257821327 257821327 257821327 1 +2735 1307148254 1307148254 1307148254 1 +2745 1134416796 1134416796 1134416796 1 +275 1517488324 1517488324 1517488324 1 +2752 962091264 962091264 962091264 1 +2762 314232856 314232856 314232856 1 +2772 1835749815 1835749815 1835749815 1 +2776 -1801684055 -1801684055 -1801684055 1 +2786 343362793 -2117280385 -1773917592 2 +279 -1709246310 -1709246310 -1709246310 1 +2790 686081268 686081268 686081268 1 +2791 -714594143 -714594143 -714594143 1 +2803 923980398 493977568 2005164945 3 +2805 -295751373 -295751373 -295751373 1 +281 -42151403 -42151403 -42151403 1 +2810 1844415080 1844415080 1844415080 1 +2811 -170643477 -170643477 -170643477 1 +2816 -912429611 -912429611 -912429611 1 +2821 829055499 829055499 829055499 1 +2824 -1679120527 -1679120527 -1679120527 1 +2835 144428297 144428297 144428297 1 +2842 889772203 889772203 889772203 1 +2843 -887790938 -1621721177 -2509512115 2 +2846 -121162464 -121162464 -121162464 1 +2847 1634441052 1634441052 1634441052 1 +2848 -985817478 -985817478 -985817478 1 +2850 1618123796 1618123796 1618123796 1 +2855 1756592797 -1770250407 -13657610 2 +2862 1956887369 1956887369 1956887369 1 +2878 -906545548 -906545548 -906545548 1 +2886 84231802 84231802 84231802 1 +289 -1144976744 -1144976744 -1144976744 1 +2897 1211873318 -47662800 1164210518 2 +2900 2114363167 2114363167 2114363167 1 +2903 1552351592 1552351592 1552351592 1 +2905 -1232183416 -1232183416 -1232183416 1 +2911 1483580941 1483580941 1483580941 1 +2915 -470798506 -470798506 -470798506 1 +2919 1002132158 1002132158 1002132158 1 +2933 -1484787952 -1674623501 -3159411453 2 +2938 -2032576637 -2032576637 -2032576637 1 +294 -1817096156 -1817096156 -1817096156 1 +2941 -1862095575 -1862095575 -1862095575 1 +2942 1638471881 1638471881 1638471881 1 +296 597657990 -1348149160 -750491170 2 +2962 1042237722 1042237722 1042237722 1 +2968 1556919269 1556919269 1556919269 1 +2971 -373541958 -373541958 -373541958 1 +2977 -2007662579 -2007662579 -2007662579 1 +2979 131031898 131031898 131031898 1 +2984 1440427914 1440427914 1440427914 1 +2986 -933324607 -933324607 -933324607 1 +2988 492639283 492639283 492639283 1 +2991 NULL NULL NULL 0 +3002 -1538558250 -1538558250 -1538558250 1 +3006 1328225044 1328225044 1328225044 1 +301 -1924909143 -1924909143 -1924909143 1 +302 -1730740504 -1730740504 -1730740504 1 +3021 177294487 -360113158 -182818671 2 +3024 -891543038 -891543038 -891543038 1 +3029 -1198036877 -1198036877 -1198036877 1 +3031 NULL NULL NULL 0 +3036 -449333854 -449333854 -449333854 1 +3043 692666133 692666133 692666133 1 +3054 -973128166 -973128166 -973128166 1 +3055 -1198465530 -1198465530 -1198465530 1 +3058 -1144920802 -1144920802 -1144920802 1 +3059 1386071996 1386071996 1386071996 1 +3060 818313200 -2122509553 -1304196353 2 +3067 1256676429 1256676429 1256676429 1 +3071 1129173487 1129173487 1129173487 1 +3073 722737062 722737062 722737062 1 +3079 -882028850 -882028850 -882028850 1 +3083 -385247581 -385247581 -385247581 1 +3084 1333148555 1333148555 1333148555 1 +3089 584084934 584084934 584084934 1 +3094 1335803002 1335803002 1335803002 1 +3103 -1622653291 -1622653291 -1622653291 1 +311 -1850492820 -1850492820 -1850492820 1 +3111 -1299159155 -1299159155 -1299159155 1 +3118 NULL NULL NULL 0 +3119 673904922 673904922 673904922 1 +3144 -758231588 -758231588 -758231588 1 +3147 1102069050 1102069050 1102069050 1 +3159 1127080164 -78240945 1048839219 2 +3163 26270580 26270580 26270580 1 +3174 -1871446009 -1871446009 -1871446009 1 +3183 1363459426 1363459426 1363459426 1 +3190 297577612 297577612 297577612 1 +3197 976870621 976870621 976870621 1 +3199 -2086352100 -2086352100 -2086352100 1 +320 1198172036 1198172036 1198172036 1 +3203 -491377296 -491377296 -491377296 1 +3206 -733756717 -733756717 -733756717 1 +3208 -211669740 -211669740 -211669740 1 +3212 900992177 900992177 900992177 1 +3213 -1171326281 -1171326281 -1171326281 1 +3231 -817383093 -817383093 -817383093 1 +3232 1434588588 1434588588 1434588588 1 +3235 -287400633 -287400633 -287400633 1 +3244 1303632852 1303632852 1303632852 1 +3245 1385883394 1385883394 1385883394 1 +3248 1202720813 1202720813 1202720813 1 +3249 206942178 206942178 206942178 1 +3253 -1218871391 -1218871391 -1218871391 1 +3255 -1212433954 -1212433954 -1212433954 1 +3263 -419335927 -419335927 -419335927 1 +3286 -1078214868 -1078214868 -1078214868 1 +3300 1743696703 1743696703 1743696703 1 +3307 -1128317466 -1128317466 -1128317466 1 +3322 -1544877665 -1544877665 -1544877665 1 +3333 -462541618 -462541618 -462541618 1 +3352 -1621814212 -1621814212 -1621814212 1 +336 1376818328 1376818328 1376818328 1 +3365 1712411993 1712411993 1712411993 1 +3366 -606214770 -606214770 -606214770 1 +3397 -2066134281 -2066134281 -2066134281 1 +34 1969650228 1969650228 1969650228 1 +3401 -2138343289 -2138343289 -2138343289 1 +3407 NULL NULL NULL 0 +3409 -337586880 -337586880 -337586880 1 +341 278643258 278643258 278643258 1 +3418 786565385 -940504641 -153939256 2 +342 -884796655 -884796655 -884796655 1 +3421 -1878572820 -1878572820 -1878572820 1 +3430 -395499919 -395499919 -395499919 1 +3443 -1006768637 -1006768637 -1006768637 1 +3446 440393309 440393309 440393309 1 +345 NULL NULL NULL 0 +3456 NULL NULL NULL 0 +346 -938756287 -1880877824 -2819634111 2 +3460 1204325852 1204325852 1204325852 1 +3462 511836073 -1716506227 -1412216754 3 +3467 596802082 -1134786190 -537984108 2 +347 -414207254 -414207254 -414207254 1 +3472 868717604 868717604 868717604 1 +3478 1772545157 1772545157 1772545157 1 +3493 -890552359 -890552359 -890552359 1 +350 330302407 330302407 330302407 1 +3507 2032271149 2032271149 2032271149 1 +3510 197056787 197056787 197056787 1 +3512 636901402 636901402 636901402 1 +3533 1076088102 1076088102 1076088102 1 +3534 NULL NULL NULL 0 +3541 -996953616 -996953616 -996953616 1 +3542 459269456 459269456 459269456 1 +355 1258721737 1258721737 1258721737 1 +3554 48554395 48554395 48554395 1 +3555 458190500 41063276 499253776 2 +3563 1332181668 1332181668 1332181668 1 +3566 -519978947 -519978947 -519978947 1 +3567 410340192 410340192 410340192 1 +3568 NULL NULL NULL 0 +3579 -1426893312 -1426893312 -1426893312 1 +3588 850625480 696229550 1546855030 2 +3599 2069258195 2069258195 2069258195 1 +3606 -1032306832 -1032306832 -1032306832 1 +3608 773730574 773730574 773730574 1 +3609 -1380191654 -1380191654 -1380191654 1 +361 -434747475 -434747475 -434747475 1 +3613 1191238870 1191238870 1191238870 1 +3622 2057486961 -1583445177 474041784 2 +3625 -1656822229 -1656822229 -1656822229 1 +3630 693876030 693876030 693876030 1 +3637 929560791 929560791 929560791 1 +364 1336365018 1336365018 1336365018 1 +3648 1142481557 1142481557 1142481557 1 +3663 -886741158 -886741158 -886741158 1 +3664 -186600427 -186600427 -186600427 1 +367 -1324624386 -1324624386 -1324624386 1 +3672 1825828852 1825828852 1825828852 1 +3673 -362603422 -362603422 -362603422 1 +3677 470575409 470575409 470575409 1 +3680 1124269631 1124269631 1124269631 1 +3682 -1718163874 -1718163874 -1718163874 1 +3690 1500437122 1500437122 1500437122 1 +3691 -664111469 -664111469 -664111469 1 +3701 760466914 760466914 760466914 1 +3702 -1423467446 -1423467446 -1423467446 1 +3703 1796950944 1796950944 1796950944 1 +3707 1377359511 1377359511 1377359511 1 +3722 -1322736153 -1322736153 -1322736153 1 +3724 1625751062 1625751062 1625751062 1 +3725 1911834442 -2119539915 -207705473 2 +3728 -800799595 -938342473 -1739142068 2 +3739 -192181579 -192181579 -192181579 1 +3747 1001732850 1001732850 1001732850 1 +3749 1027147837 1027147837 1027147837 1 +375 -1754347372 -1754347372 -1754347372 1 +3755 -7929246 -7929246 -7929246 1 +3763 -679230165 -679230165 -679230165 1 +3764 -2027812975 -2027812975 -2027812975 1 +3769 -1431196400 -1431196400 -1431196400 1 +3770 -1627366321 -1727003541 -3354369862 2 +378 -1270523286 -1270523286 -1270523286 1 +3781 141492068 -161884324 -20392256 2 +3789 -139448716 -139448716 -139448716 1 +379 1625699061 1625699061 1625699061 1 +3810 -1043413503 -1043413503 -1043413503 1 +3812 -870900240 -870900240 -870900240 1 +3823 1563120121 1563120121 1563120121 1 +3824 1372224352 1372224352 1372224352 1 +383 1063524922 -191434898 872090024 2 +3830 1443426396 1443426396 1443426396 1 +3835 133276416 133276416 133276416 1 +3841 -901079162 -901079162 -901079162 1 +3848 1436480682 1436480682 1436480682 1 +3858 1925283040 1925283040 1925283040 1 +3860 -423945469 -423945469 -423945469 1 +3866 436093771 -88576126 347517645 2 +3874 -1603071732 -1603071732 -1603071732 1 +3879 461680901 461680901 461680901 1 +388 -66112513 -66112513 -66112513 1 +3887 476919973 476919973 476919973 1 +3901 -1909635960 -1909635960 -1909635960 1 +3904 1473503196 1473503196 1473503196 1 +3907 -373038706 -373038706 -373038706 1 +391 1107258026 1107258026 1107258026 1 +3910 NULL NULL NULL 0 +3911 -1283465451 -1283465451 -1283465451 1 +3913 1506907734 1506907734 1506907734 1 +392 1664736741 1664736741 1664736741 1 +3932 2145269593 2145269593 2145269593 1 +3940 923353533 923353533 923353533 1 +3941 -734921821 -734921821 -734921821 1 +3945 -1758125445 -1758125445 -1758125445 1 +3946 523289079 523289079 523289079 1 +3949 1797164732 1797164732 1797164732 1 +3958 65172363 65172363 65172363 1 +3960 1509573831 1509573831 1509573831 1 +3961 -1955647385 -1955647385 -1955647385 1 +3962 NULL NULL NULL 0 +3965 771827308 771827308 771827308 1 +3974 670667262 -253084551 417582711 2 +3980 -564495517 -564495517 -564495517 1 +3990 -1392487784 -1392487784 -1392487784 1 +4018 -396852483 -396852483 -396852483 1 +4020 -1447140800 -1447140800 -1447140800 1 +4024 -202035134 -202035134 -202035134 1 +4030 -216495498 -216495498 -216495498 1 +4037 1003667927 1003667927 1003667927 1 +4051 1052255272 1052255272 1052255272 1 +4054 1998185704 1998185704 1998185704 1 +4056 -1516259168 -1516259168 -1516259168 1 +4075 NULL NULL NULL 0 +4078 727802564 727802564 727802564 1 +4088 947846543 947846543 947846543 1 +41 -203911033 -203911033 -203911033 1 +412 2144454927 -505879576 1638575351 2 +417 152891873 152891873 152891873 1 +425 1336194583 1336194583 1336194583 1 +443 596242714 596242714 596242714 1 +454 -1227085134 -1227085134 -1227085134 1 +455 1159353899 1159353899 1159353899 1 +462 1677444379 1677444379 1677444379 1 +470 -181523892 -181523892 -181523892 1 +471 -207899360 -207899360 -207899360 1 +481 536235636 536235636 536235636 1 +482 765084282 765084282 765084282 1 +485 874824958 874824958 874824958 1 +489 -928013434 -928013434 -928013434 1 +49 1673218677 1673218677 1673218677 1 +490 1229172951 1229172951 1229172951 1 +491 -201554470 -201554470 -201554470 1 +5 -1063673827 -1063673827 -1063673827 1 +500 1216016081 1216016081 1216016081 1 +501 715333063 -1469463456 -754130393 2 +504 851975276 851975276 851975276 1 +522 -853606287 -853606287 -853606287 1 +523 149701884 149701884 149701884 1 +524 -1326025787 -1326025787 -1326025787 1 +530 -1851680302 -1851680302 -1851680302 1 +535 888896424 888896424 888896424 1 +579 -1804244259 -1804244259 -1804244259 1 +583 -1554325042 -1554325042 -1554325042 1 +584 -2017279089 -2017279089 -2017279089 1 +586 -310343273 -310343273 -310343273 1 +587 1485934602 1485934602 1485934602 1 +590 -186764959 -186764959 -186764959 1 +597 1577999613 1577999613 1577999613 1 +601 -592568201 -592568201 -592568201 1 +612 1131663263 1131663263 1131663263 1 +615 2097519027 2097519027 2097519027 1 +618 -412333994 -412333994 -412333994 1 +65 919363072 919363072 919363072 1 +650 1222217404 1222217404 1222217404 1 +658 -1254129998 -1254129998 -1254129998 1 +66 2013444562 2013444562 2013444562 1 +661 1045719941 -407089271 638630670 2 +663 -1261099087 -1261099087 -1261099087 1 +664 899810881 899810881 899810881 1 +677 -1038565721 -1038565721 -1038565721 1 +68 879290165 879290165 879290165 1 +681 -893863493 -893863493 -893863493 1 +687 1888675011 1888675011 1888675011 1 +688 NULL NULL NULL 0 +690 -1112062809 -1112062809 -1112062809 1 +691 -1156193121 -1156193121 -1156193121 1 +6923604860394528768 -1095938490 -1095938490 -1095938490 1 +6924820982050758656 -1709117770 -1709117770 -1709117770 1 +6926925215281774592 987734049 987734049 987734049 1 +6927260280037097472 1668094749 1668094749 1668094749 1 +6928080429732536320 1300798829 1300798829 1300798829 1 +6933001829416034304 2089198703 2089198703 2089198703 1 +6933451028794925056 1776456512 1776456512 1776456512 1 +6933731240564056064 780859673 780859673 780859673 1 +6934570741217755136 491758252 491758252 491758252 1 +694 -2015780444 -2015780444 -2015780444 1 +6947488599548215296 1141595012 1141595012 1141595012 1 +695 -521886983 -521886983 -521886983 1 +6960137166475911168 -558456218 -558456218 -558456218 1 +6962726713896484864 2051470532 2051470532 2051470532 1 +6963217546192322560 -1340213051 -1340213051 -1340213051 1 +6964585306125008896 2146312499 2146312499 2146312499 1 +6967631925774639104 373031319 373031319 373031319 1 +6969599299897163776 -2042831105 -2042831105 -2042831105 1 +6974475559697768448 1493555718 1493555718 1493555718 1 +6982145326341423104 -941433219 -941433219 -941433219 1 +6987889924212203520 -2053551539 -2053551539 -2053551539 1 +6991316084916879360 -1345085327 -1345085327 -1345085327 1 +6996686091335884800 -1738775004 -1738775004 -1738775004 1 +7006803044329021440 1614297403 1614297403 1614297403 1 +7013693841855774720 656187584 656187584 656187584 1 +7014537632150224896 -44426049 -44426049 -44426049 1 +7017956982081404928 -828724467 -828724467 -828724467 1 +7022349041913978880 -1096013673 -1096013673 -1096013673 1 +7027529814236192768 -1988508336 -1988508336 -1988508336 1 +7031339012080549888 1182390248 1182390248 1182390248 1 +7039820685967343616 -483740394 -483740394 -483740394 1 +7045967493826387968 -1669227632 -1669227632 -1669227632 1 +7049773031131283456 814544198 814544198 814544198 1 +7052226236896256000 1119976718 1119976718 1119976718 1 +7054271419461812224 -1266138408 -1266138408 -1266138408 1 +7054938591408996352 -352146259 -352146259 -352146259 1 +7060236714847412224 -1858443953 -1858443953 -1858443953 1 +7061498706968428544 -290558484 -290558484 -290558484 1 +7061809776248545280 -469870330 -469870330 -469870330 1 +7062382339142156288 536876888 536876888 536876888 1 +7062605127422894080 -1614194712 -1614194712 -1614194712 1 +7065344324692443136 -1881263242 -1881263242 -1881263242 1 +7068517339681259520 -1871209811 -1871209811 -1871209811 1 +7069729473166090240 NULL NULL NULL 0 +707 1343581455 1343581455 1343581455 1 +7077311975029555200 1103797891 1103797891 1103797891 1 +7078641038157643776 NULL NULL NULL 0 +7080269176324218880 -337073639 -337073639 -337073639 1 +7084659344078970880 963854010 963854010 963854010 1 +7086206629592252416 -1106685577 -1106685577 -1106685577 1 +7091300332052062208 NULL NULL NULL 0 +7099005292698550272 917891418 917891418 917891418 1 +71 -20639382 -20639382 -20639382 1 +7107604675626008576 1949494660 1949494660 1949494660 1 +7125231541858205696 -2111312205 -2111312205 -2111312205 1 +7128222874437238784 -283378057 -283378057 -283378057 1 +7130159794259353600 -837506172 -837506172 -837506172 1 +7130306447560826880 77063155 77063155 77063155 1 +7149417430082027520 -1352545619 -1352545619 -1352545619 1 +7153922334283776000 NULL NULL NULL 0 +7157247449513484288 -36038293 -36038293 -36038293 1 +7164349895861829632 -1153978907 -1153978907 -1153978907 1 +7165364563962191872 -1272838092 -1272838092 -1272838092 1 +7166263463731421184 -1838281337 -1838281337 -1838281337 1 +7175638927948562432 596280431 596280431 596280431 1 +7186401810812059648 1430614653 1430614653 1430614653 1 +7195454019231834112 -1419573027 -1419573027 -1419573027 1 +7198687580227043328 563507584 563507584 563507584 1 +7199539820886958080 NULL NULL NULL 0 +7204802700490858496 -1719427168 -1719427168 -1719427168 1 +7210160489915236352 -1353470095 -1353470095 -1353470095 1 +7212016545671348224 1309976380 1309976380 1309976380 1 +7212090742612467712 -1067083033 -1067083033 -1067083033 1 +7217123582035116032 -90029636 -90029636 -90029636 1 +7220131672176058368 1017953606 1017953606 1017953606 1 +7220581538170413056 615661052 615661052 615661052 1 +7223569671814987776 -1004204053 -1004204053 -1004204053 1 +7226360892091416576 -935723237 -935723237 -935723237 1 +7229607057201127424 -1818380492 -1818380492 -1818380492 1 +723 1616782308 1616782308 1616782308 1 +7231399302953377792 1990792684 1990792684 1990792684 1 +7232273749940838400 -1231821948 -1231821948 -1231821948 1 +7235109456886816768 -2098078720 -2098078720 -2098078720 1 +7237310132329488384 -1061859761 -1061859761 -1061859761 1 +7238339720750948352 -1770229099 -1770229099 -1770229099 1 +724 -616724730 -616724730 -616724730 1 +7242751359672631296 -2016985611 -2016985611 -2016985611 1 +7249443195032985600 -51612681 -51612681 -51612681 1 +7250237407877382144 -772236518 -772236518 -772236518 1 +7254710367022645248 1911809937 1911809937 1911809937 1 +7255302164215013376 1281159709 1281159709 1281159709 1 +7259955893466931200 NULL NULL NULL 0 +7260908278294560768 826519029 826519029 826519029 1 +7265141874315517952 -571587579 -571587579 -571587579 1 +7266437490436341760 177391521 177391521 177391521 1 +7271786885641666560 936752497 936752497 936752497 1 +7271887863395459072 -94709066 -94709066 -94709066 1 +7274777328897802240 482977302 482977302 482977302 1 +7291432593139507200 1570238232 1570238232 1570238232 1 +7295502697317097472 210728566 210728566 210728566 1 +7295926343524163584 1182646662 1182646662 1182646662 1 +7296164580491075584 1412102605 1412102605 1412102605 1 +7299197687217856512 172075892 172075892 172075892 1 +73 488014426 488014426 488014426 1 +7304839835188609024 1961954939 1961954939 1961954939 1 +7308289763456000000 -1423477356 -1423477356 -1423477356 1 +7309156463509061632 1304431147 1304431147 1304431147 1 +7310869618402910208 -359943425 -359943425 -359943425 1 +7319711402123149312 1036391201 1036391201 1036391201 1 +7333512171174223872 -332125121 -332125121 -332125121 1 +7339426767877390336 538268118 538268118 538268118 1 +7343171468838567936 879289168 879289168 879289168 1 +7344029858387820544 -1669848306 -1669848306 -1669848306 1 +7345991518378442752 849859032 849859032 849859032 1 +7347732772348870656 -1800413845 -1800413845 -1800413845 1 +7348598907182800896 -1940205653 -1940205653 -1940205653 1 +735 115111911 115111911 115111911 1 +7354813692542304256 1426152053 1426152053 1426152053 1 +7359004378440146944 1082837515 1082837515 1082837515 1 +736 -1183469360 -1183469360 -1183469360 1 +7368920486374989824 -1822850051 -1822850051 -1822850051 1 +7370078518278397952 -215703544 -215703544 -215703544 1 +7370803940448305152 -533281137 -533281137 -533281137 1 +7375521127126089728 -688296901 -688296901 -688296901 1 +7376467688511455232 -348628614 -348628614 -348628614 1 +7378993334503694336 1870464222 1870464222 1870464222 1 +738 -453739759 -453739759 -453739759 1 +7381659098423926784 867587289 867587289 867587289 1 +7384150968511315968 1447462863 1447462863 1447462863 1 +7386087924003676160 2038381675 2038381675 2038381675 1 +7391208370547269632 -743680989 -743680989 -743680989 1 +7393308503950548992 -849551464 -849551464 -849551464 1 +7394967727502467072 -1983567458 -1983567458 -1983567458 1 +7401968422230032384 -504529358 -504529358 -504529358 1 +7410096605330227200 1987336880 1987336880 1987336880 1 +7410872053689794560 -916344293 -916344293 -916344293 1 +7411793502161182720 -177025818 -177025818 -177025818 1 +7412924364686458880 1817671655 1817671655 1817671655 1 +7414865343000322048 -829717122 -829717122 -829717122 1 +7418271723644403712 1202593021 1202593021 1202593021 1 +743 1004241194 1004241194 1004241194 1 +7432428551399669760 -805288503 -805288503 -805288503 1 +7432998950057975808 -434656160 -434656160 -434656160 1 +7436133434239229952 203688965 203688965 203688965 1 +7440265908266827776 -1425942083 -1425942083 -1425942083 1 +7450416810848313344 1393262450 1393262450 1393262450 1 +7452756603516190720 -2009569943 -2009569943 -2009569943 1 +7454442625055145984 -267554590 -267554590 -267554590 1 +7454632396542074880 859140926 859140926 859140926 1 +7461153404961128448 -23865350 -23865350 -23865350 1 +7471208109437304832 -1603374745 -1603374745 -1603374745 1 +7473537548003352576 -1439424023 -1439424023 -1439424023 1 +7486884806277611520 1516236846 1516236846 1516236846 1 +7487338208419823616 1974939899 1974939899 1974939899 1 +7487538600082554880 2068538934 2068538934 2068538934 1 +7490717730239250432 -1829691116 -1829691116 -1829691116 1 +7491898395977523200 1265528735 1265528735 1265528735 1 +7492436934952574976 NULL NULL NULL 0 +7497276415392407552 1543611951 1543611951 1543611951 1 +7497306924248834048 550594651 550594651 550594651 1 +7500716020874674176 -1953605752 -1953605752 -1953605752 1 +7514552840617558016 334208532 334208532 334208532 1 +7517159036469575680 -1437126017 -1437126017 -1437126017 1 +7524958388842078208 -664856187 -664856187 -664856187 1 +7528074274555305984 550186724 550186724 550186724 1 +7528211148397944832 -512198016 -512198016 -512198016 1 +7534042483076857856 1645753684 1645753684 1645753684 1 +7534145866886782976 -532755480 -532755480 -532755480 1 +7534549597202194432 2044130430 2044130430 2044130430 1 +7545689659010949120 -1380678829 -1380678829 -1380678829 1 +7548958830580563968 1836499981 1836499981 1836499981 1 +7549858023389003776 NULL NULL NULL 0 +7555301305375858688 1916363472 1916363472 1916363472 1 +7566273236152721408 881673558 881673558 881673558 1 +7569249672628789248 -1952235832 -1952235832 -1952235832 1 +7570474972934488064 -432218419 -432218419 -432218419 1 +7573530789362262016 NULL NULL NULL 0 +7575087487730196480 1421779455 1421779455 1421779455 1 +7581052107944361984 1493152791 1493152791 1493152791 1 +7581614118458335232 -1129489281 -1129489281 -1129489281 1 +7584007864107778048 1410516523 1410516523 1410516523 1 +7592440105065308160 NULL NULL NULL 0 +7593521922173419520 1260480653 1260480653 1260480653 1 +7596563216912211968 605946758 605946758 605946758 1 +7599019810193211392 -2112149052 -2112149052 -2112149052 1 +7608447395949109248 882762933 882762933 882762933 1 +7614435638888210432 735600165 735600165 735600165 1 +7620183559667081216 -1967660827 -1967660827 -1967660827 1 +7621013099259527168 -553349593 -553349593 -553349593 1 +7625728883085025280 -1699044525 -1699044525 -1699044525 1 +7626715182847090688 1905812339 1905812339 1905812339 1 +763 -1933374662 -1933374662 -1933374662 1 +7637152193832886272 1880017800 1880017800 1880017800 1 +7647481735646363648 1164895226 1164895226 1164895226 1 +7648729477297987584 NULL NULL NULL 0 +7652123583449161728 472901914 472901914 472901914 1 +7659279803863146496 1541249928 1541249928 1541249928 1 +7662037650719850496 -175727228 -175727228 -175727228 1 +7675009476762918912 522895626 522895626 522895626 1 +7678790769408172032 -1313618168 -1313618168 -1313618168 1 +7682327310082531328 879500678 879500678 879500678 1 +7686992843032010752 -897622427 -897622427 -897622427 1 +7689489436826804224 -909127123 -909127123 -909127123 1 +7690986322714066944 -2124994385 -2124994385 -2124994385 1 +7691062622443044864 1516165279 1516165279 1516165279 1 +7696737688942567424 -269702086 -269702086 -269702086 1 +7697541332524376064 -1070951602 -1070951602 -1070951602 1 +7700734109530767360 194754262 194754262 194754262 1 +7701723309715685376 -1831957182 -1831957182 -1831957182 1 +7705445437881278464 527598540 527598540 527598540 1 +7710447533880614912 -583908704 -583908704 -583908704 1 +7718825401976684544 -1226425562 -1226425562 -1226425562 1 +7720187583697502208 -1366059787 -1366059787 -1366059787 1 +7731443941834678272 -1092872261 -1092872261 -1092872261 1 +7735566678126616576 1626868156 1626868156 1626868156 1 +774 449788961 449788961 449788961 1 +7741854854673367040 -1743938290 -1743938290 -1743938290 1 +7746402369011277824 -1735287250 -1735287250 -1735287250 1 +7747874976739016704 315055746 315055746 315055746 1 +7748799008146366464 -540401598 -540401598 -540401598 1 +7752740515534422016 1851654062 1851654062 1851654062 1 +7753359568986636288 -816661030 -816661030 -816661030 1 +7753882935005880320 1190302173 1190302173 1190302173 1 +7761834341179375616 1273877405 1273877405 1273877405 1 +7762823913046556672 1198701102 1198701102 1198701102 1 +7765456790394871808 1074488452 1074488452 1074488452 1 +7768984605670604800 NULL NULL NULL 0 +7775034125776363520 -1628799508 -1628799508 -1628799508 1 +7778936842502275072 -1702587308 -1702587308 -1702587308 1 +7779486624537370624 -1998652546 -1998652546 -1998652546 1 +7779735136559579136 -1228063838 -1228063838 -1228063838 1 +7782245855193874432 618991041 618991041 618991041 1 +7784169796350730240 -958165276 -958165276 -958165276 1 +7784489776013295616 -158848747 -158848747 -158848747 1 +779 -1939362279 -1939362279 -1939362279 1 +7790728456522784768 1575091509 1575091509 1575091509 1 +7792036342592348160 -538812082 -538812082 -538812082 1 +7794244032613703680 1301426600 1301426600 1301426600 1 +78 95356298 95356298 95356298 1 +780 -737624128 -737624128 -737624128 1 +7800332581637259264 592011541 592011541 592011541 1 +7801697837312884736 -116484575 -116484575 -116484575 1 +7818464507324121088 -2119724898 -2119724898 -2119724898 1 +782 -1552053883 -1552053883 -1552053883 1 +7823874904139849728 344239980 344239980 344239980 1 +784 44595790 44595790 44595790 1 +7843804446688264192 -397951021 -397951021 -397951021 1 +7844258063629852672 972835688 972835688 972835688 1 +7845953007588401152 NULL NULL NULL 0 +7857878068300898304 977624089 977624089 977624089 1 +7868367829080506368 658008867 658008867 658008867 1 +7870277756614623232 985634256 985634256 985634256 1 +7871189141676998656 1363568842 1363568842 1363568842 1 +7871554728617025536 -309571354 -309571354 -309571354 1 +7874764415950176256 2127682701 2127682701 2127682701 1 +7885697257930588160 1992977592 1992977592 1992977592 1 +7888238729321496576 978044705 978044705 978044705 1 +789 NULL NULL NULL 0 +7892026679115554816 626941809 626941809 626941809 1 +7892281003266408448 -371779520 -371779520 -371779520 1 +7898670840507031552 776459017 776459017 776459017 1 +7909645665163804672 -1289665817 -1289665817 -1289665817 1 +7917494645725765632 2076370203 2076370203 2076370203 1 +7919597361814577152 2125311222 2125311222 2125311222 1 +7921639119138070528 -1030565036 -1030565036 -1030565036 1 +7922443154272395264 -1333770335 -1333770335 -1333770335 1 +7926898770090491904 1582537271 1582537271 1582537271 1 +7933040277013962752 -1061222139 -1061222139 -1061222139 1 +7936149988210212864 1769324649 1769324649 1769324649 1 +7944741547145502720 372099650 372099650 372099650 1 +7947544013461512192 -1184620079 -1184620079 -1184620079 1 +7948803266578161664 1766517223 1766517223 1766517223 1 +7955126053367119872 1447438548 1447438548 1447438548 1 +7961515985722605568 866084887 866084887 866084887 1 +7961909238130270208 -1138530007 -1138530007 -1138530007 1 +797 996831203 996831203 996831203 1 +7983789401706094592 230954385 230954385 230954385 1 +7989119273552158720 NULL NULL NULL 0 +7989160253372817408 1848935036 1848935036 1848935036 1 +7997694023324975104 -1826997220 -1826997220 -1826997220 1 +7998357471114969088 346562088 346562088 346562088 1 +7998687089080467456 NULL NULL NULL 0 +80 NULL NULL NULL 0 +8000440057238052864 1251556414 1251556414 1251556414 1 +8002769767000145920 1668446119 1668446119 1668446119 1 +8004633750273925120 -1754203978 -1754203978 -1754203978 1 +8011181697250631680 1773417290 1773417290 1773417290 1 +8011602724663336960 667283966 667283966 667283966 1 +8014986215157530624 -799249885 -799249885 -799249885 1 +8017403886247927808 -1491722659 -1491722659 -1491722659 1 +803 -2096425960 -2096425960 -2096425960 1 +8045070943673671680 435407142 435407142 435407142 1 +8048726769133592576 -406264741 -406264741 -406264741 1 +8059284960252731392 -251576563 -251576563 -251576563 1 +8069531888205086720 1978171687 1978171687 1978171687 1 +8071961599867387904 52667480 52667480 52667480 1 +8073733016154431488 1815882183 1815882183 1815882183 1 +8079573715140485120 503752931 503752931 503752931 1 +808 -1836166334 -1836166334 -1836166334 1 +8087737899452432384 -2137168636 -2137168636 -2137168636 1 +809 -682333536 -682333536 -682333536 1 +8091421389575282688 NULL NULL NULL 0 +8099215208813903872 492968645 492968645 492968645 1 +8100036735858401280 -146961490 -146961490 -146961490 1 +8109381965028548608 2022944702 2022944702 2022944702 1 +8111757081791733760 -234758376 -234758376 -234758376 1 +8113585123802529792 129675822 129675822 129675822 1 +8116738401948377088 1914993018 1914993018 1914993018 1 +812 -954480325 -954480325 -954480325 1 +8120593157178228736 -1379039356 -1379039356 -1379039356 1 +8129551357032259584 323817967 323817967 323817967 1 +8135164922674872320 -1459528251 -1459528251 -1459528251 1 +8142241016679735296 -163859725 -163859725 -163859725 1 +8143462899383345152 644934949 644934949 644934949 1 +8144552446127972352 2083836439 2083836439 2083836439 1 +8145745969573666816 467753905 467753905 467753905 1 +8145750910080745472 1275228381 1275228381 1275228381 1 +8146288732715196416 -728015067 -728015067 -728015067 1 +8146492373537660928 1316369941 1316369941 1316369941 1 +8148211378319933440 NULL NULL NULL 0 +815 1910930064 1910930064 1910930064 1 +8150115791664340992 793047956 793047956 793047956 1 +8156018594610790400 1384071499 1384071499 1384071499 1 +8156782979767238656 -1651993300 -1651993300 -1651993300 1 +8160569434550403072 -1808960215 -1808960215 -1808960215 1 +8160662610166194176 -310584775 -310584775 -310584775 1 +8163948965373386752 1968813171 1968813171 1968813171 1 +8168742078705262592 -303747347 -303747347 -303747347 1 +8169878743136043008 1765874562 1765874562 1765874562 1 +8171188598958407680 1996235654 1996235654 1996235654 1 +8183233196086214656 1450881368 1450881368 1450881368 1 +8184799300477943808 -579916775 -579916775 -579916775 1 +8190539859890601984 1418228573 1418228573 1418228573 1 +8190967051000659968 604460005 604460005 604460005 1 +8192304692696383488 494570380 494570380 494570380 1 +8195103847607967744 15020431 15020431 15020431 1 +8199513544090730496 758926227 758926227 758926227 1 +820 746904285 -409673169 337231116 2 +8201303040648052736 -774406989 -774406989 -774406989 1 +8201491077550874624 1677197847 1677197847 1677197847 1 +8208354137450766336 1377144283 1377144283 1377144283 1 +8210813831744118784 139661585 139661585 139661585 1 +8213810702473183232 587797446 587797446 587797446 1 +8219326436390821888 2064448036 2064448036 2064448036 1 +8220104397160169472 -1274158260 -1274158260 -1274158260 1 +8221561626658881536 -1626062014 -1626062014 -1626062014 1 +8222714144797368320 -318380015 -318380015 -318380015 1 +8223732800007864320 -599396052 -599396052 -599396052 1 +823 1660088606 1660088606 1660088606 1 +8230371298967609344 1660278264 1660278264 1660278264 1 +8235179243092090880 187893585 187893585 187893585 1 +8244041599171862528 402173272 402173272 402173272 1 +8254763178969915392 658850444 658850444 658850444 1 +8268875586442256384 1271280812 1271280812 1271280812 1 +8269730157217062912 127051381 127051381 127051381 1 +8272001752345690112 3999930 3999930 3999930 1 +8279056098670198784 2133492883 2133492883 2133492883 1 +8282648443538710528 -402441123 -402441123 -402441123 1 +8283099811330506752 737149747 737149747 737149747 1 +8286706213485297664 -916495008 -916495008 -916495008 1 +8287522765741301760 -1817564067 -1817564067 -1817564067 1 +8290014929764040704 -1424027104 -1424027104 -1424027104 1 +8290944180915871744 684561551 684561551 684561551 1 +8294315622451740672 -43858652 -43858652 -43858652 1 +8295110846998233088 -1945738830 -1945738830 -1945738830 1 +83 -684022323 -684022323 -684022323 1 +8302473563519950848 -1524081566 -1524081566 -1524081566 1 +8316336224427483136 345556325 345556325 345556325 1 +8323460620425330688 -1524554771 -1524554771 -1524554771 1 +8325227661920133120 -178568841 -178568841 -178568841 1 +8332670681629106176 -314935936 -314935936 -314935936 1 +8333523087360901120 -442732016 -442732016 -442732016 1 +8337549596011102208 904604938 904604938 904604938 1 +8345435427356090368 323919214 323919214 323919214 1 +835 -1054609414 -1054609414 -1054609414 1 +8351163199364390912 391186487 391186487 391186487 1 +8362046808797306880 89366322 89366322 89366322 1 +8365058996333953024 -2043805661 -2043805661 -2043805661 1 +8367680396909404160 -1269216718 -1269216718 -1269216718 1 +8368012468775608320 -1665164127 -1665164127 -1665164127 1 +837 170870820 170870820 170870820 1 +8371939471056470016 826143442 826143442 826143442 1 +8372408423196270592 564349193 564349193 564349193 1 +8372588378498777088 1321678350 1321678350 1321678350 1 +8374321007870836736 -329336519 -329336519 -329336519 1 +8376440110255243264 1665724041 1665724041 1665724041 1 +8383159090746204160 605141554 605141554 605141554 1 +8388363436324085760 -707108808 -707108808 -707108808 1 +8391407951622815744 NULL NULL NULL 0 +8391785334471589888 -630900418 -630900418 -630900418 1 +8396433451610652672 -180280420 -180280420 -180280420 1 +8398862954249560064 669871113 669871113 669871113 1 +8407869317250220032 -1240912824 -1240912824 -1240912824 1 +8410599906334097408 -1606567895 -1606567895 -1606567895 1 +8411494452500930560 -1568646283 -1568646283 -1568646283 1 +8415171956168417280 541118710 541118710 541118710 1 +8416121695917498368 63706286 63706286 63706286 1 +8417381121663746048 1458051497 1458051497 1458051497 1 +8419958579638157312 -99916247 -99916247 -99916247 1 +8424515140664360960 1847210729 1847210729 1847210729 1 +8435912708683087872 -2081809883 -2081809883 -2081809883 1 +845 -1026746699 -1026746699 -1026746699 1 +8451612303224520704 -971203543 -971203543 -971203543 1 +8454154705460666368 -1421396891 -1421396891 -1421396891 1 +8455496814886002688 107680423 107680423 107680423 1 +8457906374051020800 106847364 106847364 106847364 1 +8461498293348065280 1636364987 1636364987 1636364987 1 +8463868417649524736 -1643714866 -1643714866 -1643714866 1 +8467976965865799680 916057807 916057807 916057807 1 +8470141334513098752 NULL NULL NULL 0 +8472429318602268672 -308225568 -308225568 -308225568 1 +8473699639908261888 -591879497 -591879497 -591879497 1 +8487573502287478784 1895282160 1895282160 1895282160 1 +8489584373231919104 1416850873 1416850873 1416850873 1 +8489735221193138176 -1124028213 -1124028213 -1124028213 1 +85 -913906252 -913906252 -913906252 1 +8501910015960735744 1579460630 1579460630 1579460630 1 +8508401924853850112 -1578387726 -1578387726 -1578387726 1 +8509508263705477120 1107757211 1107757211 1107757211 1 +8514851182589771776 415234946 415234946 415234946 1 +8514979402185596928 1902676205 1902676205 1902676205 1 +8515682078777081856 -1026458834 -1026458834 -1026458834 1 +8518454006987948032 -379174037 -379174037 -379174037 1 +8519937082746634240 -1745449855 -1745449855 -1745449855 1 +8523972434954510336 2134433675 2134433675 2134433675 1 +8524940073536954368 476858779 476858779 476858779 1 +8525336514806317056 350802495 350802495 350802495 1 +8525894870444638208 1216287232 1216287232 1216287232 1 +8532016240026279936 -1726585032 -1726585032 -1726585032 1 +8536948829863198720 1723691683 1723691683 1723691683 1 +8540237852367446016 398960205 398960205 398960205 1 +8543177193114779648 2048533360 2048533360 2048533360 1 +8547243497773457408 -534991774 -534991774 -534991774 1 +8551446856960942080 -1312782341 -1312782341 -1312782341 1 +8553195689344991232 566646177 566646177 566646177 1 +8554899472487596032 -491882534 -491882534 -491882534 1 +8555933456197828608 NULL NULL NULL 0 +8555948987770511360 107941738 107941738 107941738 1 +8557218322962644992 -1210550573 -1210550573 -1210550573 1 +8558000156325707776 -370901197 -370901197 -370901197 1 +8560526613401714688 1592467112 1592467112 1592467112 1 +8569030475428511744 1743671220 1743671220 1743671220 1 +8570983266408103936 950545385 950545385 950545385 1 +8571268359622172672 1187495452 1187495452 1187495452 1 +8573305425181941760 1583280136 1583280136 1583280136 1 +8577096957495025664 NULL NULL NULL 0 +8579974641030365184 -1545388906 -1545388906 -1545388906 1 +8583916402383601664 -733239404 -733239404 -733239404 1 +8613562211893919744 -1109134719 -1109134719 -1109134719 1 +8625937019655200768 272086526 272086526 272086526 1 +8631515095562887168 -1244527286 -1244527286 -1244527286 1 +8637720762289659904 1669519977 1669519977 1669519977 1 +8639254009546055680 477584560 477584560 477584560 1 +8641221723991433216 -1531040609 -1531040609 -1531040609 1 +8643198489997254656 -1079086534 -1079086534 -1079086534 1 +8644602243484803072 -1218592418 -1218592418 -1218592418 1 +8649296591032172544 -1744964279 -1744964279 -1744964279 1 +8652485812846567424 1372705672 1372705672 1372705672 1 +8656571350884048896 NULL NULL NULL 0 +8660248367767076864 1520375588 1520375588 1520375588 1 +8665969966920990720 1372982791 1372982791 1372982791 1 +8666178591503564800 -1565785026 -1565785026 -1565785026 1 +8677632093825916928 2040926345 2040926345 2040926345 1 +8677794924343164928 115470151 115470151 115470151 1 +868 -2133145181 -2133145181 -2133145181 1 +8682955459667951616 2009215103 2009215103 2009215103 1 +8687042963221159936 -870624802 -870624802 -870624802 1 +8688483860094599168 -273937943 -273937943 -273937943 1 +8693036785094565888 2090496825 2090496825 2090496825 1 +8697823501349609472 922553769 922553769 922553769 1 +8698055291501543424 -1755088362 -1755088362 -1755088362 1 +8708232769657815040 6526476 6526476 6526476 1 +8708845895460577280 1860113703 1860113703 1860113703 1 +871 915505006 915505006 915505006 1 +8714829359200747520 672919099 672919099 672919099 1 +8716401555586727936 -789126455 -789126455 -789126455 1 +8720504651219001344 825677248 825677248 825677248 1 +8723248113030782976 144499388 144499388 144499388 1 +873 842283345 842283345 842283345 1 +8731960288562044928 869288953 869288953 869288953 1 +8734584858442498048 -946830673 -946830673 -946830673 1 +8736061027343859712 -1974972123 -1974972123 -1974972123 1 +874 58313734 58313734 58313734 1 +8752150411997356032 -1502924486 -1502924486 -1502924486 1 +8759089349412847616 1972940844 1972940844 1972940844 1 +8759184090543857664 435426302 435426302 435426302 1 +8760285623204290560 -573787626 -573787626 -573787626 1 +8761174805938331648 1205391962 1205391962 1205391962 1 +8769199243315814400 2100377172 2100377172 2100377172 1 +8773222500321361920 217823040 217823040 217823040 1 +8775009214012456960 -213198503 -213198503 -213198503 1 +8779073705407963136 -1979314577 -1979314577 -1979314577 1 +8779711700787298304 -859535015 -859535015 -859535015 1 +878 290601612 290601612 290601612 1 +8780196485890555904 -607285491 -607285491 -607285491 1 +8782900615468302336 -1411407810 -1411407810 -1411407810 1 +8783241818558193664 -714270951 -714270951 -714270951 1 +8785153741735616512 1028092807 1028092807 1028092807 1 +8792059919353348096 -745678338 -745678338 -745678338 1 +8793387410919038976 -1058166020 -1058166020 -1058166020 1 +8795069490394882048 1366402722 1366402722 1366402722 1 +8806507556248731648 1190554937 1190554937 1190554937 1 +8808467247666241536 -1706867123 -1706867123 -1706867123 1 +8811693967537774592 1731764471 1731764471 1731764471 1 +8815398225009967104 -1701502632 -1701502632 -1701502632 1 +8817665768680906752 1550375386 1550375386 1550375386 1 +8822384228057604096 -1371840597 -1371840597 -1371840597 1 +8825059717746376704 872554087 872554087 872554087 1 +8829545979081744384 NULL NULL NULL 0 +883 -1554130090 -1554130090 -1554130090 1 +8836228556823977984 1499399891 1499399891 1499399891 1 +8837420822750314496 2052773366 2052773366 2052773366 1 +8849475396952514560 718692886 718692886 718692886 1 +8850055384477401088 1503176016 1503176016 1503176016 1 +8853989376829833216 -1505397109 -1505397109 -1505397109 1 +8854495099223375872 2065408093 2065408093 2065408093 1 +8854677881758162944 1883400319 1883400319 1883400319 1 +8854715632851345408 1301997393 1301997393 1301997393 1 +8856674723376668672 -4943292 -4943292 -4943292 1 +8868529429494071296 1830870769 1830870769 1830870769 1 +8871707618793996288 -677778959 -677778959 -677778959 1 +8875745082589929472 -1460613213 -1460613213 -1460613213 1 +888 1012696613 1012696613 1012696613 1 +8895174927321243648 -522450861 -522450861 -522450861 1 +8896237972875370496 1540680149 1540680149 1540680149 1 +8897901899039473664 -535056977 -535056977 -535056977 1 +8899122608190930944 -2146432765 -2146432765 -2146432765 1 +8900180888218329088 -1058356124 -1058356124 -1058356124 1 +8900351886974279680 1000106109 1000106109 1000106109 1 +8900545829211299840 352214248 352214248 352214248 1 +8905330479248064512 NULL NULL NULL 0 +8910706980937261056 1166237779 1166237779 1166237779 1 +8920344895701393408 -1126628450 -1126628450 -1126628450 1 +8920533610804609024 1739911574 1739911574 1739911574 1 +8927691194719174656 -917062754 -917062754 -917062754 1 +8928133990107881472 -1511162508 -1511162508 -1511162508 1 +8935252708196999168 1603612975 1603612975 1603612975 1 +8936639033158410240 -1305139473 -1305139473 -1305139473 1 +8939431770838810624 -934008333 -934008333 -934008333 1 +8945004737083555840 252169185 252169185 252169185 1 +8945302550165004288 1117805438 1117805438 1117805438 1 +8962097525980225536 -329695030 -329695030 -329695030 1 +8972161729142095872 1709983738 1709983738 1709983738 1 +8979012655944220672 -120692484 -120692484 -120692484 1 +898 338805871 -234278308 104527563 2 +8983857919580209152 1273798925 1273798925 1273798925 1 +8983912573761167360 NULL NULL NULL 0 +8984935029383389184 -1565671389 -1565671389 -1565671389 1 +8987827141270880256 -1024500955 -1024500955 -1024500955 1 +8991071342495531008 -574475259 -574475259 -574475259 1 +8991442360387584000 2081243058 2081243058 2081243058 1 +8994608999945125888 -839512271 -839512271 -839512271 1 +8995562121346260992 -618505946 -618505946 -618505946 1 +8996824426131390464 -214166042 -214166042 -214166042 1 +9000633029632499712 -641062448 -641062448 -641062448 1 +9001907486943993856 -1974257754 -1974257754 -1974257754 1 +9005866015985713152 652118640 652118640 652118640 1 +9016280522993975296 388707554 388707554 388707554 1 +9020143715350814720 NULL NULL NULL 0 +9023663198045544448 1145627305 1145627305 1145627305 1 +9030480306789818368 -758973175 -758973175 -758973175 1 +9038087402564657152 NULL NULL NULL 0 +9040958359122640896 -1635301453 -1635301453 -1635301453 1 +9043089884440068096 -1527024213 -1527024213 -1527024213 1 +9048002942653710336 -1079231269 -1079231269 -1079231269 1 +9048297564833079296 -1534307678 -1534307678 -1534307678 1 +9050032047355125760 -1240048334 -1240048334 -1240048334 1 +9053187076403060736 1075444504 1075444504 1075444504 1 +9054887854393950208 -1517536924 -1517536924 -1517536924 1 +9062227900376203264 1260101584 1260101584 1260101584 1 +9064847977742032896 -1849091666 -1849091666 -1849091666 1 +9067985867711291392 43672187 43672187 43672187 1 +9073672806863790080 -2144241640 -2144241640 -2144241640 1 +9075404705968840704 712816880 712816880 712816880 1 +9078604269481148416 -298221893 -298221893 -298221893 1 +908 266601601 266601601 266601601 1 +9083076230151864320 2111462911 2111462911 2111462911 1 +9083704659251798016 -1359838019 -1359838019 -1359838019 1 +9084402694981533696 NULL NULL NULL 0 +9085381906890203136 -240529113 -240529113 -240529113 1 +9085434340468473856 76381404 76381404 76381404 1 +9086905513121890304 1796013407 1796013407 1796013407 1 +9089435102788009984 2102440065 2102440065 2102440065 1 +9091082386452684800 748185058 748185058 748185058 1 +9091085792947666944 254921167 254921167 254921167 1 +9094945190752903168 2126491387 2126491387 2126491387 1 +9096395849845194752 100270148 100270148 100270148 1 +91 -1288198020 -1288198020 -1288198020 1 +9104574294205636608 1257621270 1257621270 1257621270 1 +9107991000536498176 -847235873 -847235873 -847235873 1 +9112400579327483904 1111985530 1111985530 1111985530 1 +9114850402293882880 1571267481 1571267481 1571267481 1 +9116137265342169088 -236700442 -236700442 -236700442 1 +9117063974299148288 -297664578 -297664578 -297664578 1 +9119046173224370176 1604076720 1604076720 1604076720 1 +9123116008004288512 1882932986 1882932986 1882932986 1 +913 1845797092 1845797092 1845797092 1 +9131533983989358592 -1234163924 -1234163924 -1234163924 1 +9132009829414584320 -1856034030 -1856034030 -1856034030 1 +9136234417125007360 NULL NULL NULL 0 +9136548192574529536 1121512594 1121512594 1121512594 1 +9139805788041134080 881396599 881396599 881396599 1 +914 -1257859205 -1257859205 -1257859205 1 +9148071980848742400 1370723240 1370723240 1370723240 1 +9149216169284091904 -694520014 -694520014 -694520014 1 +9165199002069458944 430686478 430686478 430686478 1 +9169248521377374208 1566958573 1566958573 1566958573 1 +917 -2076460151 -2076460151 -2076460151 1 +9174894805640142848 1336842978 1336842978 1336842978 1 +918 1359437295 1359437295 1359437295 1 +9180098147855769600 1950882901 1950882901 1950882901 1 +9182828596851990528 -1012329052 -1012329052 -1012329052 1 +9185458640237641728 -1011125931 -1011125931 -1011125931 1 +9185952983951343616 889733679 889733679 889733679 1 +9188173682239275008 -1248781172 -1248781172 -1248781172 1 +919 -357680544 -357680544 -357680544 1 +9190466190353661952 1918230406 1918230406 1918230406 1 +9191943992860327936 -595769210 -595769210 -595769210 1 +9194388393453060096 1002519329 1002519329 1002519329 1 +9199741683232399360 -1096771844 -1096771844 -1096771844 1 +9207107990561972224 -765190882 -765190882 -765190882 1 +9207927479837319168 2066707767 2066707767 2066707767 1 +9209153648361848832 471464395 471464395 471464395 1 +921 1238986437 1238986437 1238986437 1 +9211455920344088576 166320811 166320811 166320811 1 +922 932774185 932774185 932774185 1 +923 -1506324615 -1506324615 -1506324615 1 +927 1044196568 1044196568 1044196568 1 +928 413090363 413090363 413090363 1 +939 -982238309 -982238309 -982238309 1 +94 NULL NULL NULL 0 +945 219415594 219415594 219415594 1 +947 -896274896 -896274896 -896274896 1 +950 -1541281934 -2065080832 -3606362766 2 +958 NULL NULL NULL 0 +961 1805139501 1805139501 1805139501 1 +965 1336951982 1336951982 1336951982 1 +967 -1240208945 -1240208945 -1240208945 1 +976 -1563676282 -1563676282 -1563676282 1 +979 1022214896 1022214896 1022214896 1 +982 -835198551 -835198551 -835198551 1 +987 1807877618 1807877618 1807877618 1 +997 -742707249 -742707249 -742707249 1 +999 -346607939 -346607939 -346607939 1 +NULL 2142592987 -2069439395 -9784926725 80 diff --git ql/src/test/results/clientpositive/vector_groupby5.q.out ql/src/test/results/clientpositive/vector_groupby5.q.out new file mode 100644 index 0000000..42d81f2 --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby5.q.out @@ -0,0 +1,2022 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint) + outputColumnNames: _col0 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col0), min(_col0), sum(_col0), count(_col0) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: bigint), _col2 (type: bigint), _col3 (type: bigint), _col4 (type: bigint) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), min(VALUE._col1), sum(VALUE._col2), count(VALUE._col3) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(b), min(b), sum(b), count(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 -6917607783359897600 -6917607783359897600 -6917607783359897600 1 +-6919476845891313664 -6919476845891313664 -6919476845891313664 -6919476845891313664 1 +-6920172215209426944 -6920172215209426944 -6920172215209426944 -6920172215209426944 1 +-6921654334727036928 -6921654334727036928 -6921654334727036928 -6921654334727036928 1 +-6933565857643814912 -6933565857643814912 -6933565857643814912 -6933565857643814912 1 +-6934304742087655424 -6934304742087655424 -6934304742087655424 -6934304742087655424 1 +-6935038507792801792 -6935038507792801792 -6935038507792801792 -6935038507792801792 1 +-6935548339131138048 -6935548339131138048 -6935548339131138048 -6935548339131138048 1 +-6938706403992854528 -6938706403992854528 -6938706403992854528 -6938706403992854528 1 +-6941777546186579968 -6941777546186579968 -6941777546186579968 -6941777546186579968 1 +-6947955278050181120 -6947955278050181120 -6947955278050181120 -6947955278050181120 1 +-6951350560260784128 -6951350560260784128 -6951350560260784128 -6951350560260784128 1 +-6957946688477274112 -6957946688477274112 -6957946688477274112 -6957946688477274112 1 +-6960947572095770624 -6960947572095770624 -6960947572095770624 -6960947572095770624 1 +-6962271229404348416 -6962271229404348416 -6962271229404348416 -6962271229404348416 1 +-6962292590214234112 -6962292590214234112 -6962292590214234112 -6962292590214234112 1 +-6968771079156654080 -6968771079156654080 -6968771079156654080 -6968771079156654080 1 +-6968892545529896960 -6968892545529896960 -6968892545529896960 -6968892545529896960 1 +-6970396058557005824 -6970396058557005824 -6970396058557005824 -6970396058557005824 1 +-6974654664348033024 -6974654664348033024 -6974654664348033024 -6974654664348033024 1 +-6975459232300236800 -6975459232300236800 -6975459232300236800 -6975459232300236800 1 +-6986178228432322560 -6986178228432322560 -6986178228432322560 -6986178228432322560 1 +-6988811476286873600 -6988811476286873600 -6988811476286873600 -6988811476286873600 1 +-6988970700649168896 -6988970700649168896 -6988970700649168896 -6988970700649168896 1 +-6992217501957169152 -6992217501957169152 -6992217501957169152 -6992217501957169152 1 +-6997233584896229376 -6997233584896229376 -6997233584896229376 -6997233584896229376 1 +-7000925438663041024 -7000925438663041024 -7000925438663041024 -7000925438663041024 1 +-7003696402314215424 -7003696402314215424 -7003696402314215424 -7003696402314215424 1 +-7011425384222244864 -7011425384222244864 -7011425384222244864 -7011425384222244864 1 +-7017212700635545600 -7017212700635545600 -7017212700635545600 -7017212700635545600 1 +-7020852530219171840 -7020852530219171840 -7020852530219171840 -7020852530219171840 1 +-7030489936116252672 -7030489936116252672 -7030489936116252672 -7030489936116252672 1 +-7035132060308643840 -7035132060308643840 -7035132060308643840 -7035132060308643840 1 +-7036607470351654912 -7036607470351654912 -7036607470351654912 -7036607470351654912 1 +-7037375807670501376 -7037375807670501376 -7037375807670501376 -7037375807670501376 1 +-7037638331316469760 -7037638331316469760 -7037638331316469760 -7037638331316469760 1 +-7038455462786334720 -7038455462786334720 -7038455462786334720 -7038455462786334720 1 +-7040248820505149440 -7040248820505149440 -7040248820505149440 -7040248820505149440 1 +-7041362811802148864 -7041362811802148864 -7041362811802148864 -7041362811802148864 1 +-7042183597114081280 -7042183597114081280 -7042183597114081280 -7042183597114081280 1 +-7046180371529351168 -7046180371529351168 -7046180371529351168 -7046180371529351168 1 +-7049618574399692800 -7049618574399692800 -7049618574399692800 -7049618574399692800 1 +-7052619594823221248 -7052619594823221248 -7052619594823221248 -7052619594823221248 1 +-7055619148037554176 -7055619148037554176 -7055619148037554176 -7055619148037554176 1 +-7055760785575665664 -7055760785575665664 -7055760785575665664 -7055760785575665664 1 +-7057750467944931328 -7057750467944931328 -7057750467944931328 -7057750467944931328 1 +-7058986555327307776 -7058986555327307776 -7058986555327307776 -7058986555327307776 1 +-7063777488249085952 -7063777488249085952 -7063777488249085952 -7063777488249085952 1 +-7078068944081002496 -7078068944081002496 -7078068944081002496 -7078068944081002496 1 +-7079898537463537664 -7079898537463537664 -7079898537463537664 -7079898537463537664 1 +-7081500255163727872 -7081500255163727872 -7081500255163727872 -7081500255163727872 1 +-7083646746411720704 -7083646746411720704 -7083646746411720704 -7083646746411720704 1 +-7085247548404178944 -7085247548404178944 -7085247548404178944 -7085247548404178944 1 +-7093825013581979648 -7093825013581979648 -7093825013581979648 -7093825013581979648 1 +-7094189393339678720 -7094189393339678720 -7094189393339678720 -7094189393339678720 1 +-7094827141662539776 -7094827141662539776 -7094827141662539776 -7094827141662539776 1 +-7104310188119834624 -7104310188119834624 -7104310188119834624 -7104310188119834624 1 +-7106210529681350656 -7106210529681350656 -7106210529681350656 -7106210529681350656 1 +-7109790267244814336 -7109790267244814336 -7109790267244814336 -7109790267244814336 1 +-7115054815375073280 -7115054815375073280 -7115054815375073280 -7115054815375073280 1 +-7120456708338688000 -7120456708338688000 -7120456708338688000 -7120456708338688000 1 +-7127548949860818944 -7127548949860818944 -7127548949860818944 -7127548949860818944 1 +-7138415011665043456 -7138415011665043456 -7138415011665043456 -7138415011665043456 1 +-7139677575412686848 -7139677575412686848 -7139677575412686848 -7139677575412686848 1 +-7140008543769042944 -7140008543769042944 -7140008543769042944 -7140008543769042944 1 +-7144791190333546496 -7144791190333546496 -7144791190333546496 -7144791190333546496 1 +-7145585429014888448 -7145585429014888448 -7145585429014888448 -7145585429014888448 1 +-7147490721376591872 -7147490721376591872 -7147490721376591872 -7147490721376591872 1 +-7152177800841502720 -7152177800841502720 -7152177800841502720 -7152177800841502720 1 +-7155539549555105792 -7155539549555105792 -7155539549555105792 -7155539549555105792 1 +-7158472098920390656 -7158472098920390656 -7158472098920390656 -7158472098920390656 1 +-7159700138947862528 -7159700138947862528 -7159700138947862528 -7159700138947862528 1 +-7161165959057334272 -7161165959057334272 -7161165959057334272 -7161165959057334272 1 +-7162299524557471744 -7162299524557471744 -7162299524557471744 -7162299524557471744 1 +-7172594404186693632 -7172594404186693632 -7172594404186693632 -7172594404186693632 1 +-7185369278665605120 -7185369278665605120 -7185369278665605120 -7185369278665605120 1 +-7192529627893858304 -7192529627893858304 -7192529627893858304 -7192529627893858304 1 +-7194281951646187520 -7194281951646187520 -7194281951646187520 -7194281951646187520 1 +-7195217207163166720 -7195217207163166720 -7195217207163166720 -7195217207163166720 1 +-7198372044947275776 -7198372044947275776 -7198372044947275776 -7198372044947275776 1 +-7199983995864711168 -7199983995864711168 -7199983995864711168 -7199983995864711168 1 +-7201085131997011968 -7201085131997011968 -7201085131997011968 -7201085131997011968 1 +-7209060152494817280 -7209060152494817280 -7209060152494817280 -7209060152494817280 1 +-7213775605408178176 -7213775605408178176 -7213775605408178176 -7213775605408178176 1 +-7220731681653604352 -7220731681653604352 -7220731681653604352 -7220731681653604352 1 +-7221474017515347968 -7221474017515347968 -7221474017515347968 -7221474017515347968 1 +-7228589258642194432 -7228589258642194432 -7228589258642194432 -7228589258642194432 1 +-7240213957902663680 -7240213957902663680 -7240213957902663680 -7240213957902663680 1 +-7242345057866285056 -7242345057866285056 -7242345057866285056 -7242345057866285056 1 +-7245872320493322240 -7245872320493322240 -7245872320493322240 -7245872320493322240 1 +-7246123871306244096 -7246123871306244096 -7246123871306244096 -7246123871306244096 1 +-7255010240787030016 -7255010240787030016 -7255010240787030016 -7255010240787030016 1 +-7255686273677328384 -7255686273677328384 -7255686273677328384 -7255686273677328384 1 +-7262049693594943488 -7262049693594943488 -7262049693594943488 -7262049693594943488 1 +-7262384251828518912 -7262384251828518912 -7262384251828518912 -7262384251828518912 1 +-7262798781688651776 -7262798781688651776 -7262798781688651776 -7262798781688651776 1 +-7263060340185194496 -7263060340185194496 -7263060340185194496 -7263060340185194496 1 +-7265998318110711808 -7265998318110711808 -7265998318110711808 -7265998318110711808 1 +-7266719102957125632 -7266719102957125632 -7266719102957125632 -7266719102957125632 1 +-7270034223527993344 -7270034223527993344 -7270034223527993344 -7270034223527993344 1 +-7273590251991162880 -7273590251991162880 -7273590251991162880 -7273590251991162880 1 +-7273694358642851840 -7273694358642851840 -7273694358642851840 -7273694358642851840 1 +-7276111129363046400 -7276111129363046400 -7276111129363046400 -7276111129363046400 1 +-7287583262310350848 -7287583262310350848 -7287583262310350848 -7287583262310350848 1 +-7292078334519894016 -7292078334519894016 -7292078334519894016 -7292078334519894016 1 +-7296096276653391872 -7296096276653391872 -7296096276653391872 -7296096276653391872 1 +-7303847963918393344 -7303847963918393344 -7303847963918393344 -7303847963918393344 1 +-7319315187617587200 -7319315187617587200 -7319315187617587200 -7319315187617587200 1 +-7326863346317598720 -7326863346317598720 -7326863346317598720 -7326863346317598720 1 +-7328087811698909184 -7328087811698909184 -7328087811698909184 -7328087811698909184 1 +-7329767178250018816 -7329767178250018816 -7329767178250018816 -7329767178250018816 1 +-7329807949048193024 -7329807949048193024 -7329807949048193024 -7329807949048193024 1 +-7330203470474985472 -7330203470474985472 -7330203470474985472 -7330203470474985472 1 +-7330413050756235264 -7330413050756235264 -7330413050756235264 -7330413050756235264 1 +-7333278178640953344 -7333278178640953344 -7333278178640953344 -7333278178640953344 1 +-7333362172439035904 -7333362172439035904 -7333362172439035904 -7333362172439035904 1 +-7340231535789727744 -7340231535789727744 -7340231535789727744 -7340231535789727744 1 +-7344146703223496704 -7344146703223496704 -7344146703223496704 -7344146703223496704 1 +-7344947507044466688 -7344947507044466688 -7344947507044466688 -7344947507044466688 1 +-7345562788132315136 -7345562788132315136 -7345562788132315136 -7345562788132315136 1 +-7356685674003021824 -7356685674003021824 -7356685674003021824 -7356685674003021824 1 +-7357888618985873408 -7357888618985873408 -7357888618985873408 -7357888618985873408 1 +-7362189611124563968 -7362189611124563968 -7362189611124563968 -7362189611124563968 1 +-7366430883634929664 -7366430883634929664 -7366430883634929664 -7366430883634929664 1 +-7378096180613840896 -7378096180613840896 -7378096180613840896 -7378096180613840896 1 +-7380731416973295616 -7380731416973295616 -7380731416973295616 -7380731416973295616 1 +-7395343938785738752 -7395343938785738752 -7395343938785738752 -7395343938785738752 1 +-7395553021620731904 -7395553021620731904 -7395553021620731904 -7395553021620731904 1 +-7399631791131074560 -7399631791131074560 -7399631791131074560 -7399631791131074560 1 +-7404052043914526720 -7404052043914526720 -7404052043914526720 -7404052043914526720 1 +-7404057145074712576 -7404057145074712576 -7404057145074712576 -7404057145074712576 1 +-7409317158045442048 -7409317158045442048 -7409317158045442048 -7409317158045442048 1 +-7409653086454030336 -7409653086454030336 -7409653086454030336 -7409653086454030336 1 +-7412431471807283200 -7412431471807283200 -7412431471807283200 -7412431471807283200 1 +-7413317118463164416 -7413317118463164416 -7413317118463164416 -7413317118463164416 1 +-7419068456205385728 -7419068456205385728 -7419068456205385728 -7419068456205385728 1 +-7420448501073051648 -7420448501073051648 -7420448501073051648 -7420448501073051648 1 +-7425160895830573056 -7425160895830573056 -7425160895830573056 -7425160895830573056 1 +-7429331808102899712 -7429331808102899712 -7429331808102899712 -7429331808102899712 1 +-7433265617153343488 -7433265617153343488 -7433265617153343488 -7433265617153343488 1 +-7442593976514420736 -7442593976514420736 -7442593976514420736 -7442593976514420736 1 +-7444070205513138176 -7444070205513138176 -7444070205513138176 -7444070205513138176 1 +-7451660755269853184 -7451660755269853184 -7451660755269853184 -7451660755269853184 1 +-7453525026342617088 -7453525026342617088 -7453525026342617088 -7453525026342617088 1 +-7455898404374921216 -7455898404374921216 -7455898404374921216 -7455898404374921216 1 +-7456869587112255488 -7456869587112255488 -7456869587112255488 -7456869587112255488 1 +-7461750143936897024 -7461750143936897024 -7461750143936897024 -7461750143936897024 1 +-7464270453557993472 -7464270453557993472 -7464270453557993472 -7464270453557993472 1 +-7469660864676585472 -7469660864676585472 -7469660864676585472 -7469660864676585472 1 +-7470307155642245120 -7470307155642245120 -7470307155642245120 -7470307155642245120 1 +-7476082621253402624 -7476082621253402624 -7476082621253402624 -7476082621253402624 1 +-7483435388852559872 -7483435388852559872 -7483435388852559872 -7483435388852559872 1 +-7488345684795342848 -7488345684795342848 -7488345684795342848 -7488345684795342848 1 +-7488415863027367936 -7488415863027367936 -7488415863027367936 -7488415863027367936 1 +-7494411162675691520 -7494411162675691520 -7494411162675691520 -7494411162675691520 1 +-7496839341561954304 -7496839341561954304 -7496839341561954304 -7496839341561954304 1 +-7497303453253402624 -7497303453253402624 -7497303453253402624 -7497303453253402624 1 +-7500200359698907136 -7500200359698907136 -7500200359698907136 -7500200359698907136 1 +-7501803640821456896 -7501803640821456896 -7501803640821456896 -7501803640821456896 1 +-7506254246954500096 -7506254246954500096 -7506254246954500096 -7506254246954500096 1 +-7507424948896415744 -7507424948896415744 -7507424948896415744 -7507424948896415744 1 +-7507578199583694848 -7507578199583694848 -7507578199583694848 -7507578199583694848 1 +-7510418793070075904 -7510418793070075904 -7510418793070075904 -7510418793070075904 1 +-7511202710200885248 -7511202710200885248 -7511202710200885248 -7511202710200885248 1 +-7511952204985049088 -7511952204985049088 -7511952204985049088 -7511952204985049088 1 +-7512289590991544320 -7512289590991544320 -7512289590991544320 -7512289590991544320 1 +-7512297136103800832 -7512297136103800832 -7512297136103800832 -7512297136103800832 1 +-7515996202498473984 -7515996202498473984 -7515996202498473984 -7515996202498473984 1 +-7524170566881329152 -7524170566881329152 -7524170566881329152 -7524170566881329152 1 +-7526793959592140800 -7526793959592140800 -7526793959592140800 -7526793959592140800 1 +-7528526815026692096 -7528526815026692096 -7528526815026692096 -7528526815026692096 1 +-7532751268425261056 -7532751268425261056 -7532751268425261056 -7532751268425261056 1 +-7535857766791577600 -7535857766791577600 -7535857766791577600 -7535857766791577600 1 +-7535958203887706112 -7535958203887706112 -7535958203887706112 -7535958203887706112 1 +-7536330682873937920 -7536330682873937920 -7536330682873937920 -7536330682873937920 1 +-7540104552219860992 -7540104552219860992 -7540104552219860992 -7540104552219860992 1 +-7541860097718902784 -7541860097718902784 -7541860097718902784 -7541860097718902784 1 +-7542857121910046720 -7542857121910046720 -7542857121910046720 -7542857121910046720 1 +-7547245548870025216 -7547245548870025216 -7547245548870025216 -7547245548870025216 1 +-7547432761381339136 -7547432761381339136 -7547432761381339136 -7547432761381339136 1 +-7551394356730339328 -7551394356730339328 -7551394356730339328 -7551394356730339328 1 +-7557017910095650816 -7557017910095650816 -7557017910095650816 -7557017910095650816 1 +-7558524160894427136 -7558524160894427136 -7558524160894427136 -7558524160894427136 1 +-7571293705217687552 -7571293705217687552 -7571293705217687552 -7571293705217687552 1 +-7571957778022178816 -7571957778022178816 -7571957778022178816 -7571957778022178816 1 +-7572262898020278272 -7572262898020278272 -7572262898020278272 -7572262898020278272 1 +-7572962089372991488 -7572962089372991488 -7572962089372991488 -7572962089372991488 1 +-7576194692683563008 -7576194692683563008 -7576194692683563008 -7576194692683563008 1 +-7593363318079610880 -7593363318079610880 -7593363318079610880 -7593363318079610880 1 +-7594824008626372608 -7594824008626372608 -7594824008626372608 -7594824008626372608 1 +-7598782894648565760 -7598782894648565760 -7598782894648565760 -7598782894648565760 1 +-7600138468036386816 -7600138468036386816 -7600138468036386816 -7600138468036386816 1 +-7603467428164009984 -7603467428164009984 -7603467428164009984 -7603467428164009984 1 +-7603569103205916672 -7603569103205916672 -7603569103205916672 -7603569103205916672 1 +-7610137349734883328 -7610137349734883328 -7610137349734883328 -7610137349734883328 1 +-7611584069753552896 -7611584069753552896 -7611584069753552896 -7611584069753552896 1 +-7612455481940246528 -7612455481940246528 -7612455481940246528 -7612455481940246528 1 +-7612466483992051712 -7612466483992051712 -7612466483992051712 -7612466483992051712 1 +-7616522969329262592 -7616522969329262592 -7616522969329262592 -7616522969329262592 1 +-7617860842651017216 -7617860842651017216 -7617860842651017216 -7617860842651017216 1 +-7623047151287754752 -7623047151287754752 -7623047151287754752 -7623047151287754752 1 +-7623359796281999360 -7623359796281999360 -7623359796281999360 -7623359796281999360 1 +-7623405558242500608 -7623405558242500608 -7623405558242500608 -7623405558242500608 1 +-7624057992767782912 -7624057992767782912 -7624057992767782912 -7624057992767782912 1 +-7629401308029976576 -7629401308029976576 -7629401308029976576 -7629401308029976576 1 +-7637494527844343808 -7637494527844343808 -7637494527844343808 -7637494527844343808 1 +-7637755520917741568 -7637755520917741568 -7637755520917741568 -7637755520917741568 1 +-7642381493746483200 -7642381493746483200 -7642381493746483200 -7642381493746483200 1 +-7647020450676146176 -7647020450676146176 -7647020450676146176 -7647020450676146176 1 +-7661192563533062144 -7661192563533062144 -7661192563533062144 -7661192563533062144 1 +-7661250850555633664 -7661250850555633664 -7661250850555633664 -7661250850555633664 1 +-7663293054873812992 -7663293054873812992 -7663293054873812992 -7663293054873812992 1 +-7665186441284968448 -7665186441284968448 -7665186441284968448 -7665186441284968448 1 +-7668388017287020544 -7668388017287020544 -7668388017287020544 -7668388017287020544 1 +-7669169138124275712 -7669169138124275712 -7669169138124275712 -7669169138124275712 1 +-7673901622181953536 -7673901622181953536 -7673901622181953536 -7673901622181953536 1 +-7679894005808693248 -7679894005808693248 -7679894005808693248 -7679894005808693248 1 +-7686220526274502656 -7686220526274502656 -7686220526274502656 -7686220526274502656 1 +-7687052294777208832 -7687052294777208832 -7687052294777208832 -7687052294777208832 1 +-7692192232238678016 -7692192232238678016 -7692192232238678016 -7692192232238678016 1 +-7695491171376291840 -7695491171376291840 -7695491171376291840 -7695491171376291840 1 +-7700203302632210432 -7700203302632210432 -7700203302632210432 -7700203302632210432 1 +-7703540456272994304 -7703540456272994304 -7703540456272994304 -7703540456272994304 1 +-7707242953271500800 -7707242953271500800 -7707242953271500800 -7707242953271500800 1 +-7707867749256445952 -7707867749256445952 -7707867749256445952 -7707867749256445952 1 +-7708932208121225216 -7708932208121225216 -7708932208121225216 -7708932208121225216 1 +-7709958788604936192 -7709958788604936192 -7709958788604936192 -7709958788604936192 1 +-7712425776235274240 -7712425776235274240 -7712425776235274240 -7712425776235274240 1 +-7720966287634112512 -7720966287634112512 -7720966287634112512 -7720966287634112512 1 +-7739424919198187520 -7739424919198187520 -7739424919198187520 -7739424919198187520 1 +-7744462446680375296 -7744462446680375296 -7744462446680375296 -7744462446680375296 1 +-7751265769984491520 -7751265769984491520 -7751265769984491520 -7751265769984491520 1 +-7751427073017544704 -7751427073017544704 -7751427073017544704 -7751427073017544704 1 +-7753051494275432448 -7753051494275432448 -7753051494275432448 -7753051494275432448 1 +-7759238919361888256 -7759238919361888256 -7759238919361888256 -7759238919361888256 1 +-7759425383684849664 -7759425383684849664 -7759425383684849664 -7759425383684849664 1 +-7772064021830574080 -7772064021830574080 -7772064021830574080 -7772064021830574080 1 +-7773957003968675840 -7773957003968675840 -7773957003968675840 -7773957003968675840 1 +-7777884099756122112 -7777884099756122112 -7777884099756122112 -7777884099756122112 1 +-7778829032042790912 -7778829032042790912 -7778829032042790912 -7778829032042790912 1 +-7779270198785875968 -7779270198785875968 -7779270198785875968 -7779270198785875968 1 +-7782344916178796544 -7782344916178796544 -7782344916178796544 -7782344916178796544 1 +-7784419454650843136 -7784419454650843136 -7784419454650843136 -7784419454650843136 1 +-7792903881635938304 -7792903881635938304 -7792903881635938304 -7792903881635938304 1 +-7793447076762345472 -7793447076762345472 -7793447076762345472 -7793447076762345472 1 +-7797149520019062784 -7797149520019062784 -7797149520019062784 -7797149520019062784 1 +-7797151404935618560 -7797151404935618560 -7797151404935618560 -7797151404935618560 1 +-7800879252150779904 -7800879252150779904 -7800879252150779904 -7800879252150779904 1 +-7802538500225777664 -7802538500225777664 -7802538500225777664 -7802538500225777664 1 +-7804116532814151680 -7804116532814151680 -7804116532814151680 -7804116532814151680 1 +-7805985795815342080 -7805985795815342080 -7805985795815342080 -7805985795815342080 1 +-7811060170911375360 -7811060170911375360 -7811060170911375360 -7811060170911375360 1 +-7818454479651135488 -7818454479651135488 -7818454479651135488 -7818454479651135488 1 +-7819437864839495680 -7819437864839495680 -7819437864839495680 -7819437864839495680 1 +-7822452149325094912 -7822452149325094912 -7822452149325094912 -7822452149325094912 1 +-7824788571789279232 -7824788571789279232 -7824788571789279232 -7824788571789279232 1 +-7827420207675105280 -7827420207675105280 -7827420207675105280 -7827420207675105280 1 +-7831320202242228224 -7831320202242228224 -7831320202242228224 -7831320202242228224 1 +-7831595638727565312 -7831595638727565312 -7831595638727565312 -7831595638727565312 1 +-7833618000492109824 -7833618000492109824 -7833618000492109824 -7833618000492109824 1 +-7835907977757245440 -7835907977757245440 -7835907977757245440 -7835907977757245440 1 +-7838598833900584960 -7838598833900584960 -7838598833900584960 -7838598833900584960 1 +-7840338174858199040 -7840338174858199040 -7840338174858199040 -7840338174858199040 1 +-7845896959112658944 -7845896959112658944 -7845896959112658944 -7845896959112658944 1 +-7848043121524228096 -7848043121524228096 -7848043121524228096 -7848043121524228096 1 +-7849504559236210688 -7849504559236210688 -7849504559236210688 -7849504559236210688 1 +-7858505678035951616 -7858505678035951616 -7858505678035951616 -7858505678035951616 1 +-7866079955473989632 -7866079955473989632 -7866079955473989632 -7866079955473989632 1 +-7867219225874571264 -7867219225874571264 -7867219225874571264 -7867219225874571264 1 +-7868306678534193152 -7868306678534193152 -7868306678534193152 -7868306678534193152 1 +-7873753603299540992 -7873753603299540992 -7873753603299540992 -7873753603299540992 1 +-7875953567586451456 -7875953567586451456 -7875953567586451456 -7875953567586451456 1 +-7877598807023386624 -7877598807023386624 -7877598807023386624 -7877598807023386624 1 +-7878145001776152576 -7878145001776152576 -7878145001776152576 -7878145001776152576 1 +-7879864376629567488 -7879864376629567488 -7879864376629567488 -7879864376629567488 1 +-7881262505761710080 -7881262505761710080 -7881262505761710080 -7881262505761710080 1 +-7881351200983613440 -7881351200983613440 -7881351200983613440 -7881351200983613440 1 +-7883252982752665600 -7883252982752665600 -7883252982752665600 -7883252982752665600 1 +-7884460946615984128 -7884460946615984128 -7884460946615984128 -7884460946615984128 1 +-7888051992910274560 -7888051992910274560 -7888051992910274560 -7888051992910274560 1 +-7892780594910871552 -7892780594910871552 -7892780594910871552 -7892780594910871552 1 +-7893577088764174336 -7893577088764174336 -7893577088764174336 -7893577088764174336 1 +-7894382303337832448 -7894382303337832448 -7894382303337832448 -7894382303337832448 1 +-7895991410072928256 -7895991410072928256 -7895991410072928256 -7895991410072928256 1 +-7902517224300036096 -7902517224300036096 -7902517224300036096 -7902517224300036096 1 +-7903158849011843072 -7903158849011843072 -7903158849011843072 -7903158849011843072 1 +-7904188195431661568 -7904188195431661568 -7904188195431661568 -7904188195431661568 1 +-7907355742053883904 -7907355742053883904 -7907355742053883904 -7907355742053883904 1 +-7910019233726242816 -7910019233726242816 -7910019233726242816 -7910019233726242816 1 +-7911421221625077760 -7911421221625077760 -7911421221625077760 -7911421221625077760 1 +-7915999634274369536 -7915999634274369536 -7915999634274369536 -7915999634274369536 1 +-7916510129632296960 -7916510129632296960 -7916510129632296960 -7916510129632296960 1 +-7928062266382778368 -7928062266382778368 -7928062266382778368 -7928062266382778368 1 +-7928440849566146560 -7928440849566146560 -7928440849566146560 -7928440849566146560 1 +-7939634346485858304 -7939634346485858304 -7939634346485858304 -7939634346485858304 1 +-7949309059286163456 -7949309059286163456 -7949309059286163456 -7949309059286163456 1 +-7949445503604604928 -7949445503604604928 -7949445503604604928 -7949445503604604928 1 +-7953426740065312768 -7953426740065312768 -7953426740065312768 -7953426740065312768 1 +-7964801953178091520 -7964801953178091520 -7964801953178091520 -7964801953178091520 1 +-7966960765508280320 -7966960765508280320 -7966960765508280320 -7966960765508280320 1 +-7978782649203228672 -7978782649203228672 -7978782649203228672 -7978782649203228672 1 +-7989766326847807488 -7989766326847807488 -7989766326847807488 -7989766326847807488 1 +-7998947380180819968 -7998947380180819968 -7998947380180819968 -7998947380180819968 1 +-8007017894942638080 -8007017894942638080 -8007017894942638080 -8007017894942638080 1 +-8013397854633648128 -8013397854633648128 -8013397854633648128 -8013397854633648128 1 +-8016589197379289088 -8016589197379289088 -8016589197379289088 -8016589197379289088 1 +-8017791189288869888 -8017791189288869888 -8017791189288869888 -8017791189288869888 1 +-8018511948141748224 -8018511948141748224 -8018511948141748224 -8018511948141748224 1 +-8021859935185928192 -8021859935185928192 -8021859935185928192 -8021859935185928192 1 +-8022573309127000064 -8022573309127000064 -8022573309127000064 -8022573309127000064 1 +-8023708819947323392 -8023708819947323392 -8023708819947323392 -8023708819947323392 1 +-8028275725610909696 -8028275725610909696 -8028275725610909696 -8028275725610909696 1 +-8028910243475038208 -8028910243475038208 -8028910243475038208 -8028910243475038208 1 +-8030058711611629568 -8030058711611629568 -8030058711611629568 -8030058711611629568 1 +-8034414142083170304 -8034414142083170304 -8034414142083170304 -8034414142083170304 1 +-8046189486447017984 -8046189486447017984 -8046189486447017984 -8046189486447017984 1 +-8046238369820344320 -8046238369820344320 -8046238369820344320 -8046238369820344320 1 +-8047774491688255488 -8047774491688255488 -8047774491688255488 -8047774491688255488 1 +-8051395538179063808 -8051395538179063808 -8051395538179063808 -8051395538179063808 1 +-8051587217208967168 -8051587217208967168 -8051587217208967168 -8051587217208967168 1 +-8051871680800120832 -8051871680800120832 -8051871680800120832 -8051871680800120832 1 +-8054581198284668928 -8054581198284668928 -8054581198284668928 -8054581198284668928 1 +-8067243114610532352 -8067243114610532352 -8067243114610532352 -8067243114610532352 1 +-8070535484085895168 -8070535484085895168 -8070535484085895168 -8070535484085895168 1 +-8076479329071955968 -8076479329071955968 -8076479329071955968 -8076479329071955968 1 +-8082793390939193344 -8082793390939193344 -8082793390939193344 -8082793390939193344 1 +-8084716955963252736 -8084716955963252736 -8084716955963252736 -8084716955963252736 1 +-8086577583338061824 -8086577583338061824 -8086577583338061824 -8086577583338061824 1 +-8088337436168830976 -8088337436168830976 -8088337436168830976 -8088337436168830976 1 +-8099313480512716800 -8099313480512716800 -8099313480512716800 -8099313480512716800 1 +-8103788088118018048 -8103788088118018048 -8103788088118018048 -8103788088118018048 1 +-8104684579106914304 -8104684579106914304 -8104684579106914304 -8104684579106914304 1 +-8108693586698706944 -8108693586698706944 -8108693586698706944 -8108693586698706944 1 +-8115963579415650304 -8115963579415650304 -8115963579415650304 -8115963579415650304 1 +-8117838333114212352 -8117838333114212352 -8117838333114212352 -8117838333114212352 1 +-8122639684164501504 -8122639684164501504 -8122639684164501504 -8122639684164501504 1 +-8127494999848919040 -8127494999848919040 -8127494999848919040 -8127494999848919040 1 +-8131997716860526592 -8131997716860526592 -8131997716860526592 -8131997716860526592 1 +-8136227554401107968 -8136227554401107968 -8136227554401107968 -8136227554401107968 1 +-8140349174954893312 -8140349174954893312 -8140349174954893312 -8140349174954893312 1 +-8142667274351345664 -8142667274351345664 -8142667274351345664 -8142667274351345664 1 +-8147405381260345344 -8147405381260345344 -8147405381260345344 -8147405381260345344 1 +-8158011642485825536 -8158011642485825536 -8158011642485825536 -8158011642485825536 1 +-8161047750470279168 -8161047750470279168 -8161047750470279168 -8161047750470279168 1 +-8172827216441573376 -8172827216441573376 -8172827216441573376 -8172827216441573376 1 +-8182421179156905984 -8182421179156905984 -8182421179156905984 -8182421179156905984 1 +-8191825921746305024 -8191825921746305024 -8191825921746305024 -8191825921746305024 1 +-8194062064124362752 -8194062064124362752 -8194062064124362752 -8194062064124362752 1 +-8203008052020879360 -8203008052020879360 -8203008052020879360 -8203008052020879360 1 +-8203075743525806080 -8203075743525806080 -8203075743525806080 -8203075743525806080 1 +-8205148279289085952 -8205148279289085952 -8205148279289085952 -8205148279289085952 1 +-8214462866994339840 -8214462866994339840 -8214462866994339840 -8214462866994339840 1 +-8219876839318716416 -8219876839318716416 -8219876839318716416 -8219876839318716416 1 +-8232763638546694144 -8232763638546694144 -8232763638546694144 -8232763638546694144 1 +-8240034910581153792 -8240034910581153792 -8240034910581153792 -8240034910581153792 1 +-8240684139569233920 -8240684139569233920 -8240684139569233920 -8240684139569233920 1 +-8243487285852766208 -8243487285852766208 -8243487285852766208 -8243487285852766208 1 +-8244116388227104768 -8244116388227104768 -8244116388227104768 -8244116388227104768 1 +-8244657976255889408 -8244657976255889408 -8244657976255889408 -8244657976255889408 1 +-8260340354454503424 -8260340354454503424 -8260340354454503424 -8260340354454503424 1 +-8269917980278980608 -8269917980278980608 -8269917980278980608 -8269917980278980608 1 +-8270479187688816640 -8270479187688816640 -8270479187688816640 -8270479187688816640 1 +-8275337702906757120 -8275337702906757120 -8275337702906757120 -8275337702906757120 1 +-8280276629934981120 -8280276629934981120 -8280276629934981120 -8280276629934981120 1 +-8293833565967810560 -8293833565967810560 -8293833565967810560 -8293833565967810560 1 +-8297230235506343936 -8297230235506343936 -8297230235506343936 -8297230235506343936 1 +-8300526097982226432 -8300526097982226432 -8300526097982226432 -8300526097982226432 1 +-8300764106868350976 -8300764106868350976 -8300764106868350976 -8300764106868350976 1 +-8302817097848307712 -8302817097848307712 -8302817097848307712 -8302817097848307712 1 +-8317591428117274624 -8317591428117274624 -8317591428117274624 -8317591428117274624 1 +-8318886086186213376 -8318886086186213376 -8318886086186213376 -8318886086186213376 1 +-8322751250650218496 -8322751250650218496 -8322751250650218496 -8322751250650218496 1 +-8330233444291084288 -8330233444291084288 -8330233444291084288 -8330233444291084288 1 +-8335810316927213568 -8335810316927213568 -8335810316927213568 -8335810316927213568 1 +-8340523561480437760 -8340523561480437760 -8340523561480437760 -8340523561480437760 1 +-8345065519816695808 -8345065519816695808 -8345065519816695808 -8345065519816695808 1 +-8347088645602050048 -8347088645602050048 -8347088645602050048 -8347088645602050048 1 +-8357136656913686528 -8357136656913686528 -8357136656913686528 -8357136656913686528 1 +-8358130693961195520 -8358130693961195520 -8358130693961195520 -8358130693961195520 1 +-8359839265974165504 -8359839265974165504 -8359839265974165504 -8359839265974165504 1 +-8368269352975982592 -8368269352975982592 -8368269352975982592 -8368269352975982592 1 +-8368487814665895936 -8368487814665895936 -8368487814665895936 -8368487814665895936 1 +-8369487968903897088 -8369487968903897088 -8369487968903897088 -8369487968903897088 1 +-8379109122834997248 -8379109122834997248 -8379109122834997248 -8379109122834997248 1 +-8379964450833367040 -8379964450833367040 -8379964450833367040 -8379964450833367040 1 +-8384695077413412864 -8384695077413412864 -8384695077413412864 -8384695077413412864 1 +-8387347109404286976 -8387347109404286976 -8387347109404286976 -8387347109404286976 1 +-8387536830476820480 -8387536830476820480 -8387536830476820480 -8387536830476820480 1 +-8395998375405912064 -8395998375405912064 -8395998375405912064 -8395998375405912064 1 +-8400045653258444800 -8400045653258444800 -8400045653258444800 -8400045653258444800 1 +-8411282676082565120 -8411282676082565120 -8411282676082565120 -8411282676082565120 1 +-8418913260807217152 -8418913260807217152 -8418913260807217152 -8418913260807217152 1 +-8425998949410889728 -8425998949410889728 -8425998949410889728 -8425998949410889728 1 +-8426531414463545344 -8426531414463545344 -8426531414463545344 -8426531414463545344 1 +-8430283518005846016 -8430283518005846016 -8430283518005846016 -8430283518005846016 1 +-8430370933326536704 -8430370933326536704 -8430370933326536704 -8430370933326536704 1 +-8431492599012163584 -8431492599012163584 -8431492599012163584 -8431492599012163584 1 +-8438554249514491904 -8438554249514491904 -8438554249514491904 -8438554249514491904 1 +-8445801063348281344 -8445801063348281344 -8445801063348281344 -8445801063348281344 1 +-8453491903284994048 -8453491903284994048 -8453491903284994048 -8453491903284994048 1 +-8454143651040444416 -8454143651040444416 -8454143651040444416 -8454143651040444416 1 +-8465978403747037184 -8465978403747037184 -8465978403747037184 -8465978403747037184 1 +-8469607298426437632 -8469607298426437632 -8469607298426437632 -8469607298426437632 1 +-8471480409335513088 -8471480409335513088 -8471480409335513088 -8471480409335513088 1 +-8485389240529354752 -8485389240529354752 -8485389240529354752 -8485389240529354752 1 +-8488247955875618816 -8488247955875618816 -8488247955875618816 -8488247955875618816 1 +-8490382417169408000 -8490382417169408000 -8490382417169408000 -8490382417169408000 1 +-8494118409594650624 -8494118409594650624 -8494118409594650624 -8494118409594650624 1 +-8503342882470019072 -8503342882470019072 -8503342882470019072 -8503342882470019072 1 +-8503573595507761152 -8503573595507761152 -8503573595507761152 -8503573595507761152 1 +-8507279516485566464 -8507279516485566464 -8507279516485566464 -8507279516485566464 1 +-8509547439040757760 -8509547439040757760 -8509547439040757760 -8509547439040757760 1 +-8518060755719585792 -8518060755719585792 -8518060755719585792 -8518060755719585792 1 +-8518258741831680000 -8518258741831680000 -8518258741831680000 -8518258741831680000 1 +-8521578237232529408 -8521578237232529408 -8521578237232529408 -8521578237232529408 1 +-8522878384019169280 -8522878384019169280 -8522878384019169280 -8522878384019169280 1 +-8523434203900674048 -8523434203900674048 -8523434203900674048 -8523434203900674048 1 +-8525212657458348032 -8525212657458348032 -8525212657458348032 -8525212657458348032 1 +-8535957064499879936 -8535957064499879936 -8535957064499879936 -8535957064499879936 1 +-8536369662934401024 -8536369662934401024 -8536369662934401024 -8536369662934401024 1 +-8543982423727128576 -8543982423727128576 -8543982423727128576 -8543982423727128576 1 +-8544299740525461504 -8544299740525461504 -8544299740525461504 -8544299740525461504 1 +-8545239748068941824 -8545239748068941824 -8545239748068941824 -8545239748068941824 1 +-8546758906409312256 -8546758906409312256 -8546758906409312256 -8546758906409312256 1 +-8552393882631389184 -8552393882631389184 -8552393882631389184 -8552393882631389184 1 +-8555709701170552832 -8555709701170552832 -8555709701170552832 -8555709701170552832 1 +-8559008501282832384 -8559008501282832384 -8559008501282832384 -8559008501282832384 1 +-8559252110266564608 -8559252110266564608 -8559252110266564608 -8559252110266564608 1 +-8562524688907485184 -8562524688907485184 -8562524688907485184 -8562524688907485184 1 +-8566856504746352640 -8566856504746352640 -8566856504746352640 -8566856504746352640 1 +-8566940231897874432 -8566940231897874432 -8566940231897874432 -8566940231897874432 1 +-8570933074545745920 -8570933074545745920 -8570933074545745920 -8570933074545745920 1 +-8572823448513445888 -8572823448513445888 -8572823448513445888 -8572823448513445888 1 +-8572949572756774912 -8572949572756774912 -8572949572756774912 -8572949572756774912 1 +-8581765103969312768 -8581765103969312768 -8581765103969312768 -8581765103969312768 1 +-8581979259158929408 -8581979259158929408 -8581979259158929408 -8581979259158929408 1 +-8584520406368493568 -8584520406368493568 -8584520406368493568 -8584520406368493568 1 +-8585134536083660800 -8585134536083660800 -8585134536083660800 -8585134536083660800 1 +-8585966098173870080 -8585966098173870080 -8585966098173870080 -8585966098173870080 1 +-8593419958317056000 -8593419958317056000 -8593419958317056000 -8593419958317056000 1 +-8603817012434198528 -8603817012434198528 -8603817012434198528 -8603817012434198528 1 +-8604758220106014720 -8604758220106014720 -8604758220106014720 -8604758220106014720 1 +-8607195685207408640 -8607195685207408640 -8607195685207408640 -8607195685207408640 1 +-8615168537390571520 -8615168537390571520 -8615168537390571520 -8615168537390571520 1 +-8619303037130301440 -8619303037130301440 -8619303037130301440 -8619303037130301440 1 +-8623238306523824128 -8623238306523824128 -8623238306523824128 -8623238306523824128 1 +-8623965248051789824 -8623965248051789824 -8623965248051789824 -8623965248051789824 1 +-8632237187473088512 -8632237187473088512 -8632237187473088512 -8632237187473088512 1 +-8649711322250362880 -8649711322250362880 -8649711322250362880 -8649711322250362880 1 +-8651641150831362048 -8651641150831362048 -8651641150831362048 -8651641150831362048 1 +-8654433008222797824 -8654433008222797824 -8654433008222797824 -8654433008222797824 1 +-8654797319350927360 -8654797319350927360 -8654797319350927360 -8654797319350927360 1 +-8658387566611996672 -8658387566611996672 -8658387566611996672 -8658387566611996672 1 +-8659643752269242368 -8659643752269242368 -8659643752269242368 -8659643752269242368 1 +-8659692318743314432 -8659692318743314432 -8659692318743314432 -8659692318743314432 1 +-8660149447361404928 -8660149447361404928 -8660149447361404928 -8660149447361404928 1 +-8664374244449050624 -8664374244449050624 -8664374244449050624 -8664374244449050624 1 +-8664806103426252800 -8664806103426252800 -8664806103426252800 -8664806103426252800 1 +-8665218198816497664 -8665218198816497664 -8665218198816497664 -8665218198816497664 1 +-8665764757143658496 -8665764757143658496 -8665764757143658496 -8665764757143658496 1 +-8675661101615489024 -8675661101615489024 -8675661101615489024 -8675661101615489024 1 +-8675892979328212992 -8675892979328212992 -8675892979328212992 -8675892979328212992 1 +-8683802826440105984 -8683802826440105984 -8683802826440105984 -8683802826440105984 1 +-8688153842294595584 -8688153842294595584 -8688153842294595584 -8688153842294595584 1 +-8689606130068611072 -8689606130068611072 -8689606130068611072 -8689606130068611072 1 +-8694818694700048384 -8694818694700048384 -8694818694700048384 -8694818694700048384 1 +-8696162322976997376 -8696162322976997376 -8696162322976997376 -8696162322976997376 1 +-8703026916864802816 -8703026916864802816 -8703026916864802816 -8703026916864802816 1 +-8704234107608203264 -8704234107608203264 -8704234107608203264 -8704234107608203264 1 +-8705403811649355776 -8705403811649355776 -8705403811649355776 -8705403811649355776 1 +-8710298418608619520 -8710298418608619520 -8710298418608619520 -8710298418608619520 1 +-8714995808835444736 -8714995808835444736 -8714995808835444736 -8714995808835444736 1 +-8719510423723155456 -8719510423723155456 -8719510423723155456 -8719510423723155456 1 +-8730803262481580032 -8730803262481580032 -8730803262481580032 -8730803262481580032 1 +-8731068123910987776 -8731068123910987776 -8731068123910987776 -8731068123910987776 1 +-8746702976270385152 -8746702976270385152 -8746702976270385152 -8746702976270385152 1 +-8754966081778565120 -8754966081778565120 -8754966081778565120 -8754966081778565120 1 +-8754992450211692544 -8754992450211692544 -8754992450211692544 -8754992450211692544 1 +-8756989568739835904 -8756989568739835904 -8756989568739835904 -8756989568739835904 1 +-8760655406971863040 -8760655406971863040 -8760655406971863040 -8760655406971863040 1 +-8763062627136864256 -8763062627136864256 -8763062627136864256 -8763062627136864256 1 +-8768744394742235136 -8768744394742235136 -8768744394742235136 -8768744394742235136 1 +-8782213262837530624 -8782213262837530624 -8782213262837530624 -8782213262837530624 1 +-8783777723063099392 -8783777723063099392 -8783777723063099392 -8783777723063099392 1 +-8789178184387641344 -8789178184387641344 -8789178184387641344 -8789178184387641344 1 +-8797972842900307968 -8797972842900307968 -8797972842900307968 -8797972842900307968 1 +-8807361476639629312 -8807361476639629312 -8807361476639629312 -8807361476639629312 1 +-8813211231120031744 -8813211231120031744 -8813211231120031744 -8813211231120031744 1 +-8831091081349758976 -8831091081349758976 -8831091081349758976 -8831091081349758976 1 +-8832750849949892608 -8832750849949892608 -8832750849949892608 -8832750849949892608 1 +-8833019327569510400 -8833019327569510400 -8833019327569510400 -8833019327569510400 1 +-8835408234247168000 -8835408234247168000 -8835408234247168000 -8835408234247168000 1 +-8836899523028312064 -8836899523028312064 -8836899523028312064 -8836899523028312064 1 +-8843859708698583040 -8843859708698583040 -8843859708698583040 -8843859708698583040 1 +-8844949406948671488 -8844949406948671488 -8844949406948671488 -8844949406948671488 1 +-8845239510002753536 -8845239510002753536 -8845239510002753536 -8845239510002753536 1 +-8852770376039219200 -8852770376039219200 -8852770376039219200 -8852770376039219200 1 +-8853553406533894144 -8853553406533894144 -8853553406533894144 -8853553406533894144 1 +-8856151919723003904 -8856151919723003904 -8856151919723003904 -8856151919723003904 1 +-8856821118526734336 -8856821118526734336 -8856821118526734336 -8856821118526734336 1 +-8857335871148171264 -8857335871148171264 -8857335871148171264 -8857335871148171264 1 +-8858063395050110976 -8858063395050110976 -8858063395050110976 -8858063395050110976 1 +-8859107121649893376 -8859107121649893376 -8859107121649893376 -8859107121649893376 1 +-8866442231663067136 -8866442231663067136 -8866442231663067136 -8866442231663067136 1 +-8870186814744420352 -8870186814744420352 -8870186814744420352 -8870186814744420352 1 +-8870673219965001728 -8870673219965001728 -8870673219965001728 -8870673219965001728 1 +-8875546987176206336 -8875546987176206336 -8875546987176206336 -8875546987176206336 1 +-8877053610728161280 -8877053610728161280 -8877053610728161280 -8877053610728161280 1 +-8877431933441327104 -8877431933441327104 -8877431933441327104 -8877431933441327104 1 +-8879742387365429248 -8879742387365429248 -8879742387365429248 -8879742387365429248 1 +-8881446757271846912 -8881446757271846912 -8881446757271846912 -8881446757271846912 1 +-8887058200926093312 -8887058200926093312 -8887058200926093312 -8887058200926093312 1 +-8892963883085578240 -8892963883085578240 -8892963883085578240 -8892963883085578240 1 +-8896045754034978816 -8896045754034978816 -8896045754034978816 -8896045754034978816 1 +-8914039133569400832 -8914039133569400832 -8914039133569400832 -8914039133569400832 1 +-8916987977485312000 -8916987977485312000 -8916987977485312000 -8916987977485312000 1 +-8922409715403112448 -8922409715403112448 -8922409715403112448 -8922409715403112448 1 +-8923529803981905920 -8923529803981905920 -8923529803981905920 -8923529803981905920 1 +-8927968289860370432 -8927968289860370432 -8927968289860370432 -8927968289860370432 1 +-8930307926221807616 -8930307926221807616 -8930307926221807616 -8930307926221807616 1 +-8938849835283677184 -8938849835283677184 -8938849835283677184 -8938849835283677184 1 +-8940944155843461120 -8940944155843461120 -8940944155843461120 -8940944155843461120 1 +-8941201923743703040 -8941201923743703040 -8941201923743703040 -8941201923743703040 1 +-8946656952763777024 -8946656952763777024 -8946656952763777024 -8946656952763777024 1 +-8948335470186373120 -8948335470186373120 -8948335470186373120 -8948335470186373120 1 +-8959796625322680320 -8959796625322680320 -8959796625322680320 -8959796625322680320 1 +-8961059046745669632 -8961059046745669632 -8961059046745669632 -8961059046745669632 1 +-8962547695651323904 -8962547695651323904 -8962547695651323904 -8962547695651323904 1 +-8965578088652095488 -8965578088652095488 -8965578088652095488 -8965578088652095488 1 +-8989473881707921408 -8989473881707921408 -8989473881707921408 -8989473881707921408 1 +-8990843030306717696 -8990843030306717696 -8990843030306717696 -8990843030306717696 1 +-8992599250893979648 -8992599250893979648 -8992599250893979648 -8992599250893979648 1 +-8996954350906294272 -8996954350906294272 -8996954350906294272 -8996954350906294272 1 +-9002912355472736256 -9002912355472736256 -9002912355472736256 -9002912355472736256 1 +-9004892183139811328 -9004892183139811328 -9004892183139811328 -9004892183139811328 1 +-9008631121684832256 -9008631121684832256 -9008631121684832256 -9008631121684832256 1 +-9012093603044245504 -9012093603044245504 -9012093603044245504 -9012093603044245504 1 +-9013952631912325120 -9013952631912325120 -9013952631912325120 -9013952631912325120 1 +-9014145341570203648 -9014145341570203648 -9014145341570203648 -9014145341570203648 1 +-9022154842129547264 -9022154842129547264 -9022154842129547264 -9022154842129547264 1 +-9032650742739836928 -9032650742739836928 -9032650742739836928 -9032650742739836928 1 +-9049720998034137088 -9049720998034137088 -9049720998034137088 -9049720998034137088 1 +-9051477157204770816 -9051477157204770816 -9051477157204770816 -9051477157204770816 1 +-9058029636530003968 -9058029636530003968 -9058029636530003968 -9058029636530003968 1 +-9066993118333706240 -9066993118333706240 -9066993118333706240 -9066993118333706240 1 +-9071565764086521856 -9071565764086521856 -9071565764086521856 -9071565764086521856 1 +-9075302542655684608 -9075302542655684608 -9075302542655684608 -9075302542655684608 1 +-9075486079396069376 -9075486079396069376 -9075486079396069376 -9075486079396069376 1 +-9078662294976061440 -9078662294976061440 -9078662294976061440 -9078662294976061440 1 +-9079801920509001728 -9079801920509001728 -9079801920509001728 -9079801920509001728 1 +-9080568167841226752 -9080568167841226752 -9080568167841226752 -9080568167841226752 1 +-9080956291212132352 -9080956291212132352 -9080956291212132352 -9080956291212132352 1 +-9084940280061485056 -9084940280061485056 -9084940280061485056 -9084940280061485056 1 +-9088239683374350336 -9088239683374350336 -9088239683374350336 -9088239683374350336 1 +-9091113592821972992 -9091113592821972992 -9091113592821972992 -9091113592821972992 1 +-9095689235523264512 -9095689235523264512 -9095689235523264512 -9095689235523264512 1 +-9101953184875757568 -9101953184875757568 -9101953184875757568 -9101953184875757568 1 +-9102482277760983040 -9102482277760983040 -9102482277760983040 -9102482277760983040 1 +-9105358806324035584 -9105358806324035584 -9105358806324035584 -9105358806324035584 1 +-9105701280936501248 -9105701280936501248 -9105701280936501248 -9105701280936501248 1 +-9109392978217484288 -9109392978217484288 -9109392978217484288 -9109392978217484288 1 +-9117959922369060864 -9117959922369060864 -9117959922369060864 -9117959922369060864 1 +-9126793997498957824 -9126793997498957824 -9126793997498957824 -9126793997498957824 1 +-9136398397785948160 -9136398397785948160 -9136398397785948160 -9136398397785948160 1 +-9142610685888192512 -9142610685888192512 -9142610685888192512 -9142610685888192512 1 +-9145593811310010368 -9145593811310010368 -9145593811310010368 -9145593811310010368 1 +-9148197394287779840 -9148197394287779840 -9148197394287779840 -9148197394287779840 1 +-9149719074367946752 -9149719074367946752 -9149719074367946752 -9149719074367946752 1 +-9157613004431998976 -9157613004431998976 -9157613004431998976 -9157613004431998976 1 +-9175038118837149696 -9175038118837149696 -9175038118837149696 -9175038118837149696 1 +-9175279464813223936 -9175279464813223936 -9175279464813223936 -9175279464813223936 1 +-9178166810751909888 -9178166810751909888 -9178166810751909888 -9178166810751909888 1 +-9187662685618348032 -9187662685618348032 -9187662685618348032 -9187662685618348032 1 +-9189155542884474880 -9189155542884474880 -9189155542884474880 -9189155542884474880 1 +-9203804401302323200 -9203804401302323200 -9203804401302323200 -9203804401302323200 1 +-9203942396257984512 -9203942396257984512 -9203942396257984512 -9203942396257984512 1 +-9206329156028112896 -9206329156028112896 -9206329156028112896 -9206329156028112896 1 +-9210275791460499456 -9210275791460499456 -9210275791460499456 -9210275791460499456 1 +-9213132862973829120 -9213132862973829120 -9213132862973829120 -9213132862973829120 1 +-9215144824304721920 -9215144824304721920 -9215144824304721920 -9215144824304721920 1 +-9218875542187065344 -9218875542187065344 -9218875542187065344 -9218875542187065344 1 +-9219066990552760320 -9219066990552760320 -9219066990552760320 -9219066990552760320 1 +1021 1021 1021 1021 1 +1030 1030 1030 1030 1 +1032 1032 1032 1032 1 +1039 1039 1039 1039 1 +1046 1046 1046 1046 1 +1048 1048 1048 1048 1 +1053 1053 1053 1053 1 +1055 1055 1055 1055 1 +1058 1058 1058 1058 1 +1065 1065 1065 1065 1 +1066 1066 1066 1066 1 +1074 1074 1074 1074 1 +1075 1075 1075 3225 3 +108 108 108 108 1 +1086 1086 1086 1086 1 +1093 1093 1093 1093 1 +1094 1094 1094 1094 1 +1095 1095 1095 1095 1 +1099 1099 1099 1099 1 +1115 1115 1115 1115 1 +112 112 112 112 1 +1127 1127 1127 1127 1 +1128 1128 1128 1128 1 +1132 1132 1132 1132 1 +1134 1134 1134 1134 1 +1141 1141 1141 1141 1 +1142 1142 1142 1142 1 +1145 1145 1145 1145 1 +1153 1153 1153 1153 1 +1157 1157 1157 1157 1 +1158 1158 1158 1158 1 +1165 1165 1165 2330 2 +1168 1168 1168 1168 1 +1177 1177 1177 1177 1 +1187 1187 1187 1187 1 +1189 1189 1189 1189 1 +1198 1198 1198 1198 1 +120 120 120 120 1 +1201 1201 1201 1201 1 +1217 1217 1217 1217 1 +1234 1234 1234 1234 1 +1243 1243 1243 1243 1 +1247 1247 1247 1247 1 +1252 1252 1252 1252 1 +1261 1261 1261 1261 1 +1270 1270 1270 1270 1 +1280 1280 1280 1280 1 +1282 1282 1282 1282 1 +1286 1286 1286 1286 1 +1287 1287 1287 1287 1 +1290 1290 1290 1290 1 +1291 1291 1291 1291 1 +1299 1299 1299 1299 1 +130 130 130 130 1 +1307 1307 1307 1307 1 +1312 1312 1312 1312 1 +1316 1316 1316 1316 1 +1321 1321 1321 1321 1 +1337 1337 1337 1337 1 +1341 1341 1341 1341 1 +1342 1342 1342 1342 1 +1343 1343 1343 1343 1 +1345 1345 1345 1345 1 +1346 1346 1346 1346 1 +135 135 135 135 1 +1366 1366 1366 1366 1 +1368 1368 1368 2736 2 +1371 1371 1371 2742 2 +138 138 138 138 1 +1386 1386 1386 1386 1 +1398 1398 1398 1398 1 +1409 1409 1409 1409 1 +1422 1422 1422 1422 1 +1423 1423 1423 1423 1 +1436 1436 1436 1436 1 +1439 1439 1439 1439 1 +1447 1447 1447 1447 1 +1450 1450 1450 1450 1 +1454 1454 1454 1454 1 +1458 1458 1458 1458 1 +1462 1462 1462 1462 1 +1466 1466 1466 1466 1 +1470 1470 1470 1470 1 +1477 1477 1477 1477 1 +1481 1481 1481 2962 2 +1489 1489 1489 1489 1 +1493 1493 1493 1493 1 +1495 1495 1495 1495 1 +1501 1501 1501 1501 1 +1506 1506 1506 1506 1 +1508 1508 1508 1508 1 +1509 1509 1509 3018 2 +1518 1518 1518 1518 1 +1520 1520 1520 1520 1 +1521 1521 1521 1521 1 +1524 1524 1524 1524 1 +1530 1530 1530 1530 1 +1537 1537 1537 3074 2 +154 154 154 308 2 +1541 1541 1541 1541 1 +1542 1542 1542 1542 1 +1545 1545 1545 1545 1 +1556 1556 1556 1556 1 +1559 1559 1559 1559 1 +1561 1561 1561 1561 1 +1566 1566 1566 1566 1 +1604 1604 1604 1604 1 +1606 1606 1606 1606 1 +1608 1608 1608 1608 1 +1613 1613 1613 1613 1 +1614 1614 1614 1614 1 +1620 1620 1620 1620 1 +1638 1638 1638 1638 1 +1641 1641 1641 1641 1 +1643 1643 1643 1643 1 +1648 1648 1648 1648 1 +1651 1651 1651 1651 1 +1667 1667 1667 1667 1 +1671 1671 1671 1671 1 +1674 1674 1674 1674 1 +1676 1676 1676 1676 1 +1678 1678 1678 1678 1 +168 168 168 168 1 +1681 1681 1681 1681 1 +169 169 169 169 1 +1693 1693 1693 1693 1 +1701 1701 1701 3402 2 +1704 1704 1704 1704 1 +1719 1719 1719 3438 2 +1726 1726 1726 1726 1 +1728 1728 1728 1728 1 +1745 1745 1745 1745 1 +1751 1751 1751 1751 1 +1752 1752 1752 1752 1 +1769 1769 1769 1769 1 +1774 1774 1774 1774 1 +1775 1775 1775 1775 1 +1777 1777 1777 3554 2 +1780 1780 1780 1780 1 +1781 1781 1781 1781 1 +1785 1785 1785 1785 1 +1786 1786 1786 1786 1 +1788 1788 1788 1788 1 +1789 1789 1789 1789 1 +1791 1791 1791 1791 1 +1796 1796 1796 1796 1 +1806 1806 1806 1806 1 +181 181 181 181 1 +1811 1811 1811 1811 1 +1813 1813 1813 1813 1 +1826 1826 1826 1826 1 +1827 1827 1827 1827 1 +1835 1835 1835 1835 1 +1837 1837 1837 1837 1 +1845 1845 1845 1845 1 +1846 1846 1846 1846 1 +1856 1856 1856 3712 2 +1862 1862 1862 1862 1 +1863 1863 1863 1863 1 +1864 1864 1864 1864 1 +1866 1866 1866 1866 1 +187 187 187 187 1 +1870 1870 1870 1870 1 +188 188 188 188 1 +1880 1880 1880 1880 1 +1890 1890 1890 1890 1 +1892 1892 1892 1892 1 +1899 1899 1899 1899 1 +19 19 19 38 2 +1906 1906 1906 1906 1 +1910 1910 1910 1910 1 +1914 1914 1914 3828 2 +1926 1926 1926 1926 1 +1937 1937 1937 1937 1 +1940 1940 1940 1940 1 +1941 1941 1941 1941 1 +1948 1948 1948 5844 3 +1955 1955 1955 1955 1 +1965 1965 1965 1965 1 +1972 1972 1972 1972 1 +1981 1981 1981 1981 1 +1983 1983 1983 1983 1 +1987 1987 1987 1987 1 +1990 1990 1990 1990 1 +1995 1995 1995 1995 1 +1999 1999 1999 1999 1 +2001 2001 2001 2001 1 +2002 2002 2002 2002 1 +2004 2004 2004 2004 1 +2009 2009 2009 2009 1 +2011 2011 2011 2011 1 +2013 2013 2013 2013 1 +2016 2016 2016 2016 1 +2017 2017 2017 2017 1 +2020 2020 2020 4040 2 +2025 2025 2025 2025 1 +2026 2026 2026 2026 1 +2029 2029 2029 2029 1 +203 203 203 203 1 +204 204 204 204 1 +2046 2046 2046 2046 1 +2056 2056 2056 2056 1 +2067 2067 2067 2067 1 +2072 2072 2072 2072 1 +2073 2073 2073 2073 1 +2085 2085 2085 2085 1 +2089 2089 2089 2089 1 +2092 2092 2092 2092 1 +2105 2105 2105 2105 1 +2106 2106 2106 2106 1 +2108 2108 2108 2108 1 +213 213 213 426 2 +2131 2131 2131 2131 1 +2138 2138 2138 2138 1 +2140 2140 2140 2140 1 +2144 2144 2144 2144 1 +2155 2155 2155 2155 1 +2177 2177 2177 2177 1 +2179 2179 2179 2179 1 +2180 2180 2180 2180 1 +2183 2183 2183 2183 1 +2186 2186 2186 2186 1 +2187 2187 2187 2187 1 +2189 2189 2189 2189 1 +2193 2193 2193 4386 2 +2194 2194 2194 2194 1 +22 22 22 22 1 +2201 2201 2201 2201 1 +2205 2205 2205 2205 1 +2214 2214 2214 2214 1 +2217 2217 2217 2217 1 +2218 2218 2218 2218 1 +2223 2223 2223 2223 1 +2227 2227 2227 2227 1 +2229 2229 2229 2229 1 +2232 2232 2232 2232 1 +2241 2241 2241 2241 1 +2244 2244 2244 2244 1 +2255 2255 2255 2255 1 +2262 2262 2262 2262 1 +2264 2264 2264 2264 1 +2270 2270 2270 2270 1 +2274 2274 2274 2274 1 +2277 2277 2277 2277 1 +2279 2279 2279 2279 1 +228 228 228 228 1 +2283 2283 2283 2283 1 +2285 2285 2285 4570 2 +2295 2295 2295 2295 1 +2306 2306 2306 2306 1 +2320 2320 2320 2320 1 +2323 2323 2323 2323 1 +2325 2325 2325 4650 2 +2335 2335 2335 2335 1 +2341 2341 2341 2341 1 +2348 2348 2348 2348 1 +2358 2358 2358 2358 1 +236 236 236 236 1 +2373 2373 2373 2373 1 +238 238 238 238 1 +2386 2386 2386 2386 1 +2393 2393 2393 4786 2 +2398 2398 2398 2398 1 +2400 2400 2400 2400 1 +2410 2410 2410 2410 1 +2412 2412 2412 4824 2 +2420 2420 2420 2420 1 +2426 2426 2426 2426 1 +2434 2434 2434 2434 1 +244 244 244 244 1 +2461 2461 2461 2461 1 +2463 2463 2463 7389 3 +2465 2465 2465 2465 1 +2469 2469 2469 2469 1 +2475 2475 2475 2475 1 +2476 2476 2476 2476 1 +2485 2485 2485 4970 2 +2487 2487 2487 2487 1 +2492 2492 2492 2492 1 +2494 2494 2494 2494 1 +2502 2502 2502 2502 1 +2506 2506 2506 2506 1 +2509 2509 2509 2509 1 +2512 2512 2512 2512 1 +2514 2514 2514 2514 1 +2515 2515 2515 2515 1 +2517 2517 2517 2517 1 +2524 2524 2524 2524 1 +2533 2533 2533 2533 1 +2539 2539 2539 2539 1 +2540 2540 2540 2540 1 +255 255 255 255 1 +2551 2551 2551 2551 1 +2553 2553 2553 2553 1 +2560 2560 2560 5120 2 +2563 2563 2563 2563 1 +2565 2565 2565 2565 1 +2569 2569 2569 2569 1 +2579 2579 2579 2579 1 +2580 2580 2580 2580 1 +2587 2587 2587 2587 1 +259 259 259 259 1 +2599 2599 2599 2599 1 +2607 2607 2607 2607 1 +2608 2608 2608 2608 1 +2619 2619 2619 5238 2 +2625 2625 2625 2625 1 +2626 2626 2626 2626 1 +263 263 263 526 2 +2637 2637 2637 2637 1 +2647 2647 2647 2647 1 +2649 2649 2649 2649 1 +2662 2662 2662 2662 1 +2663 2663 2663 2663 1 +2675 2675 2675 2675 1 +268 268 268 536 2 +2680 2680 2680 2680 1 +2682 2682 2682 2682 1 +2688 2688 2688 2688 1 +2689 2689 2689 2689 1 +2692 2692 2692 2692 1 +2700 2700 2700 2700 1 +2712 2712 2712 2712 1 +2714 2714 2714 2714 1 +2715 2715 2715 5430 2 +2719 2719 2719 2719 1 +2724 2724 2724 2724 1 +2725 2725 2725 2725 1 +2735 2735 2735 2735 1 +2745 2745 2745 2745 1 +275 275 275 275 1 +2752 2752 2752 2752 1 +2762 2762 2762 2762 1 +2772 2772 2772 2772 1 +2776 2776 2776 2776 1 +2786 2786 2786 5572 2 +279 279 279 279 1 +2790 2790 2790 2790 1 +2791 2791 2791 2791 1 +2803 2803 2803 8409 3 +2805 2805 2805 2805 1 +281 281 281 281 1 +2810 2810 2810 2810 1 +2811 2811 2811 2811 1 +2816 2816 2816 2816 1 +2821 2821 2821 2821 1 +2824 2824 2824 2824 1 +2835 2835 2835 2835 1 +2842 2842 2842 2842 1 +2843 2843 2843 5686 2 +2846 2846 2846 2846 1 +2847 2847 2847 2847 1 +2848 2848 2848 2848 1 +2850 2850 2850 2850 1 +2855 2855 2855 5710 2 +2862 2862 2862 2862 1 +2878 2878 2878 2878 1 +2886 2886 2886 2886 1 +289 289 289 289 1 +2897 2897 2897 5794 2 +2900 2900 2900 2900 1 +2903 2903 2903 2903 1 +2905 2905 2905 2905 1 +2911 2911 2911 2911 1 +2915 2915 2915 2915 1 +2919 2919 2919 2919 1 +2933 2933 2933 5866 2 +2938 2938 2938 2938 1 +294 294 294 294 1 +2941 2941 2941 2941 1 +2942 2942 2942 2942 1 +296 296 296 592 2 +2962 2962 2962 2962 1 +2968 2968 2968 5936 2 +2971 2971 2971 2971 1 +2977 2977 2977 2977 1 +2979 2979 2979 2979 1 +2984 2984 2984 2984 1 +2986 2986 2986 2986 1 +2988 2988 2988 2988 1 +2991 2991 2991 2991 1 +3002 3002 3002 3002 1 +3006 3006 3006 3006 1 +301 301 301 301 1 +302 302 302 302 1 +3021 3021 3021 6042 2 +3024 3024 3024 3024 1 +3029 3029 3029 3029 1 +3031 3031 3031 3031 1 +3036 3036 3036 3036 1 +3043 3043 3043 3043 1 +3054 3054 3054 3054 1 +3055 3055 3055 3055 1 +3058 3058 3058 3058 1 +3059 3059 3059 3059 1 +3060 3060 3060 6120 2 +3067 3067 3067 3067 1 +3071 3071 3071 3071 1 +3073 3073 3073 3073 1 +3079 3079 3079 6158 2 +3083 3083 3083 3083 1 +3084 3084 3084 3084 1 +3089 3089 3089 3089 1 +3094 3094 3094 3094 1 +3103 3103 3103 3103 1 +311 311 311 311 1 +3111 3111 3111 3111 1 +3118 3118 3118 3118 1 +3119 3119 3119 3119 1 +3144 3144 3144 3144 1 +3147 3147 3147 3147 1 +3159 3159 3159 6318 2 +3163 3163 3163 3163 1 +3174 3174 3174 3174 1 +3183 3183 3183 3183 1 +3190 3190 3190 3190 1 +3197 3197 3197 3197 1 +3199 3199 3199 3199 1 +320 320 320 320 1 +3203 3203 3203 3203 1 +3206 3206 3206 3206 1 +3208 3208 3208 3208 1 +3212 3212 3212 3212 1 +3213 3213 3213 3213 1 +3231 3231 3231 3231 1 +3232 3232 3232 3232 1 +3235 3235 3235 3235 1 +3244 3244 3244 3244 1 +3245 3245 3245 3245 1 +3248 3248 3248 3248 1 +3249 3249 3249 3249 1 +3253 3253 3253 3253 1 +3255 3255 3255 3255 1 +3263 3263 3263 3263 1 +3286 3286 3286 3286 1 +3300 3300 3300 3300 1 +3307 3307 3307 3307 1 +3322 3322 3322 3322 1 +3333 3333 3333 3333 1 +3352 3352 3352 3352 1 +336 336 336 336 1 +3365 3365 3365 3365 1 +3366 3366 3366 3366 1 +3397 3397 3397 3397 1 +34 34 34 34 1 +3401 3401 3401 3401 1 +3407 3407 3407 3407 1 +3409 3409 3409 3409 1 +341 341 341 341 1 +3418 3418 3418 6836 2 +342 342 342 342 1 +3421 3421 3421 3421 1 +3430 3430 3430 3430 1 +3443 3443 3443 3443 1 +3446 3446 3446 3446 1 +345 345 345 345 1 +3456 3456 3456 3456 1 +346 346 346 692 2 +3460 3460 3460 3460 1 +3462 3462 3462 10386 3 +3467 3467 3467 6934 2 +347 347 347 347 1 +3472 3472 3472 3472 1 +3478 3478 3478 3478 1 +3493 3493 3493 3493 1 +350 350 350 350 1 +3507 3507 3507 3507 1 +3510 3510 3510 3510 1 +3512 3512 3512 3512 1 +3533 3533 3533 3533 1 +3534 3534 3534 3534 1 +3541 3541 3541 3541 1 +3542 3542 3542 3542 1 +355 355 355 355 1 +3554 3554 3554 3554 1 +3555 3555 3555 7110 2 +3563 3563 3563 3563 1 +3566 3566 3566 3566 1 +3567 3567 3567 3567 1 +3568 3568 3568 3568 1 +3579 3579 3579 3579 1 +3588 3588 3588 7176 2 +3599 3599 3599 3599 1 +3606 3606 3606 3606 1 +3608 3608 3608 3608 1 +3609 3609 3609 3609 1 +361 361 361 361 1 +3613 3613 3613 3613 1 +3622 3622 3622 7244 2 +3625 3625 3625 3625 1 +3630 3630 3630 3630 1 +3637 3637 3637 3637 1 +364 364 364 364 1 +3648 3648 3648 3648 1 +3663 3663 3663 3663 1 +3664 3664 3664 3664 1 +367 367 367 367 1 +3672 3672 3672 3672 1 +3673 3673 3673 3673 1 +3677 3677 3677 3677 1 +3680 3680 3680 3680 1 +3682 3682 3682 3682 1 +3690 3690 3690 3690 1 +3691 3691 3691 3691 1 +3701 3701 3701 3701 1 +3702 3702 3702 3702 1 +3703 3703 3703 3703 1 +3707 3707 3707 3707 1 +3722 3722 3722 3722 1 +3724 3724 3724 3724 1 +3725 3725 3725 7450 2 +3728 3728 3728 7456 2 +3739 3739 3739 3739 1 +3747 3747 3747 3747 1 +3749 3749 3749 3749 1 +375 375 375 375 1 +3755 3755 3755 3755 1 +3763 3763 3763 3763 1 +3764 3764 3764 3764 1 +3769 3769 3769 3769 1 +3770 3770 3770 7540 2 +378 378 378 378 1 +3781 3781 3781 7562 2 +3789 3789 3789 3789 1 +379 379 379 379 1 +3810 3810 3810 3810 1 +3812 3812 3812 3812 1 +3823 3823 3823 3823 1 +3824 3824 3824 3824 1 +383 383 383 766 2 +3830 3830 3830 3830 1 +3835 3835 3835 3835 1 +3841 3841 3841 3841 1 +3848 3848 3848 3848 1 +3858 3858 3858 3858 1 +3860 3860 3860 3860 1 +3866 3866 3866 7732 2 +3874 3874 3874 3874 1 +3879 3879 3879 3879 1 +388 388 388 388 1 +3887 3887 3887 3887 1 +3901 3901 3901 3901 1 +3904 3904 3904 3904 1 +3907 3907 3907 3907 1 +391 391 391 391 1 +3910 3910 3910 3910 1 +3911 3911 3911 3911 1 +3913 3913 3913 3913 1 +392 392 392 392 1 +3932 3932 3932 3932 1 +3940 3940 3940 3940 1 +3941 3941 3941 3941 1 +3945 3945 3945 3945 1 +3946 3946 3946 3946 1 +3949 3949 3949 3949 1 +3958 3958 3958 3958 1 +3960 3960 3960 3960 1 +3961 3961 3961 3961 1 +3962 3962 3962 3962 1 +3965 3965 3965 3965 1 +3974 3974 3974 7948 2 +3980 3980 3980 3980 1 +3990 3990 3990 3990 1 +4018 4018 4018 4018 1 +4020 4020 4020 4020 1 +4024 4024 4024 4024 1 +4030 4030 4030 4030 1 +4037 4037 4037 4037 1 +4051 4051 4051 4051 1 +4054 4054 4054 4054 1 +4056 4056 4056 4056 1 +4075 4075 4075 4075 1 +4078 4078 4078 4078 1 +4088 4088 4088 4088 1 +41 41 41 41 1 +412 412 412 824 2 +417 417 417 417 1 +425 425 425 425 1 +443 443 443 443 1 +454 454 454 454 1 +455 455 455 455 1 +462 462 462 462 1 +470 470 470 470 1 +471 471 471 471 1 +481 481 481 481 1 +482 482 482 482 1 +485 485 485 485 1 +489 489 489 489 1 +49 49 49 49 1 +490 490 490 490 1 +491 491 491 491 1 +5 5 5 5 1 +500 500 500 500 1 +501 501 501 1002 2 +504 504 504 504 1 +522 522 522 522 1 +523 523 523 523 1 +524 524 524 524 1 +530 530 530 530 1 +535 535 535 535 1 +579 579 579 579 1 +583 583 583 583 1 +584 584 584 584 1 +586 586 586 586 1 +587 587 587 587 1 +590 590 590 590 1 +597 597 597 597 1 +601 601 601 601 1 +612 612 612 612 1 +615 615 615 615 1 +618 618 618 618 1 +65 65 65 65 1 +650 650 650 650 1 +658 658 658 658 1 +66 66 66 66 1 +661 661 661 1322 2 +663 663 663 663 1 +664 664 664 664 1 +677 677 677 677 1 +68 68 68 68 1 +681 681 681 681 1 +687 687 687 687 1 +688 688 688 688 1 +690 690 690 690 1 +691 691 691 691 1 +6923604860394528768 6923604860394528768 6923604860394528768 6923604860394528768 1 +6924820982050758656 6924820982050758656 6924820982050758656 6924820982050758656 1 +6926925215281774592 6926925215281774592 6926925215281774592 6926925215281774592 1 +6927260280037097472 6927260280037097472 6927260280037097472 6927260280037097472 1 +6928080429732536320 6928080429732536320 6928080429732536320 6928080429732536320 1 +6933001829416034304 6933001829416034304 6933001829416034304 6933001829416034304 1 +6933451028794925056 6933451028794925056 6933451028794925056 6933451028794925056 1 +6933731240564056064 6933731240564056064 6933731240564056064 6933731240564056064 1 +6934570741217755136 6934570741217755136 6934570741217755136 6934570741217755136 1 +694 694 694 694 1 +6947488599548215296 6947488599548215296 6947488599548215296 6947488599548215296 1 +695 695 695 695 1 +6960137166475911168 6960137166475911168 6960137166475911168 6960137166475911168 1 +6962726713896484864 6962726713896484864 6962726713896484864 6962726713896484864 1 +6963217546192322560 6963217546192322560 6963217546192322560 6963217546192322560 1 +6964585306125008896 6964585306125008896 6964585306125008896 6964585306125008896 1 +6967631925774639104 6967631925774639104 6967631925774639104 6967631925774639104 1 +6969599299897163776 6969599299897163776 6969599299897163776 6969599299897163776 1 +6974475559697768448 6974475559697768448 6974475559697768448 6974475559697768448 1 +6982145326341423104 6982145326341423104 6982145326341423104 6982145326341423104 1 +6987889924212203520 6987889924212203520 6987889924212203520 6987889924212203520 1 +6991316084916879360 6991316084916879360 6991316084916879360 6991316084916879360 1 +6996686091335884800 6996686091335884800 6996686091335884800 6996686091335884800 1 +7006803044329021440 7006803044329021440 7006803044329021440 7006803044329021440 1 +7013693841855774720 7013693841855774720 7013693841855774720 7013693841855774720 1 +7014537632150224896 7014537632150224896 7014537632150224896 7014537632150224896 1 +7017956982081404928 7017956982081404928 7017956982081404928 7017956982081404928 1 +7022349041913978880 7022349041913978880 7022349041913978880 7022349041913978880 1 +7027529814236192768 7027529814236192768 7027529814236192768 7027529814236192768 1 +7031339012080549888 7031339012080549888 7031339012080549888 7031339012080549888 1 +7039820685967343616 7039820685967343616 7039820685967343616 7039820685967343616 1 +7045967493826387968 7045967493826387968 7045967493826387968 7045967493826387968 1 +7049773031131283456 7049773031131283456 7049773031131283456 7049773031131283456 1 +7052226236896256000 7052226236896256000 7052226236896256000 7052226236896256000 1 +7054271419461812224 7054271419461812224 7054271419461812224 7054271419461812224 1 +7054938591408996352 7054938591408996352 7054938591408996352 7054938591408996352 1 +7060236714847412224 7060236714847412224 7060236714847412224 7060236714847412224 1 +7061498706968428544 7061498706968428544 7061498706968428544 7061498706968428544 1 +7061809776248545280 7061809776248545280 7061809776248545280 7061809776248545280 1 +7062382339142156288 7062382339142156288 7062382339142156288 7062382339142156288 1 +7062605127422894080 7062605127422894080 7062605127422894080 7062605127422894080 1 +7065344324692443136 7065344324692443136 7065344324692443136 7065344324692443136 1 +7068517339681259520 7068517339681259520 7068517339681259520 7068517339681259520 1 +7069729473166090240 7069729473166090240 7069729473166090240 7069729473166090240 1 +707 707 707 707 1 +7077311975029555200 7077311975029555200 7077311975029555200 7077311975029555200 1 +7078641038157643776 7078641038157643776 7078641038157643776 7078641038157643776 1 +7080269176324218880 7080269176324218880 7080269176324218880 7080269176324218880 1 +7084659344078970880 7084659344078970880 7084659344078970880 7084659344078970880 1 +7086206629592252416 7086206629592252416 7086206629592252416 7086206629592252416 1 +7091300332052062208 7091300332052062208 7091300332052062208 7091300332052062208 1 +7099005292698550272 7099005292698550272 7099005292698550272 7099005292698550272 1 +71 71 71 71 1 +7107604675626008576 7107604675626008576 7107604675626008576 7107604675626008576 1 +7125231541858205696 7125231541858205696 7125231541858205696 7125231541858205696 1 +7128222874437238784 7128222874437238784 7128222874437238784 7128222874437238784 1 +7130159794259353600 7130159794259353600 7130159794259353600 7130159794259353600 1 +7130306447560826880 7130306447560826880 7130306447560826880 7130306447560826880 1 +7149417430082027520 7149417430082027520 7149417430082027520 7149417430082027520 1 +7153922334283776000 7153922334283776000 7153922334283776000 7153922334283776000 1 +7157247449513484288 7157247449513484288 7157247449513484288 7157247449513484288 1 +7164349895861829632 7164349895861829632 7164349895861829632 7164349895861829632 1 +7165364563962191872 7165364563962191872 7165364563962191872 7165364563962191872 1 +7166263463731421184 7166263463731421184 7166263463731421184 7166263463731421184 1 +7175638927948562432 7175638927948562432 7175638927948562432 7175638927948562432 1 +7186401810812059648 7186401810812059648 7186401810812059648 7186401810812059648 1 +7195454019231834112 7195454019231834112 7195454019231834112 7195454019231834112 1 +7198687580227043328 7198687580227043328 7198687580227043328 7198687580227043328 1 +7199539820886958080 7199539820886958080 7199539820886958080 7199539820886958080 1 +7204802700490858496 7204802700490858496 7204802700490858496 7204802700490858496 1 +7210160489915236352 7210160489915236352 7210160489915236352 7210160489915236352 1 +7212016545671348224 7212016545671348224 7212016545671348224 7212016545671348224 1 +7212090742612467712 7212090742612467712 7212090742612467712 7212090742612467712 1 +7217123582035116032 7217123582035116032 7217123582035116032 7217123582035116032 1 +7220131672176058368 7220131672176058368 7220131672176058368 7220131672176058368 1 +7220581538170413056 7220581538170413056 7220581538170413056 7220581538170413056 1 +7223569671814987776 7223569671814987776 7223569671814987776 7223569671814987776 1 +7226360892091416576 7226360892091416576 7226360892091416576 7226360892091416576 1 +7229607057201127424 7229607057201127424 7229607057201127424 7229607057201127424 1 +723 723 723 723 1 +7231399302953377792 7231399302953377792 7231399302953377792 7231399302953377792 1 +7232273749940838400 7232273749940838400 7232273749940838400 7232273749940838400 1 +7235109456886816768 7235109456886816768 7235109456886816768 7235109456886816768 1 +7237310132329488384 7237310132329488384 7237310132329488384 7237310132329488384 1 +7238339720750948352 7238339720750948352 7238339720750948352 7238339720750948352 1 +724 724 724 724 1 +7242751359672631296 7242751359672631296 7242751359672631296 7242751359672631296 1 +7249443195032985600 7249443195032985600 7249443195032985600 7249443195032985600 1 +7250237407877382144 7250237407877382144 7250237407877382144 7250237407877382144 1 +7254710367022645248 7254710367022645248 7254710367022645248 7254710367022645248 1 +7255302164215013376 7255302164215013376 7255302164215013376 7255302164215013376 1 +7259955893466931200 7259955893466931200 7259955893466931200 7259955893466931200 1 +7260908278294560768 7260908278294560768 7260908278294560768 7260908278294560768 1 +7265141874315517952 7265141874315517952 7265141874315517952 7265141874315517952 1 +7266437490436341760 7266437490436341760 7266437490436341760 7266437490436341760 1 +7271786885641666560 7271786885641666560 7271786885641666560 7271786885641666560 1 +7271887863395459072 7271887863395459072 7271887863395459072 7271887863395459072 1 +7274777328897802240 7274777328897802240 7274777328897802240 7274777328897802240 1 +7291432593139507200 7291432593139507200 7291432593139507200 7291432593139507200 1 +7295502697317097472 7295502697317097472 7295502697317097472 7295502697317097472 1 +7295926343524163584 7295926343524163584 7295926343524163584 7295926343524163584 1 +7296164580491075584 7296164580491075584 7296164580491075584 7296164580491075584 1 +7299197687217856512 7299197687217856512 7299197687217856512 7299197687217856512 1 +73 73 73 73 1 +7304839835188609024 7304839835188609024 7304839835188609024 7304839835188609024 1 +7308289763456000000 7308289763456000000 7308289763456000000 7308289763456000000 1 +7309156463509061632 7309156463509061632 7309156463509061632 7309156463509061632 1 +7310869618402910208 7310869618402910208 7310869618402910208 7310869618402910208 1 +7319711402123149312 7319711402123149312 7319711402123149312 7319711402123149312 1 +7333512171174223872 7333512171174223872 7333512171174223872 7333512171174223872 1 +7339426767877390336 7339426767877390336 7339426767877390336 7339426767877390336 1 +7343171468838567936 7343171468838567936 7343171468838567936 7343171468838567936 1 +7344029858387820544 7344029858387820544 7344029858387820544 7344029858387820544 1 +7345991518378442752 7345991518378442752 7345991518378442752 7345991518378442752 1 +7347732772348870656 7347732772348870656 7347732772348870656 7347732772348870656 1 +7348598907182800896 7348598907182800896 7348598907182800896 7348598907182800896 1 +735 735 735 735 1 +7354813692542304256 7354813692542304256 7354813692542304256 7354813692542304256 1 +7359004378440146944 7359004378440146944 7359004378440146944 7359004378440146944 1 +736 736 736 736 1 +7368920486374989824 7368920486374989824 7368920486374989824 7368920486374989824 1 +7370078518278397952 7370078518278397952 7370078518278397952 7370078518278397952 1 +7370803940448305152 7370803940448305152 7370803940448305152 7370803940448305152 1 +7375521127126089728 7375521127126089728 7375521127126089728 7375521127126089728 1 +7376467688511455232 7376467688511455232 7376467688511455232 7376467688511455232 1 +7378993334503694336 7378993334503694336 7378993334503694336 7378993334503694336 1 +738 738 738 738 1 +7381659098423926784 7381659098423926784 7381659098423926784 7381659098423926784 1 +7384150968511315968 7384150968511315968 7384150968511315968 7384150968511315968 1 +7386087924003676160 7386087924003676160 7386087924003676160 7386087924003676160 1 +7391208370547269632 7391208370547269632 7391208370547269632 7391208370547269632 1 +7393308503950548992 7393308503950548992 7393308503950548992 7393308503950548992 1 +7394967727502467072 7394967727502467072 7394967727502467072 7394967727502467072 1 +7401968422230032384 7401968422230032384 7401968422230032384 7401968422230032384 1 +7410096605330227200 7410096605330227200 7410096605330227200 7410096605330227200 1 +7410872053689794560 7410872053689794560 7410872053689794560 7410872053689794560 1 +7411793502161182720 7411793502161182720 7411793502161182720 7411793502161182720 1 +7412924364686458880 7412924364686458880 7412924364686458880 7412924364686458880 1 +7414865343000322048 7414865343000322048 7414865343000322048 7414865343000322048 1 +7418271723644403712 7418271723644403712 7418271723644403712 7418271723644403712 1 +743 743 743 743 1 +7432428551399669760 7432428551399669760 7432428551399669760 7432428551399669760 1 +7432998950057975808 7432998950057975808 7432998950057975808 7432998950057975808 1 +7436133434239229952 7436133434239229952 7436133434239229952 7436133434239229952 1 +7440265908266827776 7440265908266827776 7440265908266827776 7440265908266827776 1 +7450416810848313344 7450416810848313344 7450416810848313344 7450416810848313344 1 +7452756603516190720 7452756603516190720 7452756603516190720 7452756603516190720 1 +7454442625055145984 7454442625055145984 7454442625055145984 7454442625055145984 1 +7454632396542074880 7454632396542074880 7454632396542074880 7454632396542074880 1 +7461153404961128448 7461153404961128448 7461153404961128448 7461153404961128448 1 +7471208109437304832 7471208109437304832 7471208109437304832 7471208109437304832 1 +7473537548003352576 7473537548003352576 7473537548003352576 7473537548003352576 1 +7486884806277611520 7486884806277611520 7486884806277611520 7486884806277611520 1 +7487338208419823616 7487338208419823616 7487338208419823616 7487338208419823616 1 +7487538600082554880 7487538600082554880 7487538600082554880 7487538600082554880 1 +7490717730239250432 7490717730239250432 7490717730239250432 7490717730239250432 1 +7491898395977523200 7491898395977523200 7491898395977523200 7491898395977523200 1 +7492436934952574976 7492436934952574976 7492436934952574976 7492436934952574976 1 +7497276415392407552 7497276415392407552 7497276415392407552 7497276415392407552 1 +7497306924248834048 7497306924248834048 7497306924248834048 7497306924248834048 1 +7500716020874674176 7500716020874674176 7500716020874674176 7500716020874674176 1 +7514552840617558016 7514552840617558016 7514552840617558016 7514552840617558016 1 +7517159036469575680 7517159036469575680 7517159036469575680 7517159036469575680 1 +7524958388842078208 7524958388842078208 7524958388842078208 7524958388842078208 1 +7528074274555305984 7528074274555305984 7528074274555305984 7528074274555305984 1 +7528211148397944832 7528211148397944832 7528211148397944832 7528211148397944832 1 +7534042483076857856 7534042483076857856 7534042483076857856 7534042483076857856 1 +7534145866886782976 7534145866886782976 7534145866886782976 7534145866886782976 1 +7534549597202194432 7534549597202194432 7534549597202194432 7534549597202194432 1 +7545689659010949120 7545689659010949120 7545689659010949120 7545689659010949120 1 +7548958830580563968 7548958830580563968 7548958830580563968 7548958830580563968 1 +7549858023389003776 7549858023389003776 7549858023389003776 7549858023389003776 1 +7555301305375858688 7555301305375858688 7555301305375858688 7555301305375858688 1 +7566273236152721408 7566273236152721408 7566273236152721408 7566273236152721408 1 +7569249672628789248 7569249672628789248 7569249672628789248 7569249672628789248 1 +7570474972934488064 7570474972934488064 7570474972934488064 7570474972934488064 1 +7573530789362262016 7573530789362262016 7573530789362262016 7573530789362262016 1 +7575087487730196480 7575087487730196480 7575087487730196480 7575087487730196480 1 +7581052107944361984 7581052107944361984 7581052107944361984 7581052107944361984 1 +7581614118458335232 7581614118458335232 7581614118458335232 7581614118458335232 1 +7584007864107778048 7584007864107778048 7584007864107778048 7584007864107778048 1 +7592440105065308160 7592440105065308160 7592440105065308160 7592440105065308160 1 +7593521922173419520 7593521922173419520 7593521922173419520 7593521922173419520 1 +7596563216912211968 7596563216912211968 7596563216912211968 7596563216912211968 1 +7599019810193211392 7599019810193211392 7599019810193211392 7599019810193211392 1 +7608447395949109248 7608447395949109248 7608447395949109248 7608447395949109248 1 +7614435638888210432 7614435638888210432 7614435638888210432 7614435638888210432 1 +7620183559667081216 7620183559667081216 7620183559667081216 7620183559667081216 1 +7621013099259527168 7621013099259527168 7621013099259527168 7621013099259527168 1 +7625728883085025280 7625728883085025280 7625728883085025280 7625728883085025280 1 +7626715182847090688 7626715182847090688 7626715182847090688 7626715182847090688 1 +763 763 763 763 1 +7637152193832886272 7637152193832886272 7637152193832886272 7637152193832886272 1 +7647481735646363648 7647481735646363648 7647481735646363648 7647481735646363648 1 +7648729477297987584 7648729477297987584 7648729477297987584 7648729477297987584 1 +7652123583449161728 7652123583449161728 7652123583449161728 7652123583449161728 1 +7659279803863146496 7659279803863146496 7659279803863146496 7659279803863146496 1 +7662037650719850496 7662037650719850496 7662037650719850496 7662037650719850496 1 +7675009476762918912 7675009476762918912 7675009476762918912 7675009476762918912 1 +7678790769408172032 7678790769408172032 7678790769408172032 7678790769408172032 1 +7682327310082531328 7682327310082531328 7682327310082531328 7682327310082531328 1 +7686992843032010752 7686992843032010752 7686992843032010752 7686992843032010752 1 +7689489436826804224 7689489436826804224 7689489436826804224 7689489436826804224 1 +7690986322714066944 7690986322714066944 7690986322714066944 7690986322714066944 1 +7691062622443044864 7691062622443044864 7691062622443044864 7691062622443044864 1 +7696737688942567424 7696737688942567424 7696737688942567424 7696737688942567424 1 +7697541332524376064 7697541332524376064 7697541332524376064 7697541332524376064 1 +7700734109530767360 7700734109530767360 7700734109530767360 7700734109530767360 1 +7701723309715685376 7701723309715685376 7701723309715685376 7701723309715685376 1 +7705445437881278464 7705445437881278464 7705445437881278464 7705445437881278464 1 +7710447533880614912 7710447533880614912 7710447533880614912 7710447533880614912 1 +7718825401976684544 7718825401976684544 7718825401976684544 7718825401976684544 1 +7720187583697502208 7720187583697502208 7720187583697502208 7720187583697502208 1 +7731443941834678272 7731443941834678272 7731443941834678272 7731443941834678272 1 +7735566678126616576 7735566678126616576 7735566678126616576 7735566678126616576 1 +774 774 774 774 1 +7741854854673367040 7741854854673367040 7741854854673367040 7741854854673367040 1 +7746402369011277824 7746402369011277824 7746402369011277824 7746402369011277824 1 +7747874976739016704 7747874976739016704 7747874976739016704 7747874976739016704 1 +7748799008146366464 7748799008146366464 7748799008146366464 7748799008146366464 1 +7752740515534422016 7752740515534422016 7752740515534422016 7752740515534422016 1 +7753359568986636288 7753359568986636288 7753359568986636288 7753359568986636288 1 +7753882935005880320 7753882935005880320 7753882935005880320 7753882935005880320 1 +7761834341179375616 7761834341179375616 7761834341179375616 7761834341179375616 1 +7762823913046556672 7762823913046556672 7762823913046556672 7762823913046556672 1 +7765456790394871808 7765456790394871808 7765456790394871808 7765456790394871808 1 +7768984605670604800 7768984605670604800 7768984605670604800 7768984605670604800 1 +7775034125776363520 7775034125776363520 7775034125776363520 7775034125776363520 1 +7778936842502275072 7778936842502275072 7778936842502275072 7778936842502275072 1 +7779486624537370624 7779486624537370624 7779486624537370624 7779486624537370624 1 +7779735136559579136 7779735136559579136 7779735136559579136 7779735136559579136 1 +7782245855193874432 7782245855193874432 7782245855193874432 7782245855193874432 1 +7784169796350730240 7784169796350730240 7784169796350730240 7784169796350730240 1 +7784489776013295616 7784489776013295616 7784489776013295616 7784489776013295616 1 +779 779 779 779 1 +7790728456522784768 7790728456522784768 7790728456522784768 7790728456522784768 1 +7792036342592348160 7792036342592348160 7792036342592348160 7792036342592348160 1 +7794244032613703680 7794244032613703680 7794244032613703680 7794244032613703680 1 +78 78 78 78 1 +780 780 780 780 1 +7800332581637259264 7800332581637259264 7800332581637259264 7800332581637259264 1 +7801697837312884736 7801697837312884736 7801697837312884736 7801697837312884736 1 +7818464507324121088 7818464507324121088 7818464507324121088 7818464507324121088 1 +782 782 782 782 1 +7823874904139849728 7823874904139849728 7823874904139849728 7823874904139849728 1 +784 784 784 784 1 +7843804446688264192 7843804446688264192 7843804446688264192 7843804446688264192 1 +7844258063629852672 7844258063629852672 7844258063629852672 7844258063629852672 1 +7845953007588401152 7845953007588401152 7845953007588401152 7845953007588401152 1 +7857878068300898304 7857878068300898304 7857878068300898304 7857878068300898304 1 +7868367829080506368 7868367829080506368 7868367829080506368 7868367829080506368 1 +7870277756614623232 7870277756614623232 7870277756614623232 7870277756614623232 1 +7871189141676998656 7871189141676998656 7871189141676998656 7871189141676998656 1 +7871554728617025536 7871554728617025536 7871554728617025536 7871554728617025536 1 +7874764415950176256 7874764415950176256 7874764415950176256 7874764415950176256 1 +7885697257930588160 7885697257930588160 7885697257930588160 7885697257930588160 1 +7888238729321496576 7888238729321496576 7888238729321496576 7888238729321496576 1 +789 789 789 789 1 +7892026679115554816 7892026679115554816 7892026679115554816 7892026679115554816 1 +7892281003266408448 7892281003266408448 7892281003266408448 7892281003266408448 1 +7898670840507031552 7898670840507031552 7898670840507031552 7898670840507031552 1 +7909645665163804672 7909645665163804672 7909645665163804672 7909645665163804672 1 +7917494645725765632 7917494645725765632 7917494645725765632 7917494645725765632 1 +7919597361814577152 7919597361814577152 7919597361814577152 7919597361814577152 1 +7921639119138070528 7921639119138070528 7921639119138070528 7921639119138070528 1 +7922443154272395264 7922443154272395264 7922443154272395264 7922443154272395264 1 +7926898770090491904 7926898770090491904 7926898770090491904 7926898770090491904 1 +7933040277013962752 7933040277013962752 7933040277013962752 7933040277013962752 1 +7936149988210212864 7936149988210212864 7936149988210212864 7936149988210212864 1 +7944741547145502720 7944741547145502720 7944741547145502720 7944741547145502720 1 +7947544013461512192 7947544013461512192 7947544013461512192 7947544013461512192 1 +7948803266578161664 7948803266578161664 7948803266578161664 7948803266578161664 1 +7955126053367119872 7955126053367119872 7955126053367119872 7955126053367119872 1 +7961515985722605568 7961515985722605568 7961515985722605568 7961515985722605568 1 +7961909238130270208 7961909238130270208 7961909238130270208 7961909238130270208 1 +797 797 797 797 1 +7983789401706094592 7983789401706094592 7983789401706094592 7983789401706094592 1 +7989119273552158720 7989119273552158720 7989119273552158720 7989119273552158720 1 +7989160253372817408 7989160253372817408 7989160253372817408 7989160253372817408 1 +7997694023324975104 7997694023324975104 7997694023324975104 7997694023324975104 1 +7998357471114969088 7998357471114969088 7998357471114969088 7998357471114969088 1 +7998687089080467456 7998687089080467456 7998687089080467456 7998687089080467456 1 +80 80 80 80 1 +8000440057238052864 8000440057238052864 8000440057238052864 8000440057238052864 1 +8002769767000145920 8002769767000145920 8002769767000145920 8002769767000145920 1 +8004633750273925120 8004633750273925120 8004633750273925120 8004633750273925120 1 +8011181697250631680 8011181697250631680 8011181697250631680 8011181697250631680 1 +8011602724663336960 8011602724663336960 8011602724663336960 8011602724663336960 1 +8014986215157530624 8014986215157530624 8014986215157530624 8014986215157530624 1 +8017403886247927808 8017403886247927808 8017403886247927808 8017403886247927808 1 +803 803 803 803 1 +8045070943673671680 8045070943673671680 8045070943673671680 8045070943673671680 1 +8048726769133592576 8048726769133592576 8048726769133592576 8048726769133592576 1 +8059284960252731392 8059284960252731392 8059284960252731392 8059284960252731392 1 +8069531888205086720 8069531888205086720 8069531888205086720 8069531888205086720 1 +8071961599867387904 8071961599867387904 8071961599867387904 8071961599867387904 1 +8073733016154431488 8073733016154431488 8073733016154431488 8073733016154431488 1 +8079573715140485120 8079573715140485120 8079573715140485120 8079573715140485120 1 +808 808 808 808 1 +8087737899452432384 8087737899452432384 8087737899452432384 8087737899452432384 1 +809 809 809 809 1 +8091421389575282688 8091421389575282688 8091421389575282688 8091421389575282688 1 +8099215208813903872 8099215208813903872 8099215208813903872 8099215208813903872 1 +8100036735858401280 8100036735858401280 8100036735858401280 8100036735858401280 1 +8109381965028548608 8109381965028548608 8109381965028548608 8109381965028548608 1 +8111757081791733760 8111757081791733760 8111757081791733760 8111757081791733760 1 +8113585123802529792 8113585123802529792 8113585123802529792 8113585123802529792 1 +8116738401948377088 8116738401948377088 8116738401948377088 8116738401948377088 1 +812 812 812 812 1 +8120593157178228736 8120593157178228736 8120593157178228736 8120593157178228736 1 +8129551357032259584 8129551357032259584 8129551357032259584 8129551357032259584 1 +8135164922674872320 8135164922674872320 8135164922674872320 8135164922674872320 1 +8142241016679735296 8142241016679735296 8142241016679735296 8142241016679735296 1 +8143462899383345152 8143462899383345152 8143462899383345152 8143462899383345152 1 +8144552446127972352 8144552446127972352 8144552446127972352 8144552446127972352 1 +8145745969573666816 8145745969573666816 8145745969573666816 8145745969573666816 1 +8145750910080745472 8145750910080745472 8145750910080745472 8145750910080745472 1 +8146288732715196416 8146288732715196416 8146288732715196416 8146288732715196416 1 +8146492373537660928 8146492373537660928 8146492373537660928 8146492373537660928 1 +8148211378319933440 8148211378319933440 8148211378319933440 8148211378319933440 1 +815 815 815 815 1 +8150115791664340992 8150115791664340992 8150115791664340992 8150115791664340992 1 +8156018594610790400 8156018594610790400 8156018594610790400 8156018594610790400 1 +8156782979767238656 8156782979767238656 8156782979767238656 8156782979767238656 1 +8160569434550403072 8160569434550403072 8160569434550403072 8160569434550403072 1 +8160662610166194176 8160662610166194176 8160662610166194176 8160662610166194176 1 +8163948965373386752 8163948965373386752 8163948965373386752 8163948965373386752 1 +8168742078705262592 8168742078705262592 8168742078705262592 8168742078705262592 1 +8169878743136043008 8169878743136043008 8169878743136043008 8169878743136043008 1 +8171188598958407680 8171188598958407680 8171188598958407680 8171188598958407680 1 +8183233196086214656 8183233196086214656 8183233196086214656 8183233196086214656 1 +8184799300477943808 8184799300477943808 8184799300477943808 8184799300477943808 1 +8190539859890601984 8190539859890601984 8190539859890601984 8190539859890601984 1 +8190967051000659968 8190967051000659968 8190967051000659968 8190967051000659968 1 +8192304692696383488 8192304692696383488 8192304692696383488 8192304692696383488 1 +8195103847607967744 8195103847607967744 8195103847607967744 8195103847607967744 1 +8199513544090730496 8199513544090730496 8199513544090730496 8199513544090730496 1 +820 820 820 1640 2 +8201303040648052736 8201303040648052736 8201303040648052736 8201303040648052736 1 +8201491077550874624 8201491077550874624 8201491077550874624 8201491077550874624 1 +8208354137450766336 8208354137450766336 8208354137450766336 8208354137450766336 1 +8210813831744118784 8210813831744118784 8210813831744118784 8210813831744118784 1 +8213810702473183232 8213810702473183232 8213810702473183232 8213810702473183232 1 +8219326436390821888 8219326436390821888 8219326436390821888 8219326436390821888 1 +8220104397160169472 8220104397160169472 8220104397160169472 8220104397160169472 1 +8221561626658881536 8221561626658881536 8221561626658881536 8221561626658881536 1 +8222714144797368320 8222714144797368320 8222714144797368320 8222714144797368320 1 +8223732800007864320 8223732800007864320 8223732800007864320 8223732800007864320 1 +823 823 823 823 1 +8230371298967609344 8230371298967609344 8230371298967609344 8230371298967609344 1 +8235179243092090880 8235179243092090880 8235179243092090880 8235179243092090880 1 +8244041599171862528 8244041599171862528 8244041599171862528 8244041599171862528 1 +8254763178969915392 8254763178969915392 8254763178969915392 8254763178969915392 1 +8268875586442256384 8268875586442256384 8268875586442256384 8268875586442256384 1 +8269730157217062912 8269730157217062912 8269730157217062912 8269730157217062912 1 +8272001752345690112 8272001752345690112 8272001752345690112 8272001752345690112 1 +8279056098670198784 8279056098670198784 8279056098670198784 8279056098670198784 1 +8282648443538710528 8282648443538710528 8282648443538710528 8282648443538710528 1 +8283099811330506752 8283099811330506752 8283099811330506752 8283099811330506752 1 +8286706213485297664 8286706213485297664 8286706213485297664 8286706213485297664 1 +8287522765741301760 8287522765741301760 8287522765741301760 8287522765741301760 1 +8290014929764040704 8290014929764040704 8290014929764040704 8290014929764040704 1 +8290944180915871744 8290944180915871744 8290944180915871744 8290944180915871744 1 +8294315622451740672 8294315622451740672 8294315622451740672 8294315622451740672 1 +8295110846998233088 8295110846998233088 8295110846998233088 8295110846998233088 1 +83 83 83 83 1 +8302473563519950848 8302473563519950848 8302473563519950848 8302473563519950848 1 +8316336224427483136 8316336224427483136 8316336224427483136 8316336224427483136 1 +8323460620425330688 8323460620425330688 8323460620425330688 8323460620425330688 1 +8325227661920133120 8325227661920133120 8325227661920133120 8325227661920133120 1 +8332670681629106176 8332670681629106176 8332670681629106176 8332670681629106176 1 +8333523087360901120 8333523087360901120 8333523087360901120 8333523087360901120 1 +8337549596011102208 8337549596011102208 8337549596011102208 8337549596011102208 1 +8345435427356090368 8345435427356090368 8345435427356090368 8345435427356090368 1 +835 835 835 835 1 +8351163199364390912 8351163199364390912 8351163199364390912 8351163199364390912 1 +8362046808797306880 8362046808797306880 8362046808797306880 8362046808797306880 1 +8365058996333953024 8365058996333953024 8365058996333953024 8365058996333953024 1 +8367680396909404160 8367680396909404160 8367680396909404160 8367680396909404160 1 +8368012468775608320 8368012468775608320 8368012468775608320 8368012468775608320 1 +837 837 837 837 1 +8371939471056470016 8371939471056470016 8371939471056470016 8371939471056470016 1 +8372408423196270592 8372408423196270592 8372408423196270592 8372408423196270592 1 +8372588378498777088 8372588378498777088 8372588378498777088 8372588378498777088 1 +8374321007870836736 8374321007870836736 8374321007870836736 8374321007870836736 1 +8376440110255243264 8376440110255243264 8376440110255243264 8376440110255243264 1 +8383159090746204160 8383159090746204160 8383159090746204160 8383159090746204160 1 +8388363436324085760 8388363436324085760 8388363436324085760 8388363436324085760 1 +8391407951622815744 8391407951622815744 8391407951622815744 8391407951622815744 1 +8391785334471589888 8391785334471589888 8391785334471589888 8391785334471589888 1 +8396433451610652672 8396433451610652672 8396433451610652672 8396433451610652672 1 +8398862954249560064 8398862954249560064 8398862954249560064 8398862954249560064 1 +8407869317250220032 8407869317250220032 8407869317250220032 8407869317250220032 1 +8410599906334097408 8410599906334097408 8410599906334097408 8410599906334097408 1 +8411494452500930560 8411494452500930560 8411494452500930560 8411494452500930560 1 +8415171956168417280 8415171956168417280 8415171956168417280 8415171956168417280 1 +8416121695917498368 8416121695917498368 8416121695917498368 8416121695917498368 1 +8417381121663746048 8417381121663746048 8417381121663746048 8417381121663746048 1 +8419958579638157312 8419958579638157312 8419958579638157312 8419958579638157312 1 +8424515140664360960 8424515140664360960 8424515140664360960 8424515140664360960 1 +8435912708683087872 8435912708683087872 8435912708683087872 8435912708683087872 1 +845 845 845 845 1 +8451612303224520704 8451612303224520704 8451612303224520704 8451612303224520704 1 +8454154705460666368 8454154705460666368 8454154705460666368 8454154705460666368 1 +8455496814886002688 8455496814886002688 8455496814886002688 8455496814886002688 1 +8457906374051020800 8457906374051020800 8457906374051020800 8457906374051020800 1 +8461498293348065280 8461498293348065280 8461498293348065280 8461498293348065280 1 +8463868417649524736 8463868417649524736 8463868417649524736 8463868417649524736 1 +8467976965865799680 8467976965865799680 8467976965865799680 8467976965865799680 1 +8470141334513098752 8470141334513098752 8470141334513098752 8470141334513098752 1 +8472429318602268672 8472429318602268672 8472429318602268672 8472429318602268672 1 +8473699639908261888 8473699639908261888 8473699639908261888 8473699639908261888 1 +8487573502287478784 8487573502287478784 8487573502287478784 8487573502287478784 1 +8489584373231919104 8489584373231919104 8489584373231919104 8489584373231919104 1 +8489735221193138176 8489735221193138176 8489735221193138176 8489735221193138176 1 +85 85 85 85 1 +8501910015960735744 8501910015960735744 8501910015960735744 8501910015960735744 1 +8508401924853850112 8508401924853850112 8508401924853850112 8508401924853850112 1 +8509508263705477120 8509508263705477120 8509508263705477120 8509508263705477120 1 +8514851182589771776 8514851182589771776 8514851182589771776 8514851182589771776 1 +8514979402185596928 8514979402185596928 8514979402185596928 8514979402185596928 1 +8515682078777081856 8515682078777081856 8515682078777081856 8515682078777081856 1 +8518454006987948032 8518454006987948032 8518454006987948032 8518454006987948032 1 +8519937082746634240 8519937082746634240 8519937082746634240 8519937082746634240 1 +8523972434954510336 8523972434954510336 8523972434954510336 8523972434954510336 1 +8524940073536954368 8524940073536954368 8524940073536954368 8524940073536954368 1 +8525336514806317056 8525336514806317056 8525336514806317056 8525336514806317056 1 +8525894870444638208 8525894870444638208 8525894870444638208 8525894870444638208 1 +8532016240026279936 8532016240026279936 8532016240026279936 8532016240026279936 1 +8536948829863198720 8536948829863198720 8536948829863198720 8536948829863198720 1 +8540237852367446016 8540237852367446016 8540237852367446016 8540237852367446016 1 +8543177193114779648 8543177193114779648 8543177193114779648 8543177193114779648 1 +8547243497773457408 8547243497773457408 8547243497773457408 8547243497773457408 1 +8551446856960942080 8551446856960942080 8551446856960942080 8551446856960942080 1 +8553195689344991232 8553195689344991232 8553195689344991232 8553195689344991232 1 +8554899472487596032 8554899472487596032 8554899472487596032 8554899472487596032 1 +8555933456197828608 8555933456197828608 8555933456197828608 8555933456197828608 1 +8555948987770511360 8555948987770511360 8555948987770511360 8555948987770511360 1 +8557218322962644992 8557218322962644992 8557218322962644992 8557218322962644992 1 +8558000156325707776 8558000156325707776 8558000156325707776 8558000156325707776 1 +8560526613401714688 8560526613401714688 8560526613401714688 8560526613401714688 1 +8569030475428511744 8569030475428511744 8569030475428511744 8569030475428511744 1 +8570983266408103936 8570983266408103936 8570983266408103936 8570983266408103936 1 +8571268359622172672 8571268359622172672 8571268359622172672 8571268359622172672 1 +8573305425181941760 8573305425181941760 8573305425181941760 8573305425181941760 1 +8577096957495025664 8577096957495025664 8577096957495025664 8577096957495025664 1 +8579974641030365184 8579974641030365184 8579974641030365184 8579974641030365184 1 +8583916402383601664 8583916402383601664 8583916402383601664 8583916402383601664 1 +8613562211893919744 8613562211893919744 8613562211893919744 8613562211893919744 1 +8625937019655200768 8625937019655200768 8625937019655200768 8625937019655200768 1 +8631515095562887168 8631515095562887168 8631515095562887168 8631515095562887168 1 +8637720762289659904 8637720762289659904 8637720762289659904 8637720762289659904 1 +8639254009546055680 8639254009546055680 8639254009546055680 8639254009546055680 1 +8641221723991433216 8641221723991433216 8641221723991433216 8641221723991433216 1 +8643198489997254656 8643198489997254656 8643198489997254656 8643198489997254656 1 +8644602243484803072 8644602243484803072 8644602243484803072 8644602243484803072 1 +8649296591032172544 8649296591032172544 8649296591032172544 8649296591032172544 1 +8652485812846567424 8652485812846567424 8652485812846567424 8652485812846567424 1 +8656571350884048896 8656571350884048896 8656571350884048896 8656571350884048896 1 +8660248367767076864 8660248367767076864 8660248367767076864 8660248367767076864 1 +8665969966920990720 8665969966920990720 8665969966920990720 8665969966920990720 1 +8666178591503564800 8666178591503564800 8666178591503564800 8666178591503564800 1 +8677632093825916928 8677632093825916928 8677632093825916928 8677632093825916928 1 +8677794924343164928 8677794924343164928 8677794924343164928 8677794924343164928 1 +868 868 868 868 1 +8682955459667951616 8682955459667951616 8682955459667951616 8682955459667951616 1 +8687042963221159936 8687042963221159936 8687042963221159936 8687042963221159936 1 +8688483860094599168 8688483860094599168 8688483860094599168 8688483860094599168 1 +8693036785094565888 8693036785094565888 8693036785094565888 8693036785094565888 1 +8697823501349609472 8697823501349609472 8697823501349609472 8697823501349609472 1 +8698055291501543424 8698055291501543424 8698055291501543424 8698055291501543424 1 +8708232769657815040 8708232769657815040 8708232769657815040 8708232769657815040 1 +8708845895460577280 8708845895460577280 8708845895460577280 8708845895460577280 1 +871 871 871 871 1 +8714829359200747520 8714829359200747520 8714829359200747520 8714829359200747520 1 +8716401555586727936 8716401555586727936 8716401555586727936 8716401555586727936 1 +8720504651219001344 8720504651219001344 8720504651219001344 8720504651219001344 1 +8723248113030782976 8723248113030782976 8723248113030782976 8723248113030782976 1 +873 873 873 873 1 +8731960288562044928 8731960288562044928 8731960288562044928 8731960288562044928 1 +8734584858442498048 8734584858442498048 8734584858442498048 8734584858442498048 1 +8736061027343859712 8736061027343859712 8736061027343859712 8736061027343859712 1 +874 874 874 874 1 +8752150411997356032 8752150411997356032 8752150411997356032 8752150411997356032 1 +8759089349412847616 8759089349412847616 8759089349412847616 8759089349412847616 1 +8759184090543857664 8759184090543857664 8759184090543857664 8759184090543857664 1 +8760285623204290560 8760285623204290560 8760285623204290560 8760285623204290560 1 +8761174805938331648 8761174805938331648 8761174805938331648 8761174805938331648 1 +8769199243315814400 8769199243315814400 8769199243315814400 8769199243315814400 1 +8773222500321361920 8773222500321361920 8773222500321361920 8773222500321361920 1 +8775009214012456960 8775009214012456960 8775009214012456960 8775009214012456960 1 +8779073705407963136 8779073705407963136 8779073705407963136 8779073705407963136 1 +8779711700787298304 8779711700787298304 8779711700787298304 8779711700787298304 1 +878 878 878 878 1 +8780196485890555904 8780196485890555904 8780196485890555904 8780196485890555904 1 +8782900615468302336 8782900615468302336 8782900615468302336 8782900615468302336 1 +8783241818558193664 8783241818558193664 8783241818558193664 8783241818558193664 1 +8785153741735616512 8785153741735616512 8785153741735616512 8785153741735616512 1 +8792059919353348096 8792059919353348096 8792059919353348096 8792059919353348096 1 +8793387410919038976 8793387410919038976 8793387410919038976 8793387410919038976 1 +8795069490394882048 8795069490394882048 8795069490394882048 8795069490394882048 1 +8806507556248731648 8806507556248731648 8806507556248731648 8806507556248731648 1 +8808467247666241536 8808467247666241536 8808467247666241536 8808467247666241536 1 +8811693967537774592 8811693967537774592 8811693967537774592 8811693967537774592 1 +8815398225009967104 8815398225009967104 8815398225009967104 8815398225009967104 1 +8817665768680906752 8817665768680906752 8817665768680906752 8817665768680906752 1 +8822384228057604096 8822384228057604096 8822384228057604096 8822384228057604096 1 +8825059717746376704 8825059717746376704 8825059717746376704 8825059717746376704 1 +8829545979081744384 8829545979081744384 8829545979081744384 8829545979081744384 1 +883 883 883 883 1 +8836228556823977984 8836228556823977984 8836228556823977984 8836228556823977984 1 +8837420822750314496 8837420822750314496 8837420822750314496 8837420822750314496 1 +8849475396952514560 8849475396952514560 8849475396952514560 8849475396952514560 1 +8850055384477401088 8850055384477401088 8850055384477401088 8850055384477401088 1 +8853989376829833216 8853989376829833216 8853989376829833216 8853989376829833216 1 +8854495099223375872 8854495099223375872 8854495099223375872 8854495099223375872 1 +8854677881758162944 8854677881758162944 8854677881758162944 8854677881758162944 1 +8854715632851345408 8854715632851345408 8854715632851345408 8854715632851345408 1 +8856674723376668672 8856674723376668672 8856674723376668672 8856674723376668672 1 +8868529429494071296 8868529429494071296 8868529429494071296 8868529429494071296 1 +8871707618793996288 8871707618793996288 8871707618793996288 8871707618793996288 1 +8875745082589929472 8875745082589929472 8875745082589929472 8875745082589929472 1 +888 888 888 888 1 +8895174927321243648 8895174927321243648 8895174927321243648 8895174927321243648 1 +8896237972875370496 8896237972875370496 8896237972875370496 8896237972875370496 1 +8897901899039473664 8897901899039473664 8897901899039473664 8897901899039473664 1 +8899122608190930944 8899122608190930944 8899122608190930944 8899122608190930944 1 +8900180888218329088 8900180888218329088 8900180888218329088 8900180888218329088 1 +8900351886974279680 8900351886974279680 8900351886974279680 8900351886974279680 1 +8900545829211299840 8900545829211299840 8900545829211299840 8900545829211299840 1 +8905330479248064512 8905330479248064512 8905330479248064512 8905330479248064512 1 +8910706980937261056 8910706980937261056 8910706980937261056 8910706980937261056 1 +8920344895701393408 8920344895701393408 8920344895701393408 8920344895701393408 1 +8920533610804609024 8920533610804609024 8920533610804609024 8920533610804609024 1 +8927691194719174656 8927691194719174656 8927691194719174656 8927691194719174656 1 +8928133990107881472 8928133990107881472 8928133990107881472 8928133990107881472 1 +8935252708196999168 8935252708196999168 8935252708196999168 8935252708196999168 1 +8936639033158410240 8936639033158410240 8936639033158410240 8936639033158410240 1 +8939431770838810624 8939431770838810624 8939431770838810624 8939431770838810624 1 +8945004737083555840 8945004737083555840 8945004737083555840 8945004737083555840 1 +8945302550165004288 8945302550165004288 8945302550165004288 8945302550165004288 1 +8962097525980225536 8962097525980225536 8962097525980225536 8962097525980225536 1 +8972161729142095872 8972161729142095872 8972161729142095872 8972161729142095872 1 +8979012655944220672 8979012655944220672 8979012655944220672 8979012655944220672 1 +898 898 898 1796 2 +8983857919580209152 8983857919580209152 8983857919580209152 8983857919580209152 1 +8983912573761167360 8983912573761167360 8983912573761167360 8983912573761167360 1 +8984935029383389184 8984935029383389184 8984935029383389184 8984935029383389184 1 +8987827141270880256 8987827141270880256 8987827141270880256 8987827141270880256 1 +8991071342495531008 8991071342495531008 8991071342495531008 8991071342495531008 1 +8991442360387584000 8991442360387584000 8991442360387584000 8991442360387584000 1 +8994608999945125888 8994608999945125888 8994608999945125888 8994608999945125888 1 +8995562121346260992 8995562121346260992 8995562121346260992 8995562121346260992 1 +8996824426131390464 8996824426131390464 8996824426131390464 8996824426131390464 1 +9000633029632499712 9000633029632499712 9000633029632499712 9000633029632499712 1 +9001907486943993856 9001907486943993856 9001907486943993856 9001907486943993856 1 +9005866015985713152 9005866015985713152 9005866015985713152 9005866015985713152 1 +9016280522993975296 9016280522993975296 9016280522993975296 9016280522993975296 1 +9020143715350814720 9020143715350814720 9020143715350814720 9020143715350814720 1 +9023663198045544448 9023663198045544448 9023663198045544448 9023663198045544448 1 +9030480306789818368 9030480306789818368 9030480306789818368 9030480306789818368 1 +9038087402564657152 9038087402564657152 9038087402564657152 9038087402564657152 1 +9040958359122640896 9040958359122640896 9040958359122640896 9040958359122640896 1 +9043089884440068096 9043089884440068096 9043089884440068096 9043089884440068096 1 +9048002942653710336 9048002942653710336 9048002942653710336 9048002942653710336 1 +9048297564833079296 9048297564833079296 9048297564833079296 9048297564833079296 1 +9050032047355125760 9050032047355125760 9050032047355125760 9050032047355125760 1 +9053187076403060736 9053187076403060736 9053187076403060736 9053187076403060736 1 +9054887854393950208 9054887854393950208 9054887854393950208 9054887854393950208 1 +9062227900376203264 9062227900376203264 9062227900376203264 9062227900376203264 1 +9064847977742032896 9064847977742032896 9064847977742032896 9064847977742032896 1 +9067985867711291392 9067985867711291392 9067985867711291392 9067985867711291392 1 +9073672806863790080 9073672806863790080 9073672806863790080 9073672806863790080 1 +9075404705968840704 9075404705968840704 9075404705968840704 9075404705968840704 1 +9078604269481148416 9078604269481148416 9078604269481148416 9078604269481148416 1 +908 908 908 908 1 +9083076230151864320 9083076230151864320 9083076230151864320 9083076230151864320 1 +9083704659251798016 9083704659251798016 9083704659251798016 9083704659251798016 1 +9084402694981533696 9084402694981533696 9084402694981533696 9084402694981533696 1 +9085381906890203136 9085381906890203136 9085381906890203136 9085381906890203136 1 +9085434340468473856 9085434340468473856 9085434340468473856 9085434340468473856 1 +9086905513121890304 9086905513121890304 9086905513121890304 9086905513121890304 1 +9089435102788009984 9089435102788009984 9089435102788009984 9089435102788009984 1 +9091082386452684800 9091082386452684800 9091082386452684800 9091082386452684800 1 +9091085792947666944 9091085792947666944 9091085792947666944 9091085792947666944 1 +9094945190752903168 9094945190752903168 9094945190752903168 9094945190752903168 1 +9096395849845194752 9096395849845194752 9096395849845194752 9096395849845194752 1 +91 91 91 91 1 +9104574294205636608 9104574294205636608 9104574294205636608 9104574294205636608 1 +9107991000536498176 9107991000536498176 9107991000536498176 9107991000536498176 1 +9112400579327483904 9112400579327483904 9112400579327483904 9112400579327483904 1 +9114850402293882880 9114850402293882880 9114850402293882880 9114850402293882880 1 +9116137265342169088 9116137265342169088 9116137265342169088 9116137265342169088 1 +9117063974299148288 9117063974299148288 9117063974299148288 9117063974299148288 1 +9119046173224370176 9119046173224370176 9119046173224370176 9119046173224370176 1 +9123116008004288512 9123116008004288512 9123116008004288512 9123116008004288512 1 +913 913 913 913 1 +9131533983989358592 9131533983989358592 9131533983989358592 9131533983989358592 1 +9132009829414584320 9132009829414584320 9132009829414584320 9132009829414584320 1 +9136234417125007360 9136234417125007360 9136234417125007360 9136234417125007360 1 +9136548192574529536 9136548192574529536 9136548192574529536 9136548192574529536 1 +9139805788041134080 9139805788041134080 9139805788041134080 9139805788041134080 1 +914 914 914 914 1 +9148071980848742400 9148071980848742400 9148071980848742400 9148071980848742400 1 +9149216169284091904 9149216169284091904 9149216169284091904 9149216169284091904 1 +9165199002069458944 9165199002069458944 9165199002069458944 9165199002069458944 1 +9169248521377374208 9169248521377374208 9169248521377374208 9169248521377374208 1 +917 917 917 917 1 +9174894805640142848 9174894805640142848 9174894805640142848 9174894805640142848 1 +918 918 918 918 1 +9180098147855769600 9180098147855769600 9180098147855769600 9180098147855769600 1 +9182828596851990528 9182828596851990528 9182828596851990528 9182828596851990528 1 +9185458640237641728 9185458640237641728 9185458640237641728 9185458640237641728 1 +9185952983951343616 9185952983951343616 9185952983951343616 9185952983951343616 1 +9188173682239275008 9188173682239275008 9188173682239275008 9188173682239275008 1 +919 919 919 919 1 +9190466190353661952 9190466190353661952 9190466190353661952 9190466190353661952 1 +9191943992860327936 9191943992860327936 9191943992860327936 9191943992860327936 1 +9194388393453060096 9194388393453060096 9194388393453060096 9194388393453060096 1 +9199741683232399360 9199741683232399360 9199741683232399360 9199741683232399360 1 +9207107990561972224 9207107990561972224 9207107990561972224 9207107990561972224 1 +9207927479837319168 9207927479837319168 9207927479837319168 9207927479837319168 1 +9209153648361848832 9209153648361848832 9209153648361848832 9209153648361848832 1 +921 921 921 921 1 +9211455920344088576 9211455920344088576 9211455920344088576 9211455920344088576 1 +922 922 922 922 1 +923 923 923 923 1 +927 927 927 927 1 +928 928 928 928 1 +939 939 939 939 1 +94 94 94 94 1 +945 945 945 945 1 +947 947 947 947 1 +950 950 950 1900 2 +958 958 958 958 1 +961 961 961 961 1 +965 965 965 965 1 +967 967 967 967 1 +976 976 976 976 1 +979 979 979 979 1 +982 982 982 982 1 +987 987 987 987 1 +997 997 997 997 1 +999 999 999 999 1 +NULL NULL NULL NULL 0 diff --git ql/src/test/results/clientpositive/vector_groupby6.q.out ql/src/test/results/clientpositive/vector_groupby6.q.out new file mode 100644 index 0000000..168df80 --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby6.q.out @@ -0,0 +1,2022 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), t (type: tinyint), si (type: smallint), i (type: int) + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1), sum(_col1), min(_col2), max(_col2), sum(_col3), count(_col3), max(_col0) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: tinyint), _col2 (type: bigint), _col3 (type: smallint), _col4 (type: smallint), _col5 (type: bigint), _col6 (type: bigint), _col7 (type: bigint) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), sum(VALUE._col1), min(VALUE._col2), max(VALUE._col3), sum(VALUE._col4), count(VALUE._col5), max(VALUE._col6) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(t), sum(t), min(si), max(si), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 36 36 -1307 -1307 -603273425 1 -6917607783359897600 +-6919476845891313664 124 124 8811 8811 710856472 1 -6919476845891313664 +-6920172215209426944 115 115 -26832 -26832 -764412063 1 -6920172215209426944 +-6921654334727036928 52 52 21673 21673 -1066775085 1 -6921654334727036928 +-6933565857643814912 -80 -80 NULL NULL 581259902 1 -6933565857643814912 +-6934304742087655424 77 77 NULL NULL 955171928 1 -6934304742087655424 +-6935038507792801792 55 55 -1928 -1928 174310705 1 -6935038507792801792 +-6935548339131138048 -85 -85 24858 24858 -1062159435 1 -6935548339131138048 +-6938706403992854528 -102 -102 30420 30420 980732494 1 -6938706403992854528 +-6941777546186579968 NULL NULL 21611 21611 121663320 1 -6941777546186579968 +-6947955278050181120 -63 -63 16357 16357 641695802 1 -6947955278050181120 +-6951350560260784128 -6 -6 12256 12256 1342923026 1 -6951350560260784128 +-6957946688477274112 -96 -96 28272 28272 1505168716 1 -6957946688477274112 +-6960947572095770624 -15 -15 -19343 -19343 1136976809 1 -6960947572095770624 +-6962271229404348416 -103 -103 -9734 -9734 1106995930 1 -6962271229404348416 +-6962292590214234112 -53 -53 20540 20540 -1147471772 1 -6962292590214234112 +-6968771079156654080 -7 -7 -25698 -25698 -939348081 1 -6968771079156654080 +-6968892545529896960 126 126 -16307 -16307 470993066 1 -6968892545529896960 +-6970396058557005824 81 81 2643 2643 2140632003 1 -6970396058557005824 +-6974654664348033024 -61 -61 26540 26540 -968377273 1 -6974654664348033024 +-6975459232300236800 -88 -88 16796 16796 1151752586 1 -6975459232300236800 +-6986178228432322560 60 60 18845 18845 -1369253050 1 -6986178228432322560 +-6988811476286873600 -53 -53 -15573 -15573 -1968097621 1 -6988811476286873600 +-6988970700649168896 -68 -68 NULL NULL -1230459100 1 -6988970700649168896 +-6992217501957169152 -32 -32 -32755 -32755 1472487454 1 -6992217501957169152 +-6997233584896229376 -118 -118 3486 3486 -76654979 1 -6997233584896229376 +-7000925438663041024 -115 -115 1755 1755 596045726 1 -7000925438663041024 +-7003696402314215424 -21 -21 -15348 -15348 -1458382451 1 -7003696402314215424 +-7011425384222244864 73 73 9017 9017 NULL 0 -7011425384222244864 +-7017212700635545600 115 115 20680 20680 304860245 1 -7017212700635545600 +-7020852530219171840 -104 -104 -25115 -25115 824836988 1 -7020852530219171840 +-7030489936116252672 58 58 24847 24847 1115197541 1 -7030489936116252672 +-7035132060308643840 -80 -80 21784 21784 NULL 0 -7035132060308643840 +-7036607470351654912 102 102 -31458 -31458 -1933192293 1 -7036607470351654912 +-7037375807670501376 20 20 1728 1728 -1168823523 1 -7037375807670501376 +-7037638331316469760 -104 -104 5093 5093 14573904 1 -7037638331316469760 +-7038455462786334720 74 74 343 343 524317972 1 -7038455462786334720 +-7040248820505149440 -82 -82 -10326 -10326 196581473 1 -7040248820505149440 +-7041362811802148864 -94 -94 9948 9948 -455114104 1 -7041362811802148864 +-7042183597114081280 121 121 22333 22333 658636280 1 -7042183597114081280 +-7046180371529351168 35 35 4397 4397 -117723745 1 -7046180371529351168 +-7049618574399692800 47 47 23441 23441 -978892011 1 -7049618574399692800 +-7052619594823221248 -46 -46 7821 7821 -1117358187 1 -7052619594823221248 +-7055619148037554176 22 22 -13008 -13008 -838656526 1 -7055619148037554176 +-7055760785575665664 53 53 -24478 -24478 759899363 1 -7055760785575665664 +-7057750467944931328 -26 -26 -10316 -10316 -71449585 1 -7057750467944931328 +-7058986555327307776 34 34 26796 26796 1942004879 1 -7058986555327307776 +-7063777488249085952 112 112 21991 21991 -507250351 1 -7063777488249085952 +-7078068944081002496 -101 -101 -32533 -32533 2013178181 1 -7078068944081002496 +-7079898537463537664 122 122 -31711 -31711 -1205034356 1 -7079898537463537664 +-7081500255163727872 52 52 -18283 -18283 -1969751342 1 -7081500255163727872 +-7083646746411720704 -24 -24 NULL NULL 780938234 1 -7083646746411720704 +-7085247548404178944 -84 -84 -31828 -31828 1640192895 1 -7085247548404178944 +-7093825013581979648 NULL NULL -17607 -17607 -628790799 1 -7093825013581979648 +-7094189393339678720 -91 -91 20349 20349 1796486238 1 -7094189393339678720 +-7094827141662539776 -42 -42 -24805 -24805 -632803945 1 -7094827141662539776 +-7104310188119834624 -69 -69 -10569 -10569 -1928197479 1 -7104310188119834624 +-7106210529681350656 -91 -91 30585 30585 1718167702 1 -7106210529681350656 +-7109790267244814336 22 22 11617 11617 -291577538 1 -7109790267244814336 +-7115054815375073280 -88 -88 -29977 -29977 NULL 0 -7115054815375073280 +-7120456708338688000 117 117 NULL NULL 1751468853 1 -7120456708338688000 +-7127548949860818944 -28 -28 28089 28089 260463232 1 -7127548949860818944 +-7138415011665043456 111 111 -29811 -29811 -1345391395 1 -7138415011665043456 +-7139677575412686848 -85 -85 -15762 -15762 -1556127172 1 -7139677575412686848 +-7140008543769042944 69 69 -30974 -30974 -1938290238 1 -7140008543769042944 +-7144791190333546496 -37 -37 -13426 -13426 -876122064 1 -7144791190333546496 +-7145585429014888448 26 26 29245 29245 -817093900 1 -7145585429014888448 +-7147490721376591872 25 25 -10312 -10312 1759741857 1 -7147490721376591872 +-7152177800841502720 -79 -79 -12463 -12463 -37773326 1 -7152177800841502720 +-7155539549555105792 -86 -86 -22421 -22421 -345542922 1 -7155539549555105792 +-7158472098920390656 -127 -127 -31998 -31998 -71305062 1 -7158472098920390656 +-7159700138947862528 5 5 26134 26134 -76430653 1 -7159700138947862528 +-7161165959057334272 56 56 -22949 -22949 1352649032 1 -7161165959057334272 +-7162299524557471744 84 84 NULL NULL 1813010930 1 -7162299524557471744 +-7172594404186693632 -105 -105 2234 2234 -1949359208 1 -7172594404186693632 +-7185369278665605120 73 73 1864 1864 -374337252 1 -7185369278665605120 +-7192529627893858304 -34 -34 10425 10425 -45439614 1 -7192529627893858304 +-7194281951646187520 8 8 5661 5661 -797889292 1 -7194281951646187520 +-7195217207163166720 85 85 -1767 -1767 -1977762695 1 -7195217207163166720 +-7198372044947275776 -101 -101 -28941 -28941 -1424770359 1 -7198372044947275776 +-7199983995864711168 69 69 -16570 -16570 -1870912732 1 -7199983995864711168 +-7201085131997011968 67 67 4111 4111 -1356601829 1 -7201085131997011968 +-7209060152494817280 NULL NULL -23284 -23284 -2071851852 1 -7209060152494817280 +-7213775605408178176 -33 -33 -32462 -32462 1222935237 1 -7213775605408178176 +-7220731681653604352 29 29 27796 27796 -851663638 1 -7220731681653604352 +-7221474017515347968 -75 -75 23220 23220 -1421860505 1 -7221474017515347968 +-7228589258642194432 -73 -73 NULL NULL 1958701268 1 -7228589258642194432 +-7240213957902663680 33 33 NULL NULL -841634659 1 -7240213957902663680 +-7242345057866285056 54 54 16799 16799 548375173 1 -7242345057866285056 +-7245872320493322240 -102 -102 4781 4781 -134686276 1 -7245872320493322240 +-7246123871306244096 -108 -108 -25959 -25959 1686537335 1 -7246123871306244096 +-7255010240787030016 18 18 2612 2612 1373871781 1 -7255010240787030016 +-7255686273677328384 45 45 -21005 -21005 2100839074 1 -7255686273677328384 +-7262049693594943488 79 79 -6142 -6142 1295073553 1 -7262049693594943488 +-7262384251828518912 109 109 NULL NULL 1647411522 1 -7262384251828518912 +-7262798781688651776 9 9 32212 32212 -423190290 1 -7262798781688651776 +-7263060340185194496 10 10 -30669 -30669 1590744669 1 -7263060340185194496 +-7265998318110711808 8 8 6144 6144 1437057145 1 -7265998318110711808 +-7266719102957125632 42 42 6036 6036 960187615 1 -7266719102957125632 +-7270034223527993344 NULL NULL 2542 2542 -1984079412 1 -7270034223527993344 +-7273590251991162880 84 84 4332 4332 994798486 1 -7273590251991162880 +-7273694358642851840 76 76 -25155 -25155 2009890220 1 -7273694358642851840 +-7276111129363046400 126 126 2683 2683 -1462604138 1 -7276111129363046400 +-7287583262310350848 36 36 31099 31099 -1108723753 1 -7287583262310350848 +-7292078334519894016 -28 -28 -3757 -3757 -785261879 1 -7292078334519894016 +-7296096276653391872 -6 -6 13632 13632 160290374 1 -7296096276653391872 +-7303847963918393344 -78 -78 13795 13795 -1769423338 1 -7303847963918393344 +-7319315187617587200 -54 -54 11077 11077 -235238928 1 -7319315187617587200 +-7326863346317598720 49 49 -5282 -5282 958866509 1 -7326863346317598720 +-7328087811698909184 -54 -54 -21795 -21795 -1017629298 1 -7328087811698909184 +-7329767178250018816 -8 -8 -23462 -23462 -448060992 1 -7329767178250018816 +-7329807949048193024 -69 -69 1519 1519 -369183838 1 -7329807949048193024 +-7330203470474985472 54 54 29015 29015 -1065248998 1 -7330203470474985472 +-7330413050756235264 -31 -31 14335 14335 -2024003241 1 -7330413050756235264 +-7333278178640953344 74 74 -15819 -15819 1393506704 1 -7333278178640953344 +-7333362172439035904 25 25 -11675 -11675 -835002549 1 -7333362172439035904 +-7340231535789727744 29 29 -14815 -14815 526502851 1 -7340231535789727744 +-7344146703223496704 -26 -26 -30907 -30907 789871166 1 -7344146703223496704 +-7344947507044466688 -77 -77 -19912 -19912 -340951385 1 -7344947507044466688 +-7345562788132315136 -6 -6 -16647 -16647 1750433588 1 -7345562788132315136 +-7356685674003021824 118 118 -21389 -21389 1319589591 1 -7356685674003021824 +-7357888618985873408 0 0 27116 27116 NULL 0 -7357888618985873408 +-7362189611124563968 -57 -57 11804 11804 -496915240 1 -7362189611124563968 +-7366430883634929664 -32 -32 20746 20746 1592153312 1 -7366430883634929664 +-7378096180613840896 37 37 29639 29639 218917585 1 -7378096180613840896 +-7380731416973295616 -94 -94 -22554 -22554 -1114208576 1 -7380731416973295616 +-7395343938785738752 96 96 28011 28011 830944953 1 -7395343938785738752 +-7395553021620731904 18 18 NULL NULL 1056997296 1 -7395553021620731904 +-7399631791131074560 92 92 -11110 -11110 -932921363 1 -7399631791131074560 +-7404052043914526720 -10 -10 29023 29023 -1349876582 1 -7404052043914526720 +-7404057145074712576 55 55 -15109 -15109 56316391 1 -7404057145074712576 +-7409317158045442048 NULL NULL 2955 2955 -1463884101 1 -7409317158045442048 +-7409653086454030336 77 77 -6884 -6884 -624029057 1 -7409653086454030336 +-7412431471807283200 113 113 27982 27982 622925063 1 -7412431471807283200 +-7413317118463164416 -12 -12 -9566 -9566 -507015439 1 -7413317118463164416 +-7419068456205385728 112 112 -5635 -5635 -4393552 1 -7419068456205385728 +-7420448501073051648 -8 -8 10600 10600 -1155174991 1 -7420448501073051648 +-7425160895830573056 -98 -98 22678 22678 -765102534 1 -7425160895830573056 +-7429331808102899712 96 96 9264 9264 -1057522129 1 -7429331808102899712 +-7433265617153343488 -69 -69 -20946 -20946 NULL 0 -7433265617153343488 +-7442593976514420736 -19 -19 -29228 -29228 1851805558 1 -7442593976514420736 +-7444070205513138176 -28 -28 26108 26108 -520725912 1 -7444070205513138176 +-7451660755269853184 97 97 10217 10217 1338047392 1 -7451660755269853184 +-7453525026342617088 -122 -122 4568 4568 1505665168 1 -7453525026342617088 +-7455898404374921216 17 17 18558 18558 1544482684 1 -7455898404374921216 +-7456869587112255488 NULL NULL -14783 -14783 -224865887 1 -7456869587112255488 +-7461750143936897024 -70 -70 -695 -695 -1343425152 1 -7461750143936897024 +-7464270453557993472 116 116 -12647 -12647 -1439293109 1 -7464270453557993472 +-7469660864676585472 -40 -40 25847 25847 85774760 1 -7469660864676585472 +-7470307155642245120 -95 -95 17489 17489 1137950964 1 -7470307155642245120 +-7476082621253402624 -29 -29 23928 23928 1083855659 1 -7476082621253402624 +-7483435388852559872 85 85 28041 28041 -914329027 1 -7483435388852559872 +-7488345684795342848 123 123 -458 -458 -1668736016 1 -7488345684795342848 +-7488415863027367936 35 35 28128 28128 1286367391 1 -7488415863027367936 +-7494411162675691520 -46 -46 -21358 -21358 1595326878 1 -7494411162675691520 +-7496839341561954304 -92 -92 21849 21849 868714547 1 -7496839341561954304 +-7497303453253402624 66 66 -26565 -26565 1415647436 1 -7497303453253402624 +-7500200359698907136 -2 -2 -5216 -5216 -423074450 1 -7500200359698907136 +-7501803640821456896 -2 -2 -27807 -27807 1809795770 1 -7501803640821456896 +-7506254246954500096 94 94 23766 23766 -511198293 1 -7506254246954500096 +-7507424948896415744 37 37 -14093 -14093 -828522499 1 -7507424948896415744 +-7507578199583694848 2 2 32133 32133 -1784633305 1 -7507578199583694848 +-7510418793070075904 -35 -35 27983 27983 975932228 1 -7510418793070075904 +-7511202710200885248 -84 -84 -22960 -22960 -2042647152 1 -7511202710200885248 +-7511952204985049088 105 105 -25664 -25664 -1351437382 1 -7511952204985049088 +-7512289590991544320 -85 -85 19350 19350 1409872356 1 -7512289590991544320 +-7512297136103800832 -36 -36 18439 18439 -1180153422 1 -7512297136103800832 +-7515996202498473984 -17 -17 26296 26296 344989592 1 -7515996202498473984 +-7524170566881329152 98 98 -27358 -27358 -1908696083 1 -7524170566881329152 +-7526793959592140800 48 48 28309 28309 -570632618 1 -7526793959592140800 +-7528526815026692096 NULL NULL -3896 -3896 2125479431 1 -7528526815026692096 +-7532751268425261056 100 100 -26433 -26433 1752520642 1 -7532751268425261056 +-7535857766791577600 -34 -34 11168 11168 1846184880 1 -7535857766791577600 +-7535958203887706112 NULL NULL -15862 -15862 656636097 1 -7535958203887706112 +-7536330682873937920 -87 -87 -134 -134 -1289501869 1 -7536330682873937920 +-7540104552219860992 -22 -22 -14675 -14675 1081187102 1 -7540104552219860992 +-7541860097718902784 -61 -61 -11571 -11571 -625788713 1 -7541860097718902784 +-7542857121910046720 79 79 20872 20872 1495575878 1 -7542857121910046720 +-7547245548870025216 75 75 -716 -716 1784291853 1 -7547245548870025216 +-7547432761381339136 90 90 2338 2338 434679307 1 -7547432761381339136 +-7551394356730339328 22 22 -6460 -6460 1179528290 1 -7551394356730339328 +-7557017910095650816 38 38 -14661 -14661 195281533 1 -7557017910095650816 +-7558524160894427136 35 35 18372 18372 375106978 1 -7558524160894427136 +-7571293705217687552 -89 -89 -10935 -10935 1240875512 1 -7571293705217687552 +-7571957778022178816 -43 -43 13595 13595 1042184256 1 -7571957778022178816 +-7572262898020278272 -59 -59 23683 23683 -1875699183 1 -7572262898020278272 +-7572962089372991488 5 5 30730 30730 -841268868 1 -7572962089372991488 +-7576194692683563008 -115 -115 28393 28393 2080249726 1 -7576194692683563008 +-7593363318079610880 -56 -56 -23387 -23387 -1811563127 1 -7593363318079610880 +-7594824008626372608 -57 -57 -24942 -24942 824743780 1 -7594824008626372608 +-7598782894648565760 90 90 12762 12762 -983874694 1 -7598782894648565760 +-7600138468036386816 53 53 17436 17436 -722294882 1 -7600138468036386816 +-7603467428164009984 0 0 NULL NULL -619311578 1 -7603467428164009984 +-7603569103205916672 -100 -100 -18358 -18358 390124976 1 -7603569103205916672 +-7610137349734883328 -46 -46 7356 7356 683320224 1 -7610137349734883328 +-7611584069753552896 -42 -42 -29864 -29864 -1765795567 1 -7611584069753552896 +-7612455481940246528 -92 -92 1558 1558 NULL 0 -7612455481940246528 +-7612466483992051712 29 29 39 39 -1969235238 1 -7612466483992051712 +-7616522969329262592 58 58 -2254 -2254 1924741890 1 -7616522969329262592 +-7617860842651017216 -101 -101 718 718 386741352 1 -7617860842651017216 +-7623047151287754752 -66 -66 -23325 -23325 -1050029724 1 -7623047151287754752 +-7623359796281999360 51 51 -27259 -27259 1829544791 1 -7623359796281999360 +-7623405558242500608 -103 -103 5235 5235 283322761 1 -7623405558242500608 +-7624057992767782912 -109 -109 31986 31986 -1218581850 1 -7624057992767782912 +-7629401308029976576 -17 -17 -12575 -12575 -1655030261 1 -7629401308029976576 +-7637494527844343808 52 52 -27372 -27372 2005560498 1 -7637494527844343808 +-7637755520917741568 -127 -127 -10662 -10662 648935848 1 -7637755520917741568 +-7642381493746483200 -72 -72 NULL NULL 583458404 1 -7642381493746483200 +-7647020450676146176 76 76 17286 17286 609917172 1 -7647020450676146176 +-7661192563533062144 -21 -21 NULL NULL -1319753324 1 -7661192563533062144 +-7661250850555633664 -106 -106 -25689 -25689 -693249555 1 -7661250850555633664 +-7663293054873812992 -56 -56 -6518 -6518 -1478812842 1 -7663293054873812992 +-7665186441284968448 NULL NULL -20218 -20218 791096295 1 -7665186441284968448 +-7668388017287020544 2 2 24244 24244 NULL 0 -7668388017287020544 +-7669169138124275712 57 57 -19535 -19535 -1484033125 1 -7669169138124275712 +-7673901622181953536 -16 -16 13154 13154 1141303816 1 -7673901622181953536 +-7679894005808693248 -67 -67 9943 9943 -306214368 1 -7679894005808693248 +-7686220526274502656 -51 -51 -20182 -20182 -892839693 1 -7686220526274502656 +-7687052294777208832 52 52 28360 28360 -1989778424 1 -7687052294777208832 +-7692192232238678016 90 90 -25683 -25683 745725681 1 -7692192232238678016 +-7695491171376291840 -122 -122 -15748 -15748 1225312439 1 -7695491171376291840 +-7700203302632210432 13 13 17531 17531 1805308672 1 -7700203302632210432 +-7703540456272994304 127 127 2458 2458 1312270193 1 -7703540456272994304 +-7707242953271500800 -34 -34 -13335 -13335 1568180994 1 -7707242953271500800 +-7707867749256445952 -98 -98 16734 16734 -596963345 1 -7707867749256445952 +-7708932208121225216 74 74 -17840 -17840 307333276 1 -7708932208121225216 +-7709958788604936192 -104 -104 5191 5191 595836061 1 -7709958788604936192 +-7712425776235274240 115 115 -26932 -26932 -1432316859 1 -7712425776235274240 +-7720966287634112512 -28 -28 -18659 -18659 NULL 0 -7720966287634112512 +-7739424919198187520 -90 -90 -12103 -12103 712625264 1 -7739424919198187520 +-7744462446680375296 -31 -31 17958 17958 2029657999 1 -7744462446680375296 +-7751265769984491520 74 74 -28914 -28914 700341242 1 -7751265769984491520 +-7751427073017544704 -79 -79 31581 31581 615619268 1 -7751427073017544704 +-7753051494275432448 -2 -2 28921 28921 -1599905147 1 -7753051494275432448 +-7759238919361888256 -122 -122 30119 30119 -2065287410 1 -7759238919361888256 +-7759425383684849664 46 46 NULL NULL -938762477 1 -7759425383684849664 +-7772064021830574080 -42 -42 NULL NULL -1201785350 1 -7772064021830574080 +-7773957003968675840 48 48 -9943 -9943 270090617 1 -7773957003968675840 +-7777884099756122112 -93 -93 16217 16217 914583645 1 -7777884099756122112 +-7778829032042790912 18 18 -26064 -26064 -807242371 1 -7778829032042790912 +-7779270198785875968 83 83 -15129 -15129 -1242677422 1 -7779270198785875968 +-7782344916178796544 92 92 -17356 -17356 -1213081886 1 -7782344916178796544 +-7784419454650843136 54 54 -3179 -3179 -1210907929 1 -7784419454650843136 +-7792903881635938304 -76 -76 27523 27523 -191899537 1 -7792903881635938304 +-7793447076762345472 56 56 17942 17942 1196151988 1 -7793447076762345472 +-7797149520019062784 6 6 -26439 -26439 -1262842192 1 -7797149520019062784 +-7797151404935618560 123 123 -14928 -14928 -507955215 1 -7797151404935618560 +-7800879252150779904 108 108 -8578 -8578 1352739140 1 -7800879252150779904 +-7802538500225777664 -11 -11 31334 31334 215759857 1 -7802538500225777664 +-7804116532814151680 -109 -109 11159 11159 -1146649990 1 -7804116532814151680 +-7805985795815342080 9 9 -11679 -11679 -2076886223 1 -7805985795815342080 +-7811060170911375360 -2 -2 -26128 -26128 1513689502 1 -7811060170911375360 +-7818454479651135488 79 79 -4491 -4491 -559270035 1 -7818454479651135488 +-7819437864839495680 118 118 -23389 -23389 -370093295 1 -7819437864839495680 +-7822452149325094912 69 69 24253 24253 60847311 1 -7822452149325094912 +-7824788571789279232 -105 -105 -14667 -14667 -1406691044 1 -7824788571789279232 +-7827420207675105280 -97 -97 6197 6197 -36682325 1 -7827420207675105280 +-7831320202242228224 -32 -32 -6637 -6637 -1726479726 1 -7831320202242228224 +-7831595638727565312 29 29 -7738 -7738 1626884085 1 -7831595638727565312 +-7833618000492109824 92 92 -27715 -27715 589546540 1 -7833618000492109824 +-7835907977757245440 4 4 -11165 -11165 -87470856 1 -7835907977757245440 +-7838598833900584960 95 95 -20789 -20789 1028204648 1 -7838598833900584960 +-7840338174858199040 66 66 3245 3245 -300717684 1 -7840338174858199040 +-7845896959112658944 78 78 -3061 -3061 -1688105985 1 -7845896959112658944 +-7848043121524228096 101 101 30222 30222 1667594394 1 -7848043121524228096 +-7849504559236210688 110 110 -23248 -23248 -2052386812 1 -7849504559236210688 +-7858505678035951616 34 34 -32240 -32240 NULL 0 -7858505678035951616 +-7866079955473989632 96 96 NULL NULL 196980893 1 -7866079955473989632 +-7867219225874571264 NULL NULL -11123 -11123 -1078579367 1 -7867219225874571264 +-7868306678534193152 103 103 18395 18395 -2144138362 1 -7868306678534193152 +-7873753603299540992 93 93 NULL NULL -971698865 1 -7873753603299540992 +-7875953567586451456 -99 -99 -29601 -29601 816439627 1 -7875953567586451456 +-7877598807023386624 -48 -48 -22938 -22938 340384179 1 -7877598807023386624 +-7878145001776152576 -25 -25 26744 26744 -1489628668 1 -7878145001776152576 +-7879864376629567488 93 93 24677 24677 -472303419 1 -7879864376629567488 +-7881262505761710080 51 51 -1034 -1034 -103219371 1 -7881262505761710080 +-7881351200983613440 14 14 -20180 -20180 720703232 1 -7881351200983613440 +-7883252982752665600 -75 -75 -12782 -12782 1136548971 1 -7883252982752665600 +-7884460946615984128 127 127 -14936 -14936 1772349172 1 -7884460946615984128 +-7888051992910274560 89 89 12045 12045 1818213677 1 -7888051992910274560 +-7892780594910871552 119 119 -12571 -12571 -779743333 1 -7892780594910871552 +-7893577088764174336 -71 -71 NULL NULL 268888160 1 -7893577088764174336 +-7894382303337832448 -66 -66 -24368 -24368 1832650234 1 -7894382303337832448 +-7895991410072928256 72 72 17394 17394 1467284000 1 -7895991410072928256 +-7902517224300036096 74 74 41 41 -950738312 1 -7902517224300036096 +-7903158849011843072 21 21 7128 7128 -217930632 1 -7903158849011843072 +-7904188195431661568 49 49 27697 27697 -442839889 1 -7904188195431661568 +-7907355742053883904 102 102 28247 28247 794783516 1 -7907355742053883904 +-7910019233726242816 96 96 1409 1409 -1259611508 1 -7910019233726242816 +-7911421221625077760 48 48 7401 7401 476704350 1 -7911421221625077760 +-7915999634274369536 -72 -72 -7178 -7178 1814570016 1 -7915999634274369536 +-7916510129632296960 26 26 23468 23468 -2136052026 1 -7916510129632296960 +-7928062266382778368 -54 -54 1436 1436 152654715 1 -7928062266382778368 +-7928440849566146560 -99 -99 -31352 -31352 -800975421 1 -7928440849566146560 +-7939634346485858304 -79 -79 4363 4363 1012843193 1 -7939634346485858304 +-7949309059286163456 -57 -57 11814 11814 88774647 1 -7949309059286163456 +-7949445503604604928 -87 -87 -17082 -17082 1695098246 1 -7949445503604604928 +-7953426740065312768 -11 -11 1847 1847 22308780 1 -7953426740065312768 +-7964801953178091520 -116 -116 -18867 -18867 661659208 1 -7964801953178091520 +-7966960765508280320 60 60 -19517 -19517 -884109192 1 -7966960765508280320 +-7978782649203228672 89 89 16250 16250 491016124 1 -7978782649203228672 +-7989766326847807488 -2 -2 8675 8675 -1731820254 1 -7989766326847807488 +-7998947380180819968 110 110 -9759 -9759 -136514115 1 -7998947380180819968 +-8007017894942638080 31 31 -31582 -31582 1219616145 1 -8007017894942638080 +-8013397854633648128 -98 -98 -18295 -18295 -1391183008 1 -8013397854633648128 +-8016589197379289088 -48 -48 4715 4715 -1721763321 1 -8016589197379289088 +-8017791189288869888 -101 -101 4447 4447 -2057666812 1 -8017791189288869888 +-8018511948141748224 NULL NULL 3523 3523 661380540 1 -8018511948141748224 +-8021859935185928192 -61 -61 32019 32019 1420099773 1 -8021859935185928192 +-8022573309127000064 -96 -96 28828 28828 1194243726 1 -8022573309127000064 +-8023708819947323392 35 35 24178 24178 198539698 1 -8023708819947323392 +-8028275725610909696 72 72 -28682 -28682 -1937640350 1 -8028275725610909696 +-8028910243475038208 -87 -87 22557 22557 873035819 1 -8028910243475038208 +-8030058711611629568 -99 -99 6734 6734 -752222556 1 -8030058711611629568 +-8034414142083170304 4 4 18984 18984 -267130580 1 -8034414142083170304 +-8046189486447017984 96 96 22603 22603 925032386 1 -8046189486447017984 +-8046238369820344320 -69 -69 -16027 -16027 819069589 1 -8046238369820344320 +-8047774491688255488 49 49 -25301 -25301 -1339495001 1 -8047774491688255488 +-8051395538179063808 NULL NULL 20969 20969 -469749219 1 -8051395538179063808 +-8051587217208967168 78 78 -9398 -9398 51376784 1 -8051587217208967168 +-8051871680800120832 -94 -94 -14229 -14229 NULL 0 -8051871680800120832 +-8054581198284668928 -6 -6 5601 5601 1395450272 1 -8054581198284668928 +-8067243114610532352 68 68 -9365 -9365 214068706 1 -8067243114610532352 +-8070535484085895168 45 45 -7865 -7865 829101712 1 -8070535484085895168 +-8076479329071955968 119 119 -12605 -12605 2017314998 1 -8076479329071955968 +-8082793390939193344 88 88 6761 6761 -1878838836 1 -8082793390939193344 +-8084716955963252736 64 64 21103 21103 -1609864597 1 -8084716955963252736 +-8086577583338061824 -33 -33 20120 20120 -340462064 1 -8086577583338061824 +-8088337436168830976 8 8 30839 30839 2124297747 1 -8088337436168830976 +-8099313480512716800 -103 -103 -3091 -3091 -392713245 1 -8099313480512716800 +-8103788088118018048 -106 -106 25835 25835 -533227056 1 -8103788088118018048 +-8104684579106914304 19 19 -17269 -17269 -1091003492 1 -8104684579106914304 +-8108693586698706944 118 118 -13603 -13603 -896261100 1 -8108693586698706944 +-8115963579415650304 NULL NULL 32092 32092 -951728053 1 -8115963579415650304 +-8117838333114212352 -18 -18 -19786 -19786 -1642207005 1 -8117838333114212352 +-8122639684164501504 -82 -82 -23630 -23630 1425456189 1 -8122639684164501504 +-8127494999848919040 -30 -30 -24670 -24670 1701817607 1 -8127494999848919040 +-8131997716860526592 91 91 -32364 -32364 -457341338 1 -8131997716860526592 +-8136227554401107968 14 14 12187 12187 127917714 1 -8136227554401107968 +-8140349174954893312 -38 -38 19894 19894 NULL 0 -8140349174954893312 +-8142667274351345664 -113 -113 32581 32581 453613037 1 -8142667274351345664 +-8147405381260345344 14 14 25381 25381 659397992 1 -8147405381260345344 +-8158011642485825536 NULL NULL -25344 -25344 NULL 0 -8158011642485825536 +-8161047750470279168 106 106 -32180 -32180 -621365995 1 -8161047750470279168 +-8172827216441573376 83 83 -29675 -29675 -113253627 1 -8172827216441573376 +-8182421179156905984 25 25 6980 6980 -1892816721 1 -8182421179156905984 +-8191825921746305024 -82 -82 16082 16082 703111607 1 -8191825921746305024 +-8194062064124362752 -96 -96 13845 13845 1482983157 1 -8194062064124362752 +-8203008052020879360 -68 -68 -29685 -29685 -1127100849 1 -8203008052020879360 +-8203075743525806080 93 93 15815 15815 -626484313 1 -8203075743525806080 +-8205148279289085952 -12 -12 27693 27693 768198315 1 -8205148279289085952 +-8214462866994339840 109 109 -5097 -5097 NULL 0 -8214462866994339840 +-8219876839318716416 -44 -44 30883 30883 1452244326 1 -8219876839318716416 +-8232763638546694144 -122 -122 24455 24455 -514010922 1 -8232763638546694144 +-8240034910581153792 56 56 5599 5599 -665623523 1 -8240034910581153792 +-8240684139569233920 18 18 -31663 -31663 -1721368386 1 -8240684139569233920 +-8243487285852766208 29 29 10891 10891 1153811197 1 -8243487285852766208 +-8244116388227104768 38 38 31411 31411 1893512909 1 -8244116388227104768 +-8244657976255889408 -115 -115 -28939 -28939 688547276 1 -8244657976255889408 +-8260340354454503424 82 82 -13539 -13539 1456367662 1 -8260340354454503424 +-8269917980278980608 -117 -117 -17297 -17297 -1700451326 1 -8269917980278980608 +-8270479187688816640 -70 -70 -22726 -22726 1519993904 1 -8270479187688816640 +-8275337702906757120 78 78 -19677 -19677 210003006 1 -8275337702906757120 +-8280276629934981120 -35 -35 5266 5266 -588160623 1 -8280276629934981120 +-8293833565967810560 21 21 30075 30075 -1464514590 1 -8293833565967810560 +-8297230235506343936 102 102 -18601 -18601 283618733 1 -8297230235506343936 +-8300526097982226432 120 120 27101 27101 1314531900 1 -8300526097982226432 +-8300764106868350976 -45 -45 NULL NULL -1196101029 1 -8300764106868350976 +-8302817097848307712 -127 -127 32553 32553 -1021859098 1 -8302817097848307712 +-8317591428117274624 96 96 -28730 -28730 -670925379 1 -8317591428117274624 +-8318886086186213376 -124 -124 -10095 -10095 1033609549 1 -8318886086186213376 +-8322751250650218496 -107 -107 13792 13792 -1212524805 1 -8322751250650218496 +-8330233444291084288 62 62 -776 -776 -409404534 1 -8330233444291084288 +-8335810316927213568 45 45 -6045 -6045 -1562552002 1 -8335810316927213568 +-8340523561480437760 120 120 -18214 -18214 39723411 1 -8340523561480437760 +-8345065519816695808 9 9 -18796 -18796 654939016 1 -8345065519816695808 +-8347088645602050048 127 127 -20559 -20559 76299337 1 -8347088645602050048 +-8357136656913686528 107 107 11999 11999 1517915751 1 -8357136656913686528 +-8358130693961195520 -14 -14 28008 28008 -122391516 1 -8358130693961195520 +-8359839265974165504 62 62 -2559 -2559 1572563948 1 -8359839265974165504 +-8368269352975982592 77 77 -30890 -30890 NULL 0 -8368269352975982592 +-8368487814665895936 -66 -66 17165 17165 156101201 1 -8368487814665895936 +-8369487968903897088 52 52 4701 4701 -194270271 1 -8369487968903897088 +-8379109122834997248 -28 -28 -11740 -11740 1566607834 1 -8379109122834997248 +-8379964450833367040 9 9 20766 20766 -181122344 1 -8379964450833367040 +-8384695077413412864 -104 -104 22213 22213 -1818456584 1 -8384695077413412864 +-8387347109404286976 2 2 -6487 -6487 -2011708220 1 -8387347109404286976 +-8387536830476820480 -103 -103 9969 9969 -1703620970 1 -8387536830476820480 +-8395998375405912064 38 38 -15944 -15944 -1141801925 1 -8395998375405912064 +-8400045653258444800 -117 -117 -5869 -5869 1523657918 1 -8400045653258444800 +-8411282676082565120 61 61 2677 2677 253621570 1 -8411282676082565120 +-8418913260807217152 96 96 -10126 -10126 -41864614 1 -8418913260807217152 +-8425998949410889728 -62 -62 -16793 -16793 -656478771 1 -8425998949410889728 +-8426531414463545344 8 8 -10872 -10872 1701761102 1 -8426531414463545344 +-8430283518005846016 NULL NULL -21156 -21156 -16094879 1 -8430283518005846016 +-8430370933326536704 -64 -64 23229 23229 NULL 0 -8430370933326536704 +-8431492599012163584 123 123 31427 31427 -1131684944 1 -8431492599012163584 +-8438554249514491904 NULL NULL 28775 28775 232405034 1 -8438554249514491904 +-8445801063348281344 27 27 7899 7899 -1247325089 1 -8445801063348281344 +-8453491903284994048 -26 -26 -14223 -14223 1524010024 1 -8453491903284994048 +-8454143651040444416 27 27 -31454 -31454 516479816 1 -8454143651040444416 +-8465978403747037184 33 33 16430 16430 1347876055 1 -8465978403747037184 +-8469607298426437632 94 94 26031 26031 374283948 1 -8469607298426437632 +-8471480409335513088 102 102 -9724 -9724 1891680787 1 -8471480409335513088 +-8485389240529354752 -36 -36 3213 3213 -1528033060 1 -8485389240529354752 +-8488247955875618816 33 33 -20343 -20343 1802498539 1 -8488247955875618816 +-8490382417169408000 92 92 -24208 -24208 987917448 1 -8490382417169408000 +-8494118409594650624 28 28 25518 25518 631207613 1 -8494118409594650624 +-8503342882470019072 -9 -9 32017 32017 1367179645 1 -8503342882470019072 +-8503573595507761152 47 47 NULL NULL 2068018858 1 -8503573595507761152 +-8507279516485566464 -119 -119 28064 28064 631711489 1 -8507279516485566464 +-8509547439040757760 44 44 -18581 -18581 -1749415887 1 -8509547439040757760 +-8518060755719585792 -23 -23 17964 17964 -1100641049 1 -8518060755719585792 +-8518258741831680000 -40 -40 29502 29502 -809805200 1 -8518258741831680000 +-8521578237232529408 -57 -57 -3602 -3602 -373034494 1 -8521578237232529408 +-8522878384019169280 NULL NULL 6899 6899 633813435 1 -8522878384019169280 +-8523434203900674048 -19 -19 6306 6306 -590374062 1 -8523434203900674048 +-8525212657458348032 NULL NULL -20100 -20100 -1280919769 1 -8525212657458348032 +-8535957064499879936 -73 -73 -15866 -15866 -99205196 1 -8535957064499879936 +-8536369662934401024 -48 -48 12358 12358 447426619 1 -8536369662934401024 +-8543982423727128576 76 76 10382 10382 -607667405 1 -8543982423727128576 +-8544299740525461504 -1 -1 17534 17534 -846450672 1 -8544299740525461504 +-8545239748068941824 NULL NULL 24439 24439 -897586947 1 -8545239748068941824 +-8546758906409312256 -28 -28 -9278 -9278 -1236536142 1 -8546758906409312256 +-8552393882631389184 NULL NULL 21984 21984 1920863389 1 -8552393882631389184 +-8555709701170552832 -99 -99 -9619 -9619 -1364322216 1 -8555709701170552832 +-8559008501282832384 -127 -127 29365 29365 895945459 1 -8559008501282832384 +-8559252110266564608 44 44 -18090 -18090 259204652 1 -8559252110266564608 +-8562524688907485184 -54 -54 -4364 -4364 1775355987 1 -8562524688907485184 +-8566856504746352640 48 48 -921 -921 2018442973 1 -8566856504746352640 +-8566940231897874432 -47 -47 20307 20307 -1409508377 1 -8566940231897874432 +-8570933074545745920 125 125 6836 6836 -749042352 1 -8570933074545745920 +-8572823448513445888 NULL NULL -19738 -19738 -101960322 1 -8572823448513445888 +-8572949572756774912 48 48 NULL NULL 1787826883 1 -8572949572756774912 +-8581765103969312768 -38 -38 -28098 -28098 -890374552 1 -8581765103969312768 +-8581979259158929408 -57 -57 15379 15379 -674478103 1 -8581979259158929408 +-8584520406368493568 1 1 28656 28656 -19116270 1 -8584520406368493568 +-8585134536083660800 22 22 8786 8786 -1196808950 1 -8585134536083660800 +-8585966098173870080 -31 -31 -16978 -16978 318631333 1 -8585966098173870080 +-8593419958317056000 88 88 7057 7057 6266567 1 -8593419958317056000 +-8603817012434198528 9 9 11059 11059 1114521964 1 -8603817012434198528 +-8604758220106014720 -108 -108 4475 4475 -1798573685 1 -8604758220106014720 +-8607195685207408640 74 74 -21648 -21648 -1111937842 1 -8607195685207408640 +-8615168537390571520 -21 -21 -4539 -4539 1469775272 1 -8615168537390571520 +-8619303037130301440 -53 -53 10430 10430 -2074079977 1 -8619303037130301440 +-8623238306523824128 -107 -107 17373 17373 -1442424087 1 -8623238306523824128 +-8623965248051789824 -34 -34 15015 15015 1637295757 1 -8623965248051789824 +-8632237187473088512 -74 -74 -12876 -12876 NULL 0 -8632237187473088512 +-8649711322250362880 5 5 NULL NULL -500921094 1 -8649711322250362880 +-8651641150831362048 -52 -52 -12809 -12809 -1533934649 1 -8651641150831362048 +-8654433008222797824 NULL NULL 30052 30052 -1728171376 1 -8654433008222797824 +-8654797319350927360 82 82 -1367 -1367 895763504 1 -8654797319350927360 +-8658387566611996672 -15 -15 6493 6493 NULL 0 -8658387566611996672 +-8659643752269242368 -18 -18 31370 31370 1204834275 1 -8659643752269242368 +-8659692318743314432 -103 -103 -33 -33 25400543 1 -8659692318743314432 +-8660149447361404928 -115 -115 28301 28301 1317690178 1 -8660149447361404928 +-8664374244449050624 -44 -44 -22919 -22919 1059212450 1 -8664374244449050624 +-8664806103426252800 -81 -81 -28536 -28536 964810954 1 -8664806103426252800 +-8665218198816497664 -7 -7 NULL NULL -1031592590 1 -8665218198816497664 +-8665764757143658496 NULL NULL 23725 23725 -45460011 1 -8665764757143658496 +-8675661101615489024 -101 -101 -8857 -8857 -1918651448 1 -8675661101615489024 +-8675892979328212992 20 20 6372 6372 1478365409 1 -8675892979328212992 +-8683802826440105984 -104 -104 19636 19636 -1344287228 1 -8683802826440105984 +-8688153842294595584 NULL NULL -3206 -3206 -1741895392 1 -8688153842294595584 +-8689606130068611072 -79 -79 NULL NULL 488559595 1 -8689606130068611072 +-8694818694700048384 41 41 29011 29011 94220511 1 -8694818694700048384 +-8696162322976997376 -9 -9 -21117 -21117 1228837108 1 -8696162322976997376 +-8703026916864802816 5 5 -22582 -22582 -397683105 1 -8703026916864802816 +-8704234107608203264 25 25 24014 24014 -1318045616 1 -8704234107608203264 +-8705403811649355776 -112 -112 -29907 -29907 206121314 1 -8705403811649355776 +-8710298418608619520 -27 -27 16664 16664 -1817938378 1 -8710298418608619520 +-8714995808835444736 19 19 24718 24718 206454818 1 -8714995808835444736 +-8719510423723155456 48 48 -19357 -19357 -327648289 1 -8719510423723155456 +-8730803262481580032 71 71 NULL NULL NULL 0 -8730803262481580032 +-8731068123910987776 -86 -86 12915 12915 -1434562279 1 -8731068123910987776 +-8746702976270385152 26 26 -24538 -24538 1767359228 1 -8746702976270385152 +-8754966081778565120 79 79 3251 3251 -125419186 1 -8754966081778565120 +-8754992450211692544 92 92 7066 7066 1785455842 1 -8754992450211692544 +-8756989568739835904 -101 -101 -13743 -13743 -158420748 1 -8756989568739835904 +-8760655406971863040 19 19 -9243 -9243 -1249011023 1 -8760655406971863040 +-8763062627136864256 40 40 -9130 -9130 -454598288 1 -8763062627136864256 +-8768744394742235136 -68 -68 -26481 -26481 -726879427 1 -8768744394742235136 +-8782213262837530624 100 100 6743 6743 1565313938 1 -8782213262837530624 +-8783777723063099392 -75 -75 -15431 -15431 877053605 1 -8783777723063099392 +-8789178184387641344 -30 -30 NULL NULL -1045771991 1 -8789178184387641344 +-8797972842900307968 -3 -3 29992 29992 284646137 1 -8797972842900307968 +-8807361476639629312 -44 -44 -16218 -16218 NULL 0 -8807361476639629312 +-8813211231120031744 -68 -68 27630 27630 1575300276 1 -8813211231120031744 +-8831091081349758976 40 40 -21772 -21772 -1832606512 1 -8831091081349758976 +-8832750849949892608 20 20 5947 5947 -66010816 1 -8832750849949892608 +-8833019327569510400 25 25 1691 1691 -189393743 1 -8833019327569510400 +-8835408234247168000 127 127 -26526 -26526 -938112972 1 -8835408234247168000 +-8836899523028312064 114 114 27046 27046 397255100 1 -8836899523028312064 +-8843859708698583040 55 55 -24194 -24194 2008211296 1 -8843859708698583040 +-8844949406948671488 -105 -105 -4953 -4953 315973457 1 -8844949406948671488 +-8845239510002753536 97 97 -14537 -14537 -1358159222 1 -8845239510002753536 +-8852770376039219200 -123 -123 7959 7959 311478497 1 -8852770376039219200 +-8853553406533894144 NULL NULL 240 240 -1820436871 1 -8853553406533894144 +-8856151919723003904 58 58 -25176 -25176 -575513309 1 -8856151919723003904 +-8856821118526734336 -41 -41 4233 4233 618321042 1 -8856821118526734336 +-8857335871148171264 -28 -28 31721 31721 1061043704 1 -8857335871148171264 +-8858063395050110976 28 28 27340 27340 -1117019030 1 -8858063395050110976 +-8859107121649893376 -58 -58 -2118 -2118 -37876543 1 -8859107121649893376 +-8866442231663067136 68 68 26697 26697 -1079633326 1 -8866442231663067136 +-8870186814744420352 -110 -110 29461 29461 NULL 0 -8870186814744420352 +-8870673219965001728 1 1 30824 30824 -1620148746 1 -8870673219965001728 +-8875546987176206336 104 104 16856 16856 414645489 1 -8875546987176206336 +-8877053610728161280 NULL NULL -6474 -6474 706823078 1 -8877053610728161280 +-8877431933441327104 63 63 -22184 -22184 1650676897 1 -8877431933441327104 +-8879742387365429248 NULL NULL -13973 -13973 1912175355 1 -8879742387365429248 +-8881446757271846912 79 79 18857 18857 1224662770 1 -8881446757271846912 +-8887058200926093312 3 3 -17916 -17916 -191704948 1 -8887058200926093312 +-8892963883085578240 -115 -115 NULL NULL -2087815643 1 -8892963883085578240 +-8896045754034978816 -127 -127 -21432 -21432 1392980712 1 -8896045754034978816 +-8914039133569400832 -62 -62 18827 18827 1332042427 1 -8914039133569400832 +-8916987977485312000 -73 -73 NULL NULL -839176151 1 -8916987977485312000 +-8922409715403112448 -81 -81 32567 32567 -536315467 1 -8922409715403112448 +-8923529803981905920 -32 -32 -24178 -24178 1148500740 1 -8923529803981905920 +-8927968289860370432 45 45 20254 20254 1033836308 1 -8927968289860370432 +-8930307926221807616 116 116 7258 7258 -966979668 1 -8930307926221807616 +-8938849835283677184 -80 -80 -15299 -15299 1318606691 1 -8938849835283677184 +-8940944155843461120 -98 -98 -15526 -15526 -858439361 1 -8940944155843461120 +-8941201923743703040 NULL NULL 9127 9127 NULL 0 -8941201923743703040 +-8946656952763777024 4 4 NULL NULL -759911896 1 -8946656952763777024 +-8948335470186373120 79 79 -15946 -15946 -1078397698 1 -8948335470186373120 +-8959796625322680320 -76 -76 31509 31509 1318956413 1 -8959796625322680320 +-8961059046745669632 63 63 150 150 1783034168 1 -8961059046745669632 +-8962547695651323904 -100 -100 NULL NULL 1091736925 1 -8962547695651323904 +-8965578088652095488 -74 -74 -22241 -22241 -1216166764 1 -8965578088652095488 +-8989473881707921408 -110 -110 NULL NULL 1310360849 1 -8989473881707921408 +-8990843030306717696 NULL NULL -6283 -6283 -311437801 1 -8990843030306717696 +-8992599250893979648 78 78 -7850 -7850 1677494300 1 -8992599250893979648 +-8996954350906294272 -95 -95 28923 28923 -1769037737 1 -8996954350906294272 +-9002912355472736256 -51 -51 23417 23417 -561932449 1 -9002912355472736256 +-9004892183139811328 -91 -91 3796 3796 -1949698319 1 -9004892183139811328 +-9008631121684832256 98 98 -23943 -23943 704038411 1 -9008631121684832256 +-9012093603044245504 -1 -1 -19464 -19464 538766635 1 -9012093603044245504 +-9013952631912325120 -42 -42 -15695 -15695 -1052493316 1 -9013952631912325120 +-9014145341570203648 -4 -4 NULL NULL 273256071 1 -9014145341570203648 +-9022154842129547264 118 118 3253 3253 1130043800 1 -9022154842129547264 +-9032650742739836928 -31 -31 27028 27028 1102561039 1 -9032650742739836928 +-9049720998034137088 27 27 17023 17023 1747664003 1 -9049720998034137088 +-9051477157204770816 -15 -15 -15119 -15119 -1648991909 1 -9051477157204770816 +-9058029636530003968 NULL NULL -11010 -11010 -1197602595 1 -9058029636530003968 +-9066993118333706240 -86 -86 8488 8488 -425196209 1 -9066993118333706240 +-9071565764086521856 -1 -1 -5593 -5593 2058640744 1 -9071565764086521856 +-9075302542655684608 76 76 -26087 -26087 -295186284 1 -9075302542655684608 +-9075486079396069376 3 3 6451 6451 -1805915233 1 -9075486079396069376 +-9078662294976061440 80 80 -22426 -22426 -235819331 1 -9078662294976061440 +-9079801920509001728 -112 -112 19350 19350 -705887590 1 -9079801920509001728 +-9080568167841226752 -46 -46 24913 24913 906074599 1 -9080568167841226752 +-9080956291212132352 -31 -31 -9482 -9482 1330219997 1 -9080956291212132352 +-9084940280061485056 122 122 9177 9177 128430191 1 -9084940280061485056 +-9088239683374350336 -78 -78 -2993 -2993 -18917438 1 -9088239683374350336 +-9091113592821972992 55 55 -12295 -12295 1861276585 1 -9091113592821972992 +-9095689235523264512 11 11 10940 10940 1687784247 1 -9095689235523264512 +-9101953184875757568 86 86 -16390 -16390 -1918847735 1 -9101953184875757568 +-9102482277760983040 78 78 -10439 -10439 742866312 1 -9102482277760983040 +-9105358806324035584 97 97 -21388 -21388 1679381813 1 -9105358806324035584 +-9105701280936501248 -31 -31 -15633 -15633 1109664665 1 -9105701280936501248 +-9109392978217484288 -84 -84 -16327 -16327 407098216 1 -9109392978217484288 +-9117959922369060864 -79 -79 -11393 -11393 936133387 1 -9117959922369060864 +-9126793997498957824 NULL NULL -10821 -10821 770574055 1 -9126793997498957824 +-9136398397785948160 78 78 -22358 -22358 376076075 1 -9136398397785948160 +-9142610685888192512 86 86 12271 12271 -387395264 1 -9142610685888192512 +-9145593811310010368 -1 -1 NULL NULL -202409329 1 -9145593811310010368 +-9148197394287779840 -5 -5 13247 13247 -1568536214 1 -9148197394287779840 +-9149719074367946752 11 11 14376 14376 234452496 1 -9149719074367946752 +-9157613004431998976 -78 -78 25683 25683 1362740312 1 -9157613004431998976 +-9175038118837149696 20 20 -23241 -23241 -1701492480 1 -9175038118837149696 +-9175279464813223936 106 106 2326 2326 2080412555 1 -9175279464813223936 +-9178166810751909888 -26 -26 -14810 -14810 -1407817977 1 -9178166810751909888 +-9187662685618348032 -26 -26 -20949 -20949 NULL 0 -9187662685618348032 +-9189155542884474880 18 18 -1660 -1660 -1955545912 1 -9189155542884474880 +-9203804401302323200 -14 -14 -5357 -5357 -671853199 1 -9203804401302323200 +-9203942396257984512 87 87 -22431 -22431 -1625800024 1 -9203942396257984512 +-9206329156028112896 -68 -68 22588 22588 2084666529 1 -9206329156028112896 +-9210275791460499456 124 124 9165 9165 601376532 1 -9210275791460499456 +-9213132862973829120 -42 -42 4948 4948 -1216206795 1 -9213132862973829120 +-9215144824304721920 99 99 -79 -79 -399643110 1 -9215144824304721920 +-9218875542187065344 -61 -61 -4371 -4371 785382955 1 -9218875542187065344 +-9219066990552760320 -117 -117 -15708 -15708 2090044777 1 -9219066990552760320 +1021 31 31 -22423 -22423 -1884780525 1 1021 +1030 25 25 -17429 -17429 -300429552 1 1030 +1032 107 107 -8241 -8241 -1914210382 1 1032 +1039 -26 -26 10261 10261 914062370 1 1039 +1046 -55 -55 NULL NULL -990781312 1 1046 +1048 -124 -124 -30109 -30109 -249150336 1 1048 +1053 -100 -100 13491 13491 -1369302744 1 1053 +1055 33 33 -3103 -3103 371383749 1 1055 +1058 82 82 -4550 -4550 -1497098905 1 1058 +1065 -44 -44 5542 5542 1194089079 1 1065 +1066 -105 -105 22150 22150 1767019352 1 1066 +1074 125 125 16516 16516 161210995 1 1074 +1075 -33 -101 -30100 32260 1609470119 2 1075 +108 100 100 -5919 -5919 -835107230 1 108 +1086 33 33 24776 24776 -1341627565 1 1086 +1093 82 82 NULL NULL NULL 0 1093 +1094 -4 -4 -23271 -23271 -359194591 1 1094 +1095 -86 -86 -28097 -28097 291866793 1 1095 +1099 -127 -127 14408 14408 1390704286 1 1099 +1115 108 108 NULL NULL -144862954 1 1115 +112 107 107 8095 8095 -2147071655 1 112 +1127 7 7 -1180 -1180 -423378447 1 1127 +1128 12 12 -2546 -2546 -932525608 1 1128 +1132 88 88 -9076 -9076 239078089 1 1132 +1134 -19 -19 -8781 -8781 187718349 1 1134 +1141 -39 -39 16858 16858 -540820650 1 1141 +1142 -92 -92 -10015 -10015 1184001017 1 1142 +1145 114 114 20265 20265 669484010 1 1145 +1153 -41 -41 27758 27758 1646811064 1 1153 +1157 29 29 67 67 590719541 1 1157 +1158 36 36 -10972 -10972 990246086 1 1158 +1165 -3 -83 -32266 -8852 1630946897 2 1165 +1168 77 77 21511 21511 NULL 0 1168 +1177 -117 -117 530 530 1182595271 1 1177 +1187 123 123 -25183 -25183 69110370 1 1187 +1189 108 108 27636 27636 215508794 1 1189 +1198 -57 -57 -20329 -20329 -1857500489 1 1198 +120 117 117 -28489 -28489 29680001 1 120 +1201 6 6 1773 1773 945911081 1 1201 +1217 58 58 6675 6675 -1802746460 1 1217 +1234 -46 -46 9447 9447 -1921909135 1 1234 +1243 63 63 -28374 -28374 1938788165 1 1243 +1247 -77 -77 -13238 -13238 -866304147 1 1247 +1252 98 98 19215 19215 30036142 1 1252 +1261 18 18 -13466 -13466 -343173797 1 1261 +1270 -127 -127 14180 14180 1969239701 1 1270 +1280 46 46 -31765 -31765 991397535 1 1280 +1282 NULL NULL -18151 -18151 -1140071443 1 1282 +1286 83 83 -10781 -10781 -480058682 1 1286 +1287 70 70 4491 4491 -1362178985 1 1287 +1290 27 27 -7204 -7204 177837042 1 1290 +1291 -90 -90 9110 9110 1398486099 1 1291 +1299 64 64 -24682 -24682 765656980 1 1299 +130 5 5 20183 20183 -2081501748 1 130 +1307 79 79 -11015 -11015 882331889 1 1307 +1312 -114 -114 101 101 742059797 1 1312 +1316 -3 -3 -5897 -5897 997193329 1 1316 +1321 -90 -90 -14652 -14652 731241198 1 1321 +1337 48 48 23320 23320 -1948257321 1 1337 +1341 -98 -98 7197 7197 492120544 1 1341 +1342 -48 -48 18142 18142 1203482872 1 1342 +1343 114 114 17164 17164 -217785690 1 1343 +1345 -10 -10 -20262 -20262 -600315936 1 1345 +1346 89 89 -24801 -24801 -158233823 1 1346 +135 5 5 -6114 -6114 198017473 1 135 +1366 48 48 6080 6080 748358417 1 1366 +1368 55 -40 14606 26529 1427261767 2 1368 +1371 35 12 15644 27169 -1220509644 2 1371 +138 36 36 -7046 -7046 843282593 1 138 +1386 1 1 4939 4939 2081152819 1 1386 +1398 84 84 -14445 -14445 955267058 1 1398 +1409 13 13 -15389 -15389 865013617 1 1409 +1422 93 93 NULL NULL -1402821064 1 1422 +1423 -90 -90 -13424 -13424 631954352 1 1423 +1436 109 109 25118 25118 1765173148 1 1436 +1439 -5 -5 14783 14783 531459992 1 1439 +1447 53 53 -950 -950 NULL 0 1447 +1450 NULL NULL -29171 -29171 740883263 1 1450 +1454 27 27 21904 21904 NULL 0 1454 +1458 NULL NULL 7197 7197 -1001529082 1 1458 +1462 -112 -112 14286 14286 287239980 1 1462 +1466 -124 -124 -5267 -5267 574069547 1 1466 +1470 NULL NULL -27871 -27871 1406029775 1 1470 +1477 83 83 17769 17769 -707228984 1 1477 +1481 -15 -37 -24576 -15276 1842582526 2 1481 +1489 -36 -36 -17697 -17697 766737781 1 1489 +1493 -60 -60 -4501 -4501 557053197 1 1493 +1495 -65 -65 21299 21299 -1222897252 1 1495 +1501 -28 -28 -21648 -21648 1081920048 1 1501 +1506 121 121 -27998 -27998 1893632113 1 1506 +1508 79 79 22366 22366 1632769786 1 1508 +1509 -24 -107 -3309 -3309 3225474919 2 1509 +1518 -102 -102 -3360 -3360 824235855 1 1518 +1520 -31 -31 20391 20391 NULL 0 1520 +1521 -67 -67 -1443 -1443 -993029335 1 1521 +1524 -61 -61 6741 6741 -1851280202 1 1524 +1530 92 92 22013 22013 1934970004 1 1530 +1537 -23 -55 -18151 11788 257940904 2 1537 +154 -12 -113 -10623 12583 553439267 2 154 +1541 60 60 -23853 -23853 -1430903652 1 1541 +1542 -116 -116 32324 32324 NULL 0 1542 +1545 51 51 -800 -800 564366133 1 1545 +1556 25 25 2295 2295 -1202975006 1 1556 +1559 36 36 20018 20018 -206177972 1 1559 +1561 -111 -111 30736 30736 NULL 0 1561 +1566 -60 -60 -23750 -23750 747122546 1 1566 +1604 NULL NULL 2677 2677 -2077771325 1 1604 +1606 -82 -82 -5259 -5259 -1901806083 1 1606 +1608 99 99 -3257 -3257 142722637 1 1608 +1613 -33 -33 23844 23844 -1422780798 1 1613 +1614 -79 -79 -19571 -19571 -296195507 1 1614 +1620 -5 -5 31374 31374 -1989378509 1 1620 +1638 NULL NULL -2287 -2287 92777932 1 1638 +1641 115 115 32640 32640 NULL 0 1641 +1643 -74 -74 -23109 -23109 1346627771 1 1643 +1648 65 65 -24591 -24591 -496870819 1 1648 +1651 -91 -91 -31335 -31335 -1575588203 1 1651 +1667 -5 -5 9716 9716 -499533481 1 1667 +1671 1 1 19276 19276 1504919241 1 1671 +1674 -68 -68 -4142 -4142 1488440165 1 1674 +1676 6 6 -25033 -25033 -393723522 1 1676 +1678 NULL NULL -22163 -22163 -1104268719 1 1678 +168 119 119 25931 25931 -53587991 1 168 +1681 -111 -111 13488 13488 929751599 1 1681 +169 -67 -67 16236 16236 -1759354458 1 169 +1693 68 68 -2441 -2441 -1545572711 1 1693 +1701 6 -59 -13607 5785 755580328 2 1701 +1704 64 64 32309 32309 -605370177 1 1704 +1719 -115 -242 -20828 7353 -469198712 2 1719 +1726 -35 -35 -4509 -4509 NULL 0 1726 +1728 118 118 16105 16105 626251612 1 1728 +1745 -75 -75 32420 32420 368170021 1 1745 +1751 38 38 29288 29288 -667383951 1 1751 +1752 -78 -78 -9094 -9094 -1538978853 1 1752 +1769 -104 -104 30201 30201 805672638 1 1769 +1774 -29 -29 14773 14773 -1974777102 1 1774 +1775 32 32 -6564 -6564 1928365430 1 1775 +1777 37 37 -16282 20128 1061638369 1 1777 +1780 17 17 -9585 -9585 -71433796 1 1780 +1781 60 60 22378 22378 NULL 0 1781 +1785 55 55 4319 4319 -524189419 1 1785 +1786 31 31 -10258 -10258 -1009249550 1 1786 +1788 42 42 NULL NULL -997463353 1 1788 +1789 12 12 -4618 -4618 -1098379914 1 1789 +1791 -19 -19 -25973 -25973 -1900369503 1 1791 +1796 -79 -79 4397 4397 -1625062942 1 1796 +1806 -45 -45 NULL NULL -40284975 1 1806 +181 -49 -49 31651 31651 1742536084 1 181 +1811 -41 -41 10278 10278 -922200749 1 1811 +1813 -69 -69 -13410 -13410 -738157651 1 1813 +1826 27 27 -13623 -13623 505902480 1 1826 +1827 -53 -53 12836 12836 -956668825 1 1827 +1835 -96 -96 NULL NULL 1768399622 1 1835 +1837 77 77 26749 26749 290921475 1 1837 +1845 -59 -59 -2113 -2113 -909024258 1 1845 +1846 114 114 19513 19513 418182899 1 1846 +1856 53 -72 -29323 -15605 -1828994565 2 1856 +1862 113 113 -22215 -22215 674547678 1 1862 +1863 99 99 -3318 -3318 -1017027298 1 1863 +1864 104 104 NULL NULL NULL 0 1864 +1866 104 104 -8706 -8706 -400501472 1 1866 +187 -27 -27 10161 10161 2133950868 1 187 +1870 -68 -68 11572 11572 25644069 1 1870 +188 -127 -127 11451 11451 316438994 1 188 +1880 23 23 -32383 -32383 1293876597 1 1880 +1890 56 56 19568 19568 -1660344634 1 1890 +1892 31 31 26298 26298 596595603 1 1892 +1899 52 52 30457 30457 734267314 1 1899 +19 48 -71 -20879 28973 -2337280360 2 19 +1906 -107 -107 -13 -13 1070989126 1 1906 +1910 30 30 -28244 -28244 1978200605 1 1910 +1914 124 185 -21833 -21833 -2608386973 2 1914 +1926 -6 -6 -16722 -16722 -490337498 1 1926 +1937 -79 -79 12954 12954 -987995271 1 1937 +1940 0 0 -31365 -31365 950997304 1 1940 +1941 -116 -116 -31182 -31182 -54793232 1 1941 +1948 33 -73 -18263 11895 -1338846770 3 1948 +1955 -53 -53 7537 7537 -316678117 1 1955 +1965 70 70 -13309 -13309 1173098061 1 1965 +1972 NULL NULL 3694 3694 -1404921781 1 1972 +1981 87 87 6875 6875 -980869630 1 1981 +1983 50 50 -12085 -12085 -1954890941 1 1983 +1987 121 121 -6219 -6219 65956045 1 1987 +1990 -71 -71 30090 30090 1050809633 1 1990 +1995 113 113 -27401 -27401 1012230484 1 1995 +1999 -89 -89 8721 8721 -9958400 1 1999 +2001 -30 -30 31795 31795 217476429 1 2001 +2002 105 105 -13847 -13847 1535954353 1 2002 +2004 102 102 -6073 -6073 1464703053 1 2004 +2009 NULL NULL -28519 -28519 -1471147786 1 2009 +2011 -92 -92 -23671 -23671 33234633 1 2011 +2013 -15 -15 17581 17581 1142098316 1 2013 +2016 -50 -50 13078 13078 135341845 1 2016 +2017 97 97 -12111 -12111 44628821 1 2017 +2020 75 117 -7949 -7949 -207047446 2 2020 +2025 NULL NULL -16477 -16477 989475408 1 2025 +2026 51 51 -9883 -9883 -1454941039 1 2026 +2029 NULL NULL NULL NULL 546555204 1 2029 +203 -3 -3 24819 24819 2070969353 1 203 +204 72 72 11317 11317 2018249426 1 204 +2046 -98 -98 4809 4809 363981930 1 2046 +2056 -6 -6 21162 21162 1941527322 1 2056 +2067 92 92 28003 28003 NULL 0 2067 +2072 -118 -118 13138 13138 -1652600376 1 2072 +2073 32 32 29023 29023 -856843296 1 2073 +2085 -114 -114 6893 6893 -1179668872 1 2085 +2089 89 89 20014 20014 945683736 1 2089 +2092 -21 -21 -23540 -23540 1678261510 1 2092 +2105 84 84 28641 28641 1550112473 1 2105 +2106 -125 -125 -22641 -22641 1597303154 1 2106 +2108 108 108 -10687 -10687 977292235 1 2108 +213 121 3 -16813 26503 -1443273080 2 213 +2131 7 7 -29895 -29895 -464804906 1 2131 +2138 4 4 15070 15070 -1048181367 1 2138 +2140 123 123 25603 25603 -1319686435 1 2140 +2144 69 69 12779 12779 117620760 1 2144 +2155 NULL NULL 12291 12291 1126157283 1 2155 +2177 -55 -55 NULL NULL -1960344717 1 2177 +2179 72 72 6651 6651 1394370866 1 2179 +2180 -51 -51 -19413 -19413 -120704505 1 2180 +2183 28 28 -9196 -9196 -1947868215 1 2183 +2186 110 110 -24095 -24095 -1655396452 1 2186 +2187 -8 -8 26625 26625 -906986958 1 2187 +2189 -119 -119 26880 26880 NULL 0 2189 +2193 91 107 7939 7939 -2636180757 2 2193 +2194 -24 -24 29892 29892 -853967587 1 2194 +22 81 81 -22937 -22937 176792505 1 22 +2201 19 19 -26060 -26060 1425362689 1 2201 +2205 48 48 8929 8929 2013376408 1 2205 +2214 -125 -125 20784 20784 1602631923 1 2214 +2217 -30 -30 -25469 -25469 479566810 1 2217 +2218 26 26 16312 16312 NULL 0 2218 +2223 127 127 -6806 -6806 1605596441 1 2223 +2227 55 55 -26304 -26304 1054864168 1 2227 +2229 -101 -101 -32455 -32455 516843026 1 2229 +2232 17 17 28606 28606 277582670 1 2232 +2241 -46 -46 -28501 -28501 810157660 1 2241 +2244 -87 -87 19739 19739 -1699049982 1 2244 +2255 -91 -91 5014 5014 -1561738723 1 2255 +2262 -25 -25 25967 25967 1283898734 1 2262 +2264 119 119 5639 5639 -425103007 1 2264 +2270 -92 -92 4203 4203 -1429346144 1 2270 +2274 -35 -35 7474 7474 -1676261015 1 2274 +2277 -70 -70 26232 26232 -1447263708 1 2277 +2279 NULL NULL -22534 -22534 -1412187081 1 2279 +228 121 121 -18533 -18533 167432368 1 228 +2283 -50 -50 11929 11929 530274409 1 2283 +2285 -35 -35 -24968 -3427 1874746988 2 2285 +2295 101 101 NULL NULL -1914072976 1 2295 +2306 31 31 6900 6900 -604362582 1 2306 +2320 111 111 32231 32231 -1919939921 1 2320 +2323 29 29 -4772 -4772 -2028355450 1 2323 +2325 26 14 -24847 16592 3116981291 2 2325 +2335 55 55 999 999 1281277970 1 2335 +2341 -85 -85 30376 30376 1951869763 1 2341 +2348 30 30 -12880 -12880 -40407627 1 2348 +2358 69 69 -7058 -7058 -370798230 1 2358 +236 25 25 -11129 -11129 514833409 1 236 +2373 -64 -64 6163 6163 -1602792666 1 2373 +238 45 45 32348 32348 713031549 1 238 +2386 NULL NULL 12722 12722 930008274 1 2386 +2393 -18 -72 -2636 31049 2753810053 2 2393 +2398 98 98 -26361 -26361 1489169773 1 2398 +2400 64 64 -11848 -11848 663222148 1 2400 +2410 75 75 -23638 -23638 NULL 0 2410 +2412 -5 -42 7307 23750 -2637504979 2 2412 +2420 -7 -7 31706 31706 480849725 1 2420 +2426 NULL NULL -21574 -21574 62293025 1 2426 +2434 -42 -42 9028 9028 1621606222 1 2434 +244 -25 -25 12471 12471 860708524 1 244 +2461 58 58 -13525 -13525 -1668974292 1 2461 +2463 75 114 -30492 31390 2507326063 3 2463 +2465 NULL NULL 6490 6490 -1819075185 1 2465 +2469 -42 -42 -14423 -14423 524808 1 2469 +2475 66 66 1100 1100 -1116100266 1 2475 +2476 78 78 -32755 -32755 -1210261177 1 2476 +2485 -5 -100 -4037 -4037 1214463625 2 2485 +2487 -73 -73 -7873 -7873 NULL 0 2487 +2492 12 12 21415 21415 -270683864 1 2492 +2494 59 59 27852 27852 -1830870295 1 2494 +2502 73 73 1077 1077 -336625622 1 2502 +2506 42 42 9158 9158 776606164 1 2506 +2509 -126 -126 -31537 -31537 693331761 1 2509 +2512 63 63 17680 17680 -1164833898 1 2512 +2514 -38 -38 -26054 -26054 407233168 1 2514 +2515 -86 -86 23850 23850 -601946913 1 2515 +2517 34 34 -28784 -28784 198624903 1 2517 +2524 -34 -34 10646 10646 -1081766449 1 2524 +2533 74 74 -17056 -17056 672266669 1 2533 +2539 36 36 6892 6892 1090344463 1 2539 +2540 -32 -32 8407 8407 1103878879 1 2540 +255 102 102 -25939 -25939 -1106469823 1 255 +2551 -88 -88 -3286 -3286 -1762037754 1 2551 +2553 12 12 -19479 -19479 1112783661 1 2553 +2560 13 -97 23076 23076 -3439306295 2 2560 +2563 -94 -94 -1613 -1613 -1141652793 1 2563 +2565 97 97 -9378 -9378 -1302592941 1 2565 +2569 -75 -75 -17873 -17873 -837503491 1 2569 +2579 39 39 8410 8410 1640445482 1 2579 +2580 51 51 -31881 -31881 1933545427 1 2580 +2587 46 46 -9148 -9148 -1125605439 1 2587 +259 -113 -113 -30515 -30515 -922875124 1 259 +2599 -101 -101 5539 5539 -1903090602 1 2599 +2607 111 111 NULL NULL NULL 0 2607 +2608 41 41 15417 15417 335359004 1 2608 +2619 -42 -100 -8895 26236 -123535819 2 2619 +2625 96 96 24366 24366 -1897998366 1 2625 +2626 107 107 -15779 -15779 1620529246 1 2626 +263 125 225 -11048 -11048 2902136672 2 263 +2637 30 30 -26180 -26180 1522208504 1 2637 +2647 80 80 -1223 -1223 92834720 1 2647 +2649 102 102 21102 21102 659343542 1 2649 +2662 -16 -16 -1749 -1749 209430502 1 2662 +2663 39 39 -16820 -16820 43983130 1 2663 +2675 -44 -44 17014 17014 1305668933 1 2675 +268 -42 -136 -21451 10479 657241842 2 268 +2680 -44 -44 -9845 -9845 825977391 1 2680 +2682 38 38 -28867 -28867 -675125724 1 2682 +2688 86 86 -19493 -19493 -1249134513 1 2688 +2689 35 35 6015 6015 -1343327 1 2689 +2692 67 67 -31596 -31596 NULL 0 2692 +2700 -81 -81 25454 25454 -123529324 1 2700 +2712 -62 -62 -28146 -28146 -901778330 1 2712 +2714 NULL NULL -15341 -15341 1284956108 1 2714 +2715 67 -52 -30263 -21412 2531982336 2 2715 +2719 -127 -127 9863 9863 1516149502 1 2719 +2724 -105 -105 -18269 -18269 922373046 1 2724 +2725 38 38 11067 11067 257821327 1 2725 +2735 66 66 29834 29834 1307148254 1 2735 +2745 39 39 -2410 -2410 1134416796 1 2745 +275 -109 -109 23031 23031 1517488324 1 275 +2752 -83 -83 -21268 -21268 962091264 1 2752 +2762 37 37 -24696 -24696 314232856 1 2762 +2772 -57 -57 -16290 -16290 1835749815 1 2772 +2776 73 73 -6046 -6046 -1801684055 1 2776 +2786 -101 -218 5805 20084 -1773917592 2 2786 +279 11 11 29507 29507 -1709246310 1 279 +2790 -27 -27 21792 21792 686081268 1 2790 +2791 -109 -109 -25692 -25692 -714594143 1 2791 +2803 52 53 -13402 16134 2005164945 3 2803 +2805 -69 -69 14041 14041 -295751373 1 2805 +281 83 83 -5635 -5635 -42151403 1 281 +2810 126 126 NULL NULL 1844415080 1 2810 +2811 -92 -92 22075 22075 -170643477 1 2811 +2816 -108 -108 6226 6226 -912429611 1 2816 +2821 95 95 1911 1911 829055499 1 2821 +2824 -52 -52 30926 30926 -1679120527 1 2824 +2835 117 117 -32688 -32688 144428297 1 2835 +2842 125 125 5469 5469 889772203 1 2842 +2843 -17 -70 -14705 20814 -2509512115 2 2843 +2846 10 10 -27667 -27667 -121162464 1 2846 +2847 NULL NULL NULL NULL 1634441052 1 2847 +2848 29 29 20270 20270 -985817478 1 2848 +2850 90 90 32669 32669 1618123796 1 2850 +2855 117 212 -31857 -25151 -13657610 2 2855 +2862 -86 -86 -12071 -12071 1956887369 1 2862 +2878 9 9 -3885 -3885 -906545548 1 2878 +2886 40 40 -32296 -32296 84231802 1 2886 +289 114 114 -2828 -2828 -1144976744 1 289 +2897 4 -65 4718 8948 1164210518 2 2897 +2900 102 102 -26461 -26461 2114363167 1 2900 +2903 NULL NULL -14593 -14593 1552351592 1 2903 +2905 8 8 -32491 -32491 -1232183416 1 2905 +2911 -47 -47 23564 23564 1483580941 1 2911 +2915 45 45 20124 20124 -470798506 1 2915 +2919 -88 -88 27039 27039 1002132158 1 2919 +2933 3 -35 -19833 31923 -3159411453 2 2933 +2938 -44 -44 -24561 -24561 -2032576637 1 2938 +294 86 86 -8927 -8927 -1817096156 1 294 +2941 31 31 11050 11050 -1862095575 1 2941 +2942 -40 -40 -26367 -26367 1638471881 1 2942 +296 -21 -92 -18503 30367 -750491170 2 296 +2962 109 109 -28299 -28299 1042237722 1 2962 +2968 -17 -106 3226 22194 1556919269 1 2968 +2971 -60 -60 4725 4725 -373541958 1 2971 +2977 90 90 -16129 -16129 -2007662579 1 2977 +2979 37 37 30056 30056 131031898 1 2979 +2984 19 19 -16815 -16815 1440427914 1 2984 +2986 85 85 18508 18508 -933324607 1 2986 +2988 0 0 24600 24600 492639283 1 2988 +2991 -38 -38 6451 6451 NULL 0 2991 +3002 -100 -100 2376 2376 -1538558250 1 3002 +3006 114 114 364 364 1328225044 1 3006 +301 -65 -65 -24092 -24092 -1924909143 1 301 +302 -58 -58 -31395 -31395 -1730740504 1 302 +3021 -59 -131 1361 30184 -182818671 2 3021 +3024 62 62 23881 23881 -891543038 1 3024 +3029 50 50 -4676 -4676 -1198036877 1 3029 +3031 -5 -5 25683 25683 NULL 0 3031 +3036 120 120 22111 22111 -449333854 1 3036 +3043 -115 -115 325 325 692666133 1 3043 +3054 119 119 32671 32671 -973128166 1 3054 +3055 -108 -108 -23194 -23194 -1198465530 1 3055 +3058 106 106 21976 21976 -1144920802 1 3058 +3059 92 92 -11247 -11247 1386071996 1 3059 +3060 34 34 -21818 30216 -1304196353 2 3060 +3067 38 38 2085 2085 1256676429 1 3067 +3071 -52 -52 7076 7076 1129173487 1 3071 +3073 116 116 9572 9572 722737062 1 3073 +3079 -24 -151 -4252 10161 -882028850 1 3079 +3083 -70 -70 6484 6484 -385247581 1 3083 +3084 -75 -75 15532 15532 1333148555 1 3084 +3089 -98 -98 -18646 -18646 584084934 1 3089 +3094 114 114 -28840 -28840 1335803002 1 3094 +3103 -121 -121 -11956 -11956 -1622653291 1 3103 +311 33 33 18430 18430 -1850492820 1 311 +3111 10 10 -27295 -27295 -1299159155 1 3111 +3118 7 7 725 725 NULL 0 3118 +3119 82 82 -17995 -17995 673904922 1 3119 +3144 -17 -17 28899 28899 -758231588 1 3144 +3147 -96 -96 -7065 -7065 1102069050 1 3147 +3159 48 29 16950 28558 1048839219 2 3159 +3163 NULL NULL 8461 8461 26270580 1 3163 +3174 46 46 -24248 -24248 -1871446009 1 3174 +3183 -23 -23 -24763 -24763 1363459426 1 3183 +3190 -124 -124 NULL NULL 297577612 1 3190 +3197 -66 -66 21168 21168 976870621 1 3197 +3199 86 86 -6306 -6306 -2086352100 1 3199 +320 0 0 19001 19001 1198172036 1 320 +3203 6 6 -15576 -15576 -491377296 1 3203 +3206 77 77 -10392 -10392 -733756717 1 3206 +3208 -72 -72 -5907 -5907 -211669740 1 3208 +3212 10 10 19458 19458 900992177 1 3212 +3213 -57 -57 -31163 -31163 -1171326281 1 3213 +3231 NULL NULL -705 -705 -817383093 1 3231 +3232 59 59 3270 3270 1434588588 1 3232 +3235 -14 -14 -8003 -8003 -287400633 1 3235 +3244 -40 -40 3354 3354 1303632852 1 3244 +3245 -3 -3 18240 18240 1385883394 1 3245 +3248 29 29 29434 29434 1202720813 1 3248 +3249 -124 -124 NULL NULL 206942178 1 3249 +3253 61 61 22786 22786 -1218871391 1 3253 +3255 23 23 -9368 -9368 -1212433954 1 3255 +3263 NULL NULL NULL NULL -419335927 1 3263 +3286 5 5 31688 31688 -1078214868 1 3286 +3300 NULL NULL -22858 -22858 1743696703 1 3300 +3307 -115 -115 -5240 -5240 -1128317466 1 3307 +3322 -120 -120 29775 29775 -1544877665 1 3322 +3333 11 11 NULL NULL -462541618 1 3333 +3352 -28 -28 -8532 -8532 -1621814212 1 3352 +336 -83 -83 23910 23910 1376818328 1 336 +3365 29 29 -2734 -2734 1712411993 1 3365 +3366 -55 -55 21440 21440 -606214770 1 3366 +3397 -26 -26 -20787 -20787 -2066134281 1 3397 +34 -15 -15 7988 7988 1969650228 1 34 +3401 NULL NULL -6735 -6735 -2138343289 1 3401 +3407 -105 -105 -20835 -20835 NULL 0 3407 +3409 89 89 NULL NULL -337586880 1 3409 +341 126 126 5516 5516 278643258 1 341 +3418 -89 -214 -8267 -8267 -153939256 2 3418 +342 -121 -121 -32403 -32403 -884796655 1 342 +3421 -117 -117 -10533 -10533 -1878572820 1 3421 +3430 -110 -110 29515 29515 -395499919 1 3430 +3443 120 120 -4507 -4507 -1006768637 1 3443 +3446 -80 -80 -11081 -11081 440393309 1 3446 +345 -87 -87 NULL NULL NULL 0 345 +3456 97 97 NULL NULL NULL 0 3456 +346 NULL NULL -31217 -11767 -2819634111 2 346 +3460 -95 -95 5736 5736 1204325852 1 3460 +3462 122 114 -22390 12014 -1412216754 3 3462 +3467 58 69 -4720 4905 -537984108 2 3467 +347 30 30 5683 5683 -414207254 1 347 +3472 -30 -30 -12628 -12628 868717604 1 3472 +3478 -40 -40 18675 18675 1772545157 1 3478 +3493 37 37 -26666 -26666 -890552359 1 3493 +350 59 59 -13144 -13144 330302407 1 350 +3507 -126 -126 -21180 -21180 2032271149 1 3507 +3510 -104 -104 -3190 -3190 197056787 1 3510 +3512 60 60 31396 31396 636901402 1 3512 +3533 -52 -52 NULL NULL 1076088102 1 3533 +3534 -5 -5 -26284 -26284 NULL 0 3534 +3541 104 104 NULL NULL -996953616 1 3541 +3542 -59 -59 -15053 -15053 459269456 1 3542 +355 48 48 -24884 -24884 1258721737 1 355 +3554 -39 -39 NULL NULL 48554395 1 3554 +3555 43 43 -17366 10124 499253776 2 3555 +3563 -76 -76 -7533 -7533 1332181668 1 3563 +3566 -79 -79 -3883 -3883 -519978947 1 3566 +3567 -56 -56 11238 11238 410340192 1 3567 +3568 -96 -96 -10516 -10516 NULL 0 3568 +3579 121 121 29828 29828 -1426893312 1 3579 +3588 98 62 20939 27156 1546855030 2 3588 +3599 -27 -27 -25112 -25112 2069258195 1 3599 +3606 -86 -86 -11286 -11286 -1032306832 1 3606 +3608 56 56 21814 21814 773730574 1 3608 +3609 104 104 10457 10457 -1380191654 1 3609 +361 103 103 24663 24663 -434747475 1 361 +3613 59 59 -25531 -25531 1191238870 1 3613 +3622 100 127 -8398 410 474041784 2 3622 +3625 123 123 -1433 -1433 -1656822229 1 3625 +3630 -80 -80 27981 27981 693876030 1 3630 +3637 -51 -51 -20411 -20411 929560791 1 3637 +364 32 32 4138 4138 1336365018 1 364 +3648 81 81 -17502 -17502 1142481557 1 3648 +3663 31 31 -1900 -1900 -886741158 1 3663 +3664 58 58 -10247 -10247 -186600427 1 3664 +367 -112 -112 22505 22505 -1324624386 1 367 +3672 76 76 -27707 -27707 1825828852 1 3672 +3673 126 126 -10629 -10629 -362603422 1 3673 +3677 NULL NULL 18190 18190 470575409 1 3677 +3680 67 67 -9614 -9614 1124269631 1 3680 +3682 3 3 -1510 -1510 -1718163874 1 3682 +3690 57 57 7678 7678 1500437122 1 3690 +3691 124 124 3714 3714 -664111469 1 3691 +3701 -105 -105 -4059 -4059 760466914 1 3701 +3702 NULL NULL 4416 4416 -1423467446 1 3702 +3703 20 20 32096 32096 1796950944 1 3703 +3707 87 87 1387 1387 1377359511 1 3707 +3722 41 41 -5283 -5283 -1322736153 1 3722 +3724 42 42 -7323 -7323 1625751062 1 3724 +3725 68 111 1762 25170 -207705473 2 3725 +3728 113 164 -24313 -21146 -1739142068 2 3728 +3739 -60 -60 17242 17242 -192181579 1 3739 +3747 -114 -114 16062 16062 1001732850 1 3747 +3749 -38 -38 18482 18482 1027147837 1 3749 +375 -75 -75 14493 14493 -1754347372 1 375 +3755 -86 -86 NULL NULL -7929246 1 3755 +3763 18 18 -909 -909 -679230165 1 3763 +3764 95 95 27922 27922 -2027812975 1 3764 +3769 95 95 -7531 -7531 -1431196400 1 3769 +3770 66 48 4446 24975 -3354369862 2 3770 +378 -55 -55 -20876 -20876 -1270523286 1 378 +3781 -16 -56 -31164 -5085 -20392256 2 3781 +3789 -4 -4 -21281 -21281 -139448716 1 3789 +379 34 34 -2518 -2518 1625699061 1 379 +3810 107 107 -30534 -30534 -1043413503 1 3810 +3812 -116 -116 -31793 -31793 -870900240 1 3812 +3823 -13 -13 -32541 -32541 1563120121 1 3823 +3824 111 111 -260 -260 1372224352 1 3824 +383 -24 -90 -13948 11363 872090024 2 383 +3830 58 58 -31551 -31551 1443426396 1 3830 +3835 -27 -27 -3540 -3540 133276416 1 3835 +3841 1 1 8466 8466 -901079162 1 3841 +3848 93 93 22594 22594 1436480682 1 3848 +3858 97 97 -5435 -5435 1925283040 1 3858 +3860 75 75 31892 31892 -423945469 1 3860 +3866 91 116 -7932 -7932 347517645 2 3866 +3874 50 50 15589 15589 -1603071732 1 3874 +3879 -121 -121 -30818 -30818 461680901 1 3879 +388 108 108 -6933 -6933 -66112513 1 388 +3887 53 53 24715 24715 476919973 1 3887 +3901 18 18 -27139 -27139 -1909635960 1 3901 +3904 -55 -55 -20532 -20532 1473503196 1 3904 +3907 -69 -69 -13474 -13474 -373038706 1 3907 +391 NULL NULL -9375 -9375 1107258026 1 391 +3910 62 62 26288 26288 NULL 0 3910 +3911 -43 -43 -14055 -14055 -1283465451 1 3911 +3913 -14 -14 -23852 -23852 1506907734 1 3913 +392 51 51 -13904 -13904 1664736741 1 392 +3932 -85 -85 -31707 -31707 2145269593 1 3932 +3940 15 15 -7024 -7024 923353533 1 3940 +3941 -122 -122 7654 7654 -734921821 1 3941 +3945 -30 -30 3891 3891 -1758125445 1 3945 +3946 -37 -37 8727 8727 523289079 1 3946 +3949 -59 -59 -28646 -28646 1797164732 1 3949 +3958 -34 -34 NULL NULL 65172363 1 3958 +3960 -16 -16 -19213 -19213 1509573831 1 3960 +3961 40 40 -302 -302 -1955647385 1 3961 +3962 -10 -10 -27035 -27035 NULL 0 3962 +3965 -91 -91 -10452 -10452 771827308 1 3965 +3974 47 35 6813 15266 417582711 2 3974 +3980 82 82 -6334 -6334 -564495517 1 3980 +3990 -86 -86 -15393 -15393 -1392487784 1 3990 +4018 -34 -34 -12896 -12896 -396852483 1 4018 +4020 -113 -113 20052 20052 -1447140800 1 4020 +4024 -28 -28 -25412 -25412 -202035134 1 4024 +4030 -105 -105 -21693 -21693 -216495498 1 4030 +4037 -71 -71 2335 2335 1003667927 1 4037 +4051 -55 -55 12642 12642 1052255272 1 4051 +4054 -40 -40 -733 -733 1998185704 1 4054 +4056 -52 -52 -23527 -23527 -1516259168 1 4056 +4075 80 80 -18547 -18547 NULL 0 4075 +4078 -118 -118 16437 16437 727802564 1 4078 +4088 15 15 5972 5972 947846543 1 4088 +41 37 37 31740 31740 -203911033 1 41 +412 127 91 -27312 813 1638575351 2 412 +417 -49 -49 NULL NULL 152891873 1 417 +425 20 20 32584 32584 1336194583 1 425 +443 98 98 -11929 -11929 596242714 1 443 +454 7 7 17107 17107 -1227085134 1 454 +455 93 93 -254 -254 1159353899 1 455 +462 105 105 -7871 -7871 1677444379 1 462 +470 -63 -63 -7846 -7846 -181523892 1 470 +471 -26 -26 -30730 -30730 -207899360 1 471 +481 -51 -51 NULL NULL 536235636 1 481 +482 4 4 NULL NULL 765084282 1 482 +485 -80 -80 11979 11979 874824958 1 485 +489 4 4 -21009 -21009 -928013434 1 489 +49 -47 -47 -20729 -20729 1673218677 1 49 +490 -95 -95 -2617 -2617 1229172951 1 490 +491 -93 -93 4747 4747 -201554470 1 491 +5 120 120 -18933 -18933 -1063673827 1 5 +500 71 71 NULL NULL 1216016081 1 500 +501 63 32 8018 28748 -754130393 2 501 +504 -43 -43 2671 2671 851975276 1 504 +522 111 111 22074 22074 -853606287 1 522 +523 0 0 15923 15923 149701884 1 523 +524 -91 -91 -29218 -29218 -1326025787 1 524 +530 82 82 -22558 -22558 -1851680302 1 530 +535 64 64 NULL NULL 888896424 1 535 +579 -34 -34 3009 3009 -1804244259 1 579 +583 -120 -120 26859 26859 -1554325042 1 583 +584 88 88 -24305 -24305 -2017279089 1 584 +586 113 113 5011 5011 -310343273 1 586 +587 116 116 -4799 -4799 1485934602 1 587 +590 53 53 -16247 -16247 -186764959 1 590 +597 -65 -65 -9584 -9584 1577999613 1 597 +601 -60 -60 17086 17086 -592568201 1 601 +612 -81 -81 -7564 -7564 1131663263 1 612 +615 50 50 23956 23956 2097519027 1 615 +618 -27 -27 32063 32063 -412333994 1 618 +65 -90 -90 -8685 -8685 919363072 1 65 +650 -58 -58 -6494 -6494 1222217404 1 650 +658 -103 -103 32210 32210 -1254129998 1 658 +66 70 70 -32498 -32498 2013444562 1 66 +661 -2 -2 26557 26557 638630670 2 661 +663 -31 -31 -4209 -4209 -1261099087 1 663 +664 113 113 24019 24019 899810881 1 664 +677 57 57 -3449 -3449 -1038565721 1 677 +68 -53 -53 -4169 -4169 879290165 1 68 +681 -31 -31 -22701 -22701 -893863493 1 681 +687 -52 -52 32124 32124 1888675011 1 687 +688 -96 -96 16764 16764 NULL 0 688 +690 102 102 NULL NULL -1112062809 1 690 +691 54 54 25636 25636 -1156193121 1 691 +6923604860394528768 78 78 -13325 -13325 -1095938490 1 6923604860394528768 +6924820982050758656 87 87 26324 26324 -1709117770 1 6924820982050758656 +6926925215281774592 -57 -57 7826 7826 987734049 1 6926925215281774592 +6927260280037097472 120 120 15578 15578 1668094749 1 6927260280037097472 +6928080429732536320 0 0 -17840 -17840 1300798829 1 6928080429732536320 +6933001829416034304 NULL NULL -16998 -16998 2089198703 1 6933001829416034304 +6933451028794925056 39 39 -16367 -16367 1776456512 1 6933451028794925056 +6933731240564056064 111 111 18910 18910 780859673 1 6933731240564056064 +6934570741217755136 22 22 -17642 -17642 491758252 1 6934570741217755136 +694 -36 -36 NULL NULL -2015780444 1 694 +6947488599548215296 14 14 15279 15279 1141595012 1 6947488599548215296 +695 -13 -13 17132 17132 -521886983 1 695 +6960137166475911168 50 50 -11769 -11769 -558456218 1 6960137166475911168 +6962726713896484864 48 48 -4923 -4923 2051470532 1 6962726713896484864 +6963217546192322560 NULL NULL 10083 10083 -1340213051 1 6963217546192322560 +6964585306125008896 31 31 10544 10544 2146312499 1 6964585306125008896 +6967631925774639104 82 82 NULL NULL 373031319 1 6967631925774639104 +6969599299897163776 108 108 -5135 -5135 -2042831105 1 6969599299897163776 +6974475559697768448 -64 -64 -1725 -1725 1493555718 1 6974475559697768448 +6982145326341423104 -68 -68 -27049 -27049 -941433219 1 6982145326341423104 +6987889924212203520 -53 -53 25197 25197 -2053551539 1 6987889924212203520 +6991316084916879360 48 48 20655 20655 -1345085327 1 6991316084916879360 +6996686091335884800 -81 -81 -29442 -29442 -1738775004 1 6996686091335884800 +7006803044329021440 80 80 -398 -398 1614297403 1 7006803044329021440 +7013693841855774720 -116 -116 26158 26158 656187584 1 7013693841855774720 +7014537632150224896 -72 -72 -4451 -4451 -44426049 1 7014537632150224896 +7017956982081404928 -75 -75 -244 -244 -828724467 1 7017956982081404928 +7022349041913978880 93 93 505 505 -1096013673 1 7022349041913978880 +7027529814236192768 -60 -60 -4804 -4804 -1988508336 1 7027529814236192768 +7031339012080549888 -121 -121 -696 -696 1182390248 1 7031339012080549888 +7039820685967343616 41 41 -3517 -3517 -483740394 1 7039820685967343616 +7045967493826387968 105 105 7066 7066 -1669227632 1 7045967493826387968 +7049773031131283456 -57 -57 -4726 -4726 814544198 1 7049773031131283456 +7052226236896256000 41 41 -19270 -19270 1119976718 1 7052226236896256000 +7054271419461812224 50 50 -12422 -12422 -1266138408 1 7054271419461812224 +7054938591408996352 -119 -119 -23137 -23137 -352146259 1 7054938591408996352 +7060236714847412224 -98 -98 552 552 -1858443953 1 7060236714847412224 +7061498706968428544 -50 -50 29999 29999 -290558484 1 7061498706968428544 +7061809776248545280 38 38 28413 28413 -469870330 1 7061809776248545280 +7062382339142156288 4 4 -10513 -10513 536876888 1 7062382339142156288 +7062605127422894080 -35 -35 NULL NULL -1614194712 1 7062605127422894080 +7065344324692443136 7 7 -18672 -18672 -1881263242 1 7065344324692443136 +7068517339681259520 55 55 -24186 -24186 -1871209811 1 7068517339681259520 +7069729473166090240 21 21 -20517 -20517 NULL 0 7069729473166090240 +707 -3 -3 22320 22320 1343581455 1 707 +7077311975029555200 112 112 20348 20348 1103797891 1 7077311975029555200 +7078641038157643776 -87 -87 -13499 -13499 NULL 0 7078641038157643776 +7080269176324218880 -100 -100 -19374 -19374 -337073639 1 7080269176324218880 +7084659344078970880 -40 -40 22655 22655 963854010 1 7084659344078970880 +7086206629592252416 -117 -117 21418 21418 -1106685577 1 7086206629592252416 +7091300332052062208 54 54 13145 13145 NULL 0 7091300332052062208 +7099005292698550272 72 72 -10874 -10874 917891418 1 7099005292698550272 +71 -62 -62 NULL NULL -20639382 1 71 +7107604675626008576 -56 -56 11120 11120 1949494660 1 7107604675626008576 +7125231541858205696 104 104 -7467 -7467 -2111312205 1 7125231541858205696 +7128222874437238784 54 54 29171 29171 -283378057 1 7128222874437238784 +7130159794259353600 -20 -20 4104 4104 -837506172 1 7130159794259353600 +7130306447560826880 -14 -14 -7715 -7715 77063155 1 7130306447560826880 +7149417430082027520 113 113 -22915 -22915 -1352545619 1 7149417430082027520 +7153922334283776000 110 110 -17426 -17426 NULL 0 7153922334283776000 +7157247449513484288 49 49 NULL NULL -36038293 1 7157247449513484288 +7164349895861829632 -121 -121 3316 3316 -1153978907 1 7164349895861829632 +7165364563962191872 -101 -101 -24518 -24518 -1272838092 1 7165364563962191872 +7166263463731421184 101 101 -15578 -15578 -1838281337 1 7166263463731421184 +7175638927948562432 -83 -83 30532 30532 596280431 1 7175638927948562432 +7186401810812059648 10 10 8243 8243 1430614653 1 7186401810812059648 +7195454019231834112 -13 -13 25777 25777 -1419573027 1 7195454019231834112 +7198687580227043328 14 14 -20192 -20192 563507584 1 7198687580227043328 +7199539820886958080 -27 -27 NULL NULL NULL 0 7199539820886958080 +7204802700490858496 -22 -22 15176 15176 -1719427168 1 7204802700490858496 +7210160489915236352 NULL NULL -12755 -12755 -1353470095 1 7210160489915236352 +7212016545671348224 59 59 NULL NULL 1309976380 1 7212016545671348224 +7212090742612467712 -98 -98 5549 5549 -1067083033 1 7212090742612467712 +7217123582035116032 113 113 -3165 -3165 -90029636 1 7217123582035116032 +7220131672176058368 80 80 -25780 -25780 1017953606 1 7220131672176058368 +7220581538170413056 28 28 21402 21402 615661052 1 7220581538170413056 +7223569671814987776 NULL NULL -14973 -14973 -1004204053 1 7223569671814987776 +7226360892091416576 -26 -26 NULL NULL -935723237 1 7226360892091416576 +7229607057201127424 16 16 NULL NULL -1818380492 1 7229607057201127424 +723 NULL NULL -13972 -13972 1616782308 1 723 +7231399302953377792 -41 -41 21665 21665 1990792684 1 7231399302953377792 +7232273749940838400 -83 -83 -3373 -3373 -1231821948 1 7232273749940838400 +7235109456886816768 -114 -114 26181 26181 -2098078720 1 7235109456886816768 +7237310132329488384 -45 -45 15011 15011 -1061859761 1 7237310132329488384 +7238339720750948352 38 38 -12193 -12193 -1770229099 1 7238339720750948352 +724 -28 -28 -20663 -20663 -616724730 1 724 +7242751359672631296 -120 -120 -31659 -31659 -2016985611 1 7242751359672631296 +7249443195032985600 NULL NULL 7180 7180 -51612681 1 7249443195032985600 +7250237407877382144 52 52 8918 8918 -772236518 1 7250237407877382144 +7254710367022645248 67 67 14741 14741 1911809937 1 7254710367022645248 +7255302164215013376 -108 -108 -5118 -5118 1281159709 1 7255302164215013376 +7259955893466931200 10 10 21509 21509 NULL 0 7259955893466931200 +7260908278294560768 43 43 -23250 -23250 826519029 1 7260908278294560768 +7265141874315517952 -99 -99 26910 26910 -571587579 1 7265141874315517952 +7266437490436341760 -41 -41 22870 22870 177391521 1 7266437490436341760 +7271786885641666560 -61 -61 -19291 -19291 936752497 1 7271786885641666560 +7271887863395459072 23 23 -21708 -21708 -94709066 1 7271887863395459072 +7274777328897802240 21 21 32611 32611 482977302 1 7274777328897802240 +7291432593139507200 3 3 21529 21529 1570238232 1 7291432593139507200 +7295502697317097472 NULL NULL -28906 -28906 210728566 1 7295502697317097472 +7295926343524163584 -35 -35 -28366 -28366 1182646662 1 7295926343524163584 +7296164580491075584 -111 -111 -797 -797 1412102605 1 7296164580491075584 +7299197687217856512 8 8 -12564 -12564 172075892 1 7299197687217856512 +73 69 69 -3405 -3405 488014426 1 73 +7304839835188609024 -8 -8 -25417 -25417 1961954939 1 7304839835188609024 +7308289763456000000 NULL NULL -1335 -1335 -1423477356 1 7308289763456000000 +7309156463509061632 -100 -100 1211 1211 1304431147 1 7309156463509061632 +7310869618402910208 -45 -45 -16301 -16301 -359943425 1 7310869618402910208 +7319711402123149312 -95 -95 31125 31125 1036391201 1 7319711402123149312 +7333512171174223872 -8 -8 -24885 -24885 -332125121 1 7333512171174223872 +7339426767877390336 7 7 19302 19302 538268118 1 7339426767877390336 +7343171468838567936 -93 -93 4032 4032 879289168 1 7343171468838567936 +7344029858387820544 115 115 12263 12263 -1669848306 1 7344029858387820544 +7345991518378442752 -28 -28 10916 10916 849859032 1 7345991518378442752 +7347732772348870656 -78 -78 -670 -670 -1800413845 1 7347732772348870656 +7348598907182800896 -101 -101 12411 12411 -1940205653 1 7348598907182800896 +735 65 65 6240 6240 115111911 1 735 +7354813692542304256 77 77 -11232 -11232 1426152053 1 7354813692542304256 +7359004378440146944 -108 -108 11811 11811 1082837515 1 7359004378440146944 +736 -4 -4 -31514 -31514 -1183469360 1 736 +7368920486374989824 64 64 -15064 -15064 -1822850051 1 7368920486374989824 +7370078518278397952 -48 -48 -27284 -27284 -215703544 1 7370078518278397952 +7370803940448305152 -18 -18 25621 25621 -533281137 1 7370803940448305152 +7375521127126089728 102 102 NULL NULL -688296901 1 7375521127126089728 +7376467688511455232 5 5 -6611 -6611 -348628614 1 7376467688511455232 +7378993334503694336 -45 -45 -24911 -24911 1870464222 1 7378993334503694336 +738 26 26 -14597 -14597 -453739759 1 738 +7381659098423926784 -1 -1 22463 22463 867587289 1 7381659098423926784 +7384150968511315968 103 103 NULL NULL 1447462863 1 7384150968511315968 +7386087924003676160 3 3 7603 7603 2038381675 1 7386087924003676160 +7391208370547269632 -1 -1 -22217 -22217 -743680989 1 7391208370547269632 +7393308503950548992 95 95 4400 4400 -849551464 1 7393308503950548992 +7394967727502467072 30 30 -23672 -23672 -1983567458 1 7394967727502467072 +7401968422230032384 -15 -15 14021 14021 -504529358 1 7401968422230032384 +7410096605330227200 38 38 -7948 -7948 1987336880 1 7410096605330227200 +7410872053689794560 -38 -38 -15115 -15115 -916344293 1 7410872053689794560 +7411793502161182720 -5 -5 -32000 -32000 -177025818 1 7411793502161182720 +7412924364686458880 -123 -123 12674 12674 1817671655 1 7412924364686458880 +7414865343000322048 48 48 15626 15626 -829717122 1 7414865343000322048 +7418271723644403712 56 56 24768 24768 1202593021 1 7418271723644403712 +743 18 18 -10277 -10277 1004241194 1 743 +7432428551399669760 23 23 -9171 -9171 -805288503 1 7432428551399669760 +7432998950057975808 59 59 -24336 -24336 -434656160 1 7432998950057975808 +7436133434239229952 112 112 -6874 -6874 203688965 1 7436133434239229952 +7440265908266827776 NULL NULL -6396 -6396 -1425942083 1 7440265908266827776 +7450416810848313344 0 0 29498 29498 1393262450 1 7450416810848313344 +7452756603516190720 110 110 -11008 -11008 -2009569943 1 7452756603516190720 +7454442625055145984 80 80 21377 21377 -267554590 1 7454442625055145984 +7454632396542074880 -97 -97 4749 4749 859140926 1 7454632396542074880 +7461153404961128448 -33 -33 -17166 -17166 -23865350 1 7461153404961128448 +7471208109437304832 -110 -110 18346 18346 -1603374745 1 7471208109437304832 +7473537548003352576 35 35 1350 1350 -1439424023 1 7473537548003352576 +7486884806277611520 -87 -87 5190 5190 1516236846 1 7486884806277611520 +7487338208419823616 59 59 5445 5445 1974939899 1 7487338208419823616 +7487538600082554880 -32 -32 -19330 -19330 2068538934 1 7487538600082554880 +7490717730239250432 64 64 -3219 -3219 -1829691116 1 7490717730239250432 +7491898395977523200 -43 -43 -12811 -12811 1265528735 1 7491898395977523200 +7492436934952574976 -98 -98 20179 20179 NULL 0 7492436934952574976 +7497276415392407552 122 122 -21805 -21805 1543611951 1 7497276415392407552 +7497306924248834048 -78 -78 10807 10807 550594651 1 7497306924248834048 +7500716020874674176 11 11 20243 20243 -1953605752 1 7500716020874674176 +7514552840617558016 59 59 26338 26338 334208532 1 7514552840617558016 +7517159036469575680 58 58 7697 7697 -1437126017 1 7517159036469575680 +7524958388842078208 -78 -78 -7027 -7027 -664856187 1 7524958388842078208 +7528074274555305984 100 100 27999 27999 550186724 1 7528074274555305984 +7528211148397944832 33 33 -17944 -17944 -512198016 1 7528211148397944832 +7534042483076857856 -59 -59 -21662 -21662 1645753684 1 7534042483076857856 +7534145866886782976 54 54 26155 26155 -532755480 1 7534145866886782976 +7534549597202194432 70 70 -30163 -30163 2044130430 1 7534549597202194432 +7545689659010949120 -33 -33 6756 6756 -1380678829 1 7545689659010949120 +7548958830580563968 119 119 6913 6913 1836499981 1 7548958830580563968 +7549858023389003776 53 53 -13226 -13226 NULL 0 7549858023389003776 +7555301305375858688 -105 -105 2652 2652 1916363472 1 7555301305375858688 +7566273236152721408 -13 -13 12814 12814 881673558 1 7566273236152721408 +7569249672628789248 -113 -113 -28689 -28689 -1952235832 1 7569249672628789248 +7570474972934488064 50 50 28118 28118 -432218419 1 7570474972934488064 +7573530789362262016 7 7 -12626 -12626 NULL 0 7573530789362262016 +7575087487730196480 15 15 -30020 -30020 1421779455 1 7575087487730196480 +7581052107944361984 -37 -37 -15538 -15538 1493152791 1 7581052107944361984 +7581614118458335232 -77 -77 -2421 -2421 -1129489281 1 7581614118458335232 +7584007864107778048 41 41 -22910 -22910 1410516523 1 7584007864107778048 +7592440105065308160 85 85 -13713 -13713 NULL 0 7592440105065308160 +7593521922173419520 37 37 20023 20023 1260480653 1 7593521922173419520 +7596563216912211968 -44 -44 31242 31242 605946758 1 7596563216912211968 +7599019810193211392 94 94 -11528 -11528 -2112149052 1 7599019810193211392 +7608447395949109248 -119 -119 1356 1356 882762933 1 7608447395949109248 +7614435638888210432 -113 -113 17129 17129 735600165 1 7614435638888210432 +7620183559667081216 -20 -20 15688 15688 -1967660827 1 7620183559667081216 +7621013099259527168 -59 -59 -6927 -6927 -553349593 1 7621013099259527168 +7625728883085025280 -92 -92 28558 28558 -1699044525 1 7625728883085025280 +7626715182847090688 -77 -77 7153 7153 1905812339 1 7626715182847090688 +763 -31 -31 -408 -408 -1933374662 1 763 +7637152193832886272 -33 -33 20036 20036 1880017800 1 7637152193832886272 +7647481735646363648 7 7 -15024 -15024 1164895226 1 7647481735646363648 +7648729477297987584 2 2 -28551 -28551 NULL 0 7648729477297987584 +7652123583449161728 66 66 -1679 -1679 472901914 1 7652123583449161728 +7659279803863146496 31 31 -9609 -9609 1541249928 1 7659279803863146496 +7662037650719850496 -100 -100 820 820 -175727228 1 7662037650719850496 +7675009476762918912 23 23 -12709 -12709 522895626 1 7675009476762918912 +7678790769408172032 -69 -69 -19681 -19681 -1313618168 1 7678790769408172032 +7682327310082531328 -12 -12 30154 30154 879500678 1 7682327310082531328 +7686992843032010752 -77 -77 14144 14144 -897622427 1 7686992843032010752 +7689489436826804224 33 33 20884 20884 -909127123 1 7689489436826804224 +7690986322714066944 -41 -41 276 276 -2124994385 1 7690986322714066944 +7691062622443044864 98 98 -17531 -17531 1516165279 1 7691062622443044864 +7696737688942567424 -18 -18 20059 20059 -269702086 1 7696737688942567424 +7697541332524376064 -96 -96 -6950 -6950 -1070951602 1 7697541332524376064 +7700734109530767360 -60 -60 30199 30199 194754262 1 7700734109530767360 +7701723309715685376 101 101 14261 14261 -1831957182 1 7701723309715685376 +7705445437881278464 47 47 3374 3374 527598540 1 7705445437881278464 +7710447533880614912 61 61 -11158 -11158 -583908704 1 7710447533880614912 +7718825401976684544 -22 -22 10761 10761 -1226425562 1 7718825401976684544 +7720187583697502208 -72 -72 22837 22837 -1366059787 1 7720187583697502208 +7731443941834678272 -112 -112 31948 31948 -1092872261 1 7731443941834678272 +7735566678126616576 -28 -28 -4819 -4819 1626868156 1 7735566678126616576 +774 -114 -114 -28736 -28736 449788961 1 774 +7741854854673367040 93 93 27830 27830 -1743938290 1 7741854854673367040 +7746402369011277824 -50 -50 -30748 -30748 -1735287250 1 7746402369011277824 +7747874976739016704 89 89 -11384 -11384 315055746 1 7747874976739016704 +7748799008146366464 85 85 6074 6074 -540401598 1 7748799008146366464 +7752740515534422016 NULL NULL 28447 28447 1851654062 1 7752740515534422016 +7753359568986636288 -81 -81 23910 23910 -816661030 1 7753359568986636288 +7753882935005880320 16 16 -14888 -14888 1190302173 1 7753882935005880320 +7761834341179375616 90 90 -30360 -30360 1273877405 1 7761834341179375616 +7762823913046556672 123 123 16767 16767 1198701102 1 7762823913046556672 +7765456790394871808 -98 -98 -4286 -4286 1074488452 1 7765456790394871808 +7768984605670604800 116 116 21606 21606 NULL 0 7768984605670604800 +7775034125776363520 -90 -90 11877 11877 -1628799508 1 7775034125776363520 +7778936842502275072 17 17 -6502 -6502 -1702587308 1 7778936842502275072 +7779486624537370624 124 124 -8795 -8795 -1998652546 1 7779486624537370624 +7779735136559579136 120 120 -13393 -13393 -1228063838 1 7779735136559579136 +7782245855193874432 73 73 6320 6320 618991041 1 7782245855193874432 +7784169796350730240 120 120 -11083 -11083 -958165276 1 7784169796350730240 +7784489776013295616 5 5 26915 26915 -158848747 1 7784489776013295616 +779 62 62 -24422 -24422 -1939362279 1 779 +7790728456522784768 -23 -23 32589 32589 1575091509 1 7790728456522784768 +7792036342592348160 36 36 -10317 -10317 -538812082 1 7792036342592348160 +7794244032613703680 90 90 -3222 -3222 1301426600 1 7794244032613703680 +78 -19 -19 133 133 95356298 1 78 +780 103 103 -29646 -29646 -737624128 1 780 +7800332581637259264 123 123 -17772 -17772 592011541 1 7800332581637259264 +7801697837312884736 -41 -41 -11863 -11863 -116484575 1 7801697837312884736 +7818464507324121088 92 92 2833 2833 -2119724898 1 7818464507324121088 +782 -56 -56 10702 10702 -1552053883 1 782 +7823874904139849728 -125 -125 -23546 -23546 344239980 1 7823874904139849728 +784 75 75 21407 21407 44595790 1 784 +7843804446688264192 -6 -6 -23124 -23124 -397951021 1 7843804446688264192 +7844258063629852672 -1 -1 -20591 -20591 972835688 1 7844258063629852672 +7845953007588401152 120 120 -27232 -27232 NULL 0 7845953007588401152 +7857878068300898304 -50 -50 2616 2616 977624089 1 7857878068300898304 +7868367829080506368 56 56 NULL NULL 658008867 1 7868367829080506368 +7870277756614623232 -105 -105 -20752 -20752 985634256 1 7870277756614623232 +7871189141676998656 79 79 -11006 -11006 1363568842 1 7871189141676998656 +7871554728617025536 6 6 28146 28146 -309571354 1 7871554728617025536 +7874764415950176256 NULL NULL -11187 -11187 2127682701 1 7874764415950176256 +7885697257930588160 NULL NULL -3813 -3813 1992977592 1 7885697257930588160 +7888238729321496576 124 124 NULL NULL 978044705 1 7888238729321496576 +789 -119 -119 31140 31140 NULL 0 789 +7892026679115554816 22 22 -22922 -22922 626941809 1 7892026679115554816 +7892281003266408448 46 46 -26138 -26138 -371779520 1 7892281003266408448 +7898670840507031552 98 98 -22689 -22689 776459017 1 7898670840507031552 +7909645665163804672 -109 -109 -20188 -20188 -1289665817 1 7909645665163804672 +7917494645725765632 -61 -61 20411 20411 2076370203 1 7917494645725765632 +7919597361814577152 70 70 6781 6781 2125311222 1 7919597361814577152 +7921639119138070528 112 112 31432 31432 -1030565036 1 7921639119138070528 +7922443154272395264 39 39 -12904 -12904 -1333770335 1 7922443154272395264 +7926898770090491904 85 85 14176 14176 1582537271 1 7926898770090491904 +7933040277013962752 121 121 -30677 -30677 -1061222139 1 7933040277013962752 +7936149988210212864 -27 -27 -10815 -10815 1769324649 1 7936149988210212864 +7944741547145502720 0 0 -12203 -12203 372099650 1 7944741547145502720 +7947544013461512192 -52 -52 -15501 -15501 -1184620079 1 7947544013461512192 +7948803266578161664 -69 -69 -28864 -28864 1766517223 1 7948803266578161664 +7955126053367119872 -8 -8 -25988 -25988 1447438548 1 7955126053367119872 +7961515985722605568 NULL NULL NULL NULL 866084887 1 7961515985722605568 +7961909238130270208 85 85 22852 22852 -1138530007 1 7961909238130270208 +797 87 87 5550 5550 996831203 1 797 +7983789401706094592 -14 -14 -29239 -29239 230954385 1 7983789401706094592 +7989119273552158720 -55 -55 -4877 -4877 NULL 0 7989119273552158720 +7989160253372817408 -58 -58 1393 1393 1848935036 1 7989160253372817408 +7997694023324975104 -116 -116 10216 10216 -1826997220 1 7997694023324975104 +7998357471114969088 84 84 -18387 -18387 346562088 1 7998357471114969088 +7998687089080467456 -50 -50 5591 5591 NULL 0 7998687089080467456 +80 105 105 NULL NULL NULL 0 80 +8000440057238052864 111 111 4989 4989 1251556414 1 8000440057238052864 +8002769767000145920 -106 -106 -12016 -12016 1668446119 1 8002769767000145920 +8004633750273925120 21 21 21081 21081 -1754203978 1 8004633750273925120 +8011181697250631680 -73 -73 -6948 -6948 1773417290 1 8011181697250631680 +8011602724663336960 -98 -98 756 756 667283966 1 8011602724663336960 +8014986215157530624 -117 -117 -21922 -21922 -799249885 1 8014986215157530624 +8017403886247927808 35 35 13020 13020 -1491722659 1 8017403886247927808 +803 96 96 -11047 -11047 -2096425960 1 803 +8045070943673671680 68 68 30764 30764 435407142 1 8045070943673671680 +8048726769133592576 -30 -30 -12239 -12239 -406264741 1 8048726769133592576 +8059284960252731392 -57 -57 896 896 -251576563 1 8059284960252731392 +8069531888205086720 43 43 9469 9469 1978171687 1 8069531888205086720 +8071961599867387904 105 105 -4218 -4218 52667480 1 8071961599867387904 +8073733016154431488 52 52 -22923 -22923 1815882183 1 8073733016154431488 +8079573715140485120 -49 -49 NULL NULL 503752931 1 8079573715140485120 +808 -5 -5 4536 4536 -1836166334 1 808 +8087737899452432384 -1 -1 18900 18900 -2137168636 1 8087737899452432384 +809 28 28 -21506 -21506 -682333536 1 809 +8091421389575282688 91 91 22232 22232 NULL 0 8091421389575282688 +8099215208813903872 -39 -39 -16680 -16680 492968645 1 8099215208813903872 +8100036735858401280 54 54 -30304 -30304 -146961490 1 8100036735858401280 +8109381965028548608 -121 -121 -11110 -11110 2022944702 1 8109381965028548608 +8111757081791733760 -79 -79 -5314 -5314 -234758376 1 8111757081791733760 +8113585123802529792 67 67 -17254 -17254 129675822 1 8113585123802529792 +8116738401948377088 89 89 24782 24782 1914993018 1 8116738401948377088 +812 71 71 19874 19874 -954480325 1 812 +8120593157178228736 -50 -50 -31709 -31709 -1379039356 1 8120593157178228736 +8129551357032259584 40 40 26664 26664 323817967 1 8129551357032259584 +8135164922674872320 51 51 -3436 -3436 -1459528251 1 8135164922674872320 +8142241016679735296 96 96 -5699 -5699 -163859725 1 8142241016679735296 +8143462899383345152 37 37 2784 2784 644934949 1 8143462899383345152 +8144552446127972352 -103 -103 4081 4081 2083836439 1 8144552446127972352 +8145745969573666816 -88 -88 -21233 -21233 467753905 1 8145745969573666816 +8145750910080745472 -6 -6 -30482 -30482 1275228381 1 8145750910080745472 +8146288732715196416 87 87 -8293 -8293 -728015067 1 8146288732715196416 +8146492373537660928 94 94 18535 18535 1316369941 1 8146492373537660928 +8148211378319933440 -8 -8 26869 26869 NULL 0 8148211378319933440 +815 74 74 23177 23177 1910930064 1 815 +8150115791664340992 -109 -109 -32022 -32022 793047956 1 8150115791664340992 +8156018594610790400 -49 -49 -12071 -12071 1384071499 1 8156018594610790400 +8156782979767238656 63 63 2756 2756 -1651993300 1 8156782979767238656 +8160569434550403072 -90 -90 19986 19986 -1808960215 1 8160569434550403072 +8160662610166194176 12 12 27077 27077 -310584775 1 8160662610166194176 +8163948965373386752 0 0 -2835 -2835 1968813171 1 8163948965373386752 +8168742078705262592 -50 -50 -8286 -8286 -303747347 1 8168742078705262592 +8169878743136043008 76 76 -19545 -19545 1765874562 1 8169878743136043008 +8171188598958407680 NULL NULL NULL NULL 1996235654 1 8171188598958407680 +8183233196086214656 57 57 -2827 -2827 1450881368 1 8183233196086214656 +8184799300477943808 -68 -68 9069 9069 -579916775 1 8184799300477943808 +8190539859890601984 12 12 7343 7343 1418228573 1 8190539859890601984 +8190967051000659968 42 42 -562 -562 604460005 1 8190967051000659968 +8192304692696383488 95 95 -9528 -9528 494570380 1 8192304692696383488 +8195103847607967744 58 58 18555 18555 15020431 1 8195103847607967744 +8199513544090730496 -50 -50 16693 16693 758926227 1 8199513544090730496 +820 125 21 20428 26867 337231116 2 820 +8201303040648052736 -52 -52 -18385 -18385 -774406989 1 8201303040648052736 +8201491077550874624 NULL NULL -19295 -19295 1677197847 1 8201491077550874624 +8208354137450766336 -55 -55 23205 23205 1377144283 1 8208354137450766336 +8210813831744118784 -46 -46 31502 31502 139661585 1 8210813831744118784 +8213810702473183232 -83 -83 -6513 -6513 587797446 1 8213810702473183232 +8219326436390821888 -57 -57 -17689 -17689 2064448036 1 8219326436390821888 +8220104397160169472 -50 -50 27071 27071 -1274158260 1 8220104397160169472 +8221561626658881536 -29 -29 -4211 -4211 -1626062014 1 8221561626658881536 +8222714144797368320 -78 -78 -10532 -10532 -318380015 1 8222714144797368320 +8223732800007864320 -91 -91 7579 7579 -599396052 1 8223732800007864320 +823 96 96 NULL NULL 1660088606 1 823 +8230371298967609344 57 57 24436 24436 1660278264 1 8230371298967609344 +8235179243092090880 -78 -78 -28932 -28932 187893585 1 8235179243092090880 +8244041599171862528 -111 -111 -7201 -7201 402173272 1 8244041599171862528 +8254763178969915392 -80 -80 18972 18972 658850444 1 8254763178969915392 +8268875586442256384 -104 -104 6115 6115 1271280812 1 8268875586442256384 +8269730157217062912 7 7 4952 4952 127051381 1 8269730157217062912 +8272001752345690112 -118 -118 22006 22006 3999930 1 8272001752345690112 +8279056098670198784 -115 -115 -240 -240 2133492883 1 8279056098670198784 +8282648443538710528 0 0 -19427 -19427 -402441123 1 8282648443538710528 +8283099811330506752 73 73 16195 16195 737149747 1 8283099811330506752 +8286706213485297664 3 3 6587 6587 -916495008 1 8286706213485297664 +8287522765741301760 45 45 -27705 -27705 -1817564067 1 8287522765741301760 +8290014929764040704 -124 -124 -25624 -25624 -1424027104 1 8290014929764040704 +8290944180915871744 20 20 -24115 -24115 684561551 1 8290944180915871744 +8294315622451740672 70 70 29922 29922 -43858652 1 8294315622451740672 +8295110846998233088 -107 -107 19917 19917 -1945738830 1 8295110846998233088 +83 11 11 -23836 -23836 -684022323 1 83 +8302473563519950848 69 69 28358 28358 -1524081566 1 8302473563519950848 +8316336224427483136 84 84 -18485 -18485 345556325 1 8316336224427483136 +8323460620425330688 -43 -43 24298 24298 -1524554771 1 8323460620425330688 +8325227661920133120 -61 -61 28000 28000 -178568841 1 8325227661920133120 +8332670681629106176 -65 -65 21932 21932 -314935936 1 8332670681629106176 +8333523087360901120 23 23 NULL NULL -442732016 1 8333523087360901120 +8337549596011102208 -127 -127 16110 16110 904604938 1 8337549596011102208 +8345435427356090368 -88 -88 198 198 323919214 1 8345435427356090368 +835 30 30 -4159 -4159 -1054609414 1 835 +8351163199364390912 -48 -48 -232 -232 391186487 1 8351163199364390912 +8362046808797306880 45 45 -31764 -31764 89366322 1 8362046808797306880 +8365058996333953024 62 62 -14280 -14280 -2043805661 1 8365058996333953024 +8367680396909404160 14 14 -12517 -12517 -1269216718 1 8367680396909404160 +8368012468775608320 -98 -98 21941 21941 -1665164127 1 8368012468775608320 +837 74 74 13161 13161 170870820 1 837 +8371939471056470016 -29 -29 -22000 -22000 826143442 1 8371939471056470016 +8372408423196270592 73 73 -29468 -29468 564349193 1 8372408423196270592 +8372588378498777088 62 62 30936 30936 1321678350 1 8372588378498777088 +8374321007870836736 46 46 -15874 -15874 -329336519 1 8374321007870836736 +8376440110255243264 -58 -58 3325 3325 1665724041 1 8376440110255243264 +8383159090746204160 NULL NULL -19276 -19276 605141554 1 8383159090746204160 +8388363436324085760 -120 -120 22678 22678 -707108808 1 8388363436324085760 +8391407951622815744 107 107 19968 19968 NULL 0 8391407951622815744 +8391785334471589888 -72 -72 -15957 -15957 -630900418 1 8391785334471589888 +8396433451610652672 -7 -7 28940 28940 -180280420 1 8396433451610652672 +8398862954249560064 -48 -48 -22447 -22447 669871113 1 8398862954249560064 +8407869317250220032 -55 -55 NULL NULL -1240912824 1 8407869317250220032 +8410599906334097408 -6 -6 17701 17701 -1606567895 1 8410599906334097408 +8411494452500930560 13 13 28551 28551 -1568646283 1 8411494452500930560 +8415171956168417280 -111 -111 19862 19862 541118710 1 8415171956168417280 +8416121695917498368 93 93 18140 18140 63706286 1 8416121695917498368 +8417381121663746048 55 55 -24267 -24267 1458051497 1 8417381121663746048 +8419958579638157312 -114 -114 18690 18690 -99916247 1 8419958579638157312 +8424515140664360960 -111 -111 -20112 -20112 1847210729 1 8424515140664360960 +8435912708683087872 -52 -52 -19028 -19028 -2081809883 1 8435912708683087872 +845 NULL NULL 14234 14234 -1026746699 1 845 +8451612303224520704 -113 -113 26241 26241 -971203543 1 8451612303224520704 +8454154705460666368 12 12 -8321 -8321 -1421396891 1 8454154705460666368 +8455496814886002688 68 68 6379 6379 107680423 1 8455496814886002688 +8457906374051020800 -98 -98 -30244 -30244 106847364 1 8457906374051020800 +8461498293348065280 49 49 3186 3186 1636364987 1 8461498293348065280 +8463868417649524736 -81 -81 25986 25986 -1643714866 1 8463868417649524736 +8467976965865799680 22 22 -23622 -23622 916057807 1 8467976965865799680 +8470141334513098752 -8 -8 30861 30861 NULL 0 8470141334513098752 +8472429318602268672 NULL NULL -16518 -16518 -308225568 1 8472429318602268672 +8473699639908261888 -86 -86 -5829 -5829 -591879497 1 8473699639908261888 +8487573502287478784 -8 -8 27787 27787 1895282160 1 8487573502287478784 +8489584373231919104 -22 -22 -18659 -18659 1416850873 1 8489584373231919104 +8489735221193138176 -89 -89 29333 29333 -1124028213 1 8489735221193138176 +85 -91 -91 -3202 -3202 -913906252 1 85 +8501910015960735744 19 19 -2060 -2060 1579460630 1 8501910015960735744 +8508401924853850112 108 108 -2825 -2825 -1578387726 1 8508401924853850112 +8509508263705477120 -103 -103 -20934 -20934 1107757211 1 8509508263705477120 +8514851182589771776 52 52 -13805 -13805 415234946 1 8514851182589771776 +8514979402185596928 -77 -77 NULL NULL 1902676205 1 8514979402185596928 +8515682078777081856 98 98 14331 14331 -1026458834 1 8515682078777081856 +8518454006987948032 -78 -78 -22941 -22941 -379174037 1 8518454006987948032 +8519937082746634240 -3 -3 -28566 -28566 -1745449855 1 8519937082746634240 +8523972434954510336 -52 -52 17720 17720 2134433675 1 8523972434954510336 +8524940073536954368 52 52 24488 24488 476858779 1 8524940073536954368 +8525336514806317056 119 119 -14405 -14405 350802495 1 8525336514806317056 +8525894870444638208 13 13 -9735 -9735 1216287232 1 8525894870444638208 +8532016240026279936 -67 -67 -7172 -7172 -1726585032 1 8532016240026279936 +8536948829863198720 100 100 -6024 -6024 1723691683 1 8536948829863198720 +8540237852367446016 92 92 2728 2728 398960205 1 8540237852367446016 +8543177193114779648 51 51 18637 18637 2048533360 1 8543177193114779648 +8547243497773457408 42 42 29721 29721 -534991774 1 8547243497773457408 +8551446856960942080 72 72 24446 24446 -1312782341 1 8551446856960942080 +8553195689344991232 45 45 -9065 -9065 566646177 1 8553195689344991232 +8554899472487596032 -24 -24 -13978 -13978 -491882534 1 8554899472487596032 +8555933456197828608 29 29 24105 24105 NULL 0 8555933456197828608 +8555948987770511360 -54 -54 18071 18071 107941738 1 8555948987770511360 +8557218322962644992 42 42 22278 22278 -1210550573 1 8557218322962644992 +8558000156325707776 6 6 -30638 -30638 -370901197 1 8558000156325707776 +8560526613401714688 17 17 -16622 -16622 1592467112 1 8560526613401714688 +8569030475428511744 -55 -55 -25166 -25166 1743671220 1 8569030475428511744 +8570983266408103936 106 106 NULL NULL 950545385 1 8570983266408103936 +8571268359622172672 119 119 -6384 -6384 1187495452 1 8571268359622172672 +8573305425181941760 115 115 14089 14089 1583280136 1 8573305425181941760 +8577096957495025664 125 125 7954 7954 NULL 0 8577096957495025664 +8579974641030365184 -97 -97 -3619 -3619 -1545388906 1 8579974641030365184 +8583916402383601664 56 56 8551 8551 -733239404 1 8583916402383601664 +8613562211893919744 98 98 -21357 -21357 -1109134719 1 8613562211893919744 +8625937019655200768 -104 -104 -6736 -6736 272086526 1 8625937019655200768 +8631515095562887168 -77 -77 -9494 -9494 -1244527286 1 8631515095562887168 +8637720762289659904 1 1 NULL NULL 1669519977 1 8637720762289659904 +8639254009546055680 NULL NULL 26952 26952 477584560 1 8639254009546055680 +8641221723991433216 -46 -46 18350 18350 -1531040609 1 8641221723991433216 +8643198489997254656 94 94 10273 10273 -1079086534 1 8643198489997254656 +8644602243484803072 79 79 -23663 -23663 -1218592418 1 8644602243484803072 +8649296591032172544 -92 -92 -13979 -13979 -1744964279 1 8649296591032172544 +8652485812846567424 42 42 10699 10699 1372705672 1 8652485812846567424 +8656571350884048896 -19 -19 -16002 -16002 NULL 0 8656571350884048896 +8660248367767076864 -122 -122 -16872 -16872 1520375588 1 8660248367767076864 +8665969966920990720 -105 -105 -25596 -25596 1372982791 1 8665969966920990720 +8666178591503564800 -104 -104 -21025 -21025 -1565785026 1 8666178591503564800 +8677632093825916928 21 21 30632 30632 2040926345 1 8677632093825916928 +8677794924343164928 123 123 -20409 -20409 115470151 1 8677794924343164928 +868 NULL NULL -14644 -14644 -2133145181 1 868 +8682955459667951616 96 96 -25282 -25282 2009215103 1 8682955459667951616 +8687042963221159936 -61 -61 3063 3063 -870624802 1 8687042963221159936 +8688483860094599168 -96 -96 -25734 -25734 -273937943 1 8688483860094599168 +8693036785094565888 41 41 NULL NULL 2090496825 1 8693036785094565888 +8697823501349609472 -2 -2 -14597 -14597 922553769 1 8697823501349609472 +8698055291501543424 71 71 27905 27905 -1755088362 1 8698055291501543424 +8708232769657815040 -13 -13 31135 31135 6526476 1 8708232769657815040 +8708845895460577280 -34 -34 -27553 -27553 1860113703 1 8708845895460577280 +871 -31 -31 -9496 -9496 915505006 1 871 +8714829359200747520 -11 -11 23834 23834 672919099 1 8714829359200747520 +8716401555586727936 92 92 8188 8188 -789126455 1 8716401555586727936 +8720504651219001344 -93 -93 18820 18820 825677248 1 8720504651219001344 +8723248113030782976 -8 -8 NULL NULL 144499388 1 8723248113030782976 +873 8 8 NULL NULL 842283345 1 873 +8731960288562044928 15 15 7392 7392 869288953 1 8731960288562044928 +8734584858442498048 -71 -71 9962 9962 -946830673 1 8734584858442498048 +8736061027343859712 79 79 -28084 -28084 -1974972123 1 8736061027343859712 +874 NULL NULL 6367 6367 58313734 1 874 +8752150411997356032 -97 -97 913 913 -1502924486 1 8752150411997356032 +8759089349412847616 NULL NULL 16439 16439 1972940844 1 8759089349412847616 +8759184090543857664 -2 -2 -373 -373 435426302 1 8759184090543857664 +8760285623204290560 100 100 -24296 -24296 -573787626 1 8760285623204290560 +8761174805938331648 -114 -114 28048 28048 1205391962 1 8761174805938331648 +8769199243315814400 -123 -123 25732 25732 2100377172 1 8769199243315814400 +8773222500321361920 -74 -74 4261 4261 217823040 1 8773222500321361920 +8775009214012456960 113 113 -29988 -29988 -213198503 1 8775009214012456960 +8779073705407963136 -75 -75 -31967 -31967 -1979314577 1 8779073705407963136 +8779711700787298304 71 71 27960 27960 -859535015 1 8779711700787298304 +878 106 106 -21723 -21723 290601612 1 878 +8780196485890555904 48 48 -9183 -9183 -607285491 1 8780196485890555904 +8782900615468302336 88 88 -12396 -12396 -1411407810 1 8782900615468302336 +8783241818558193664 -102 -102 NULL NULL -714270951 1 8783241818558193664 +8785153741735616512 -107 -107 15530 15530 1028092807 1 8785153741735616512 +8792059919353348096 41 41 -10569 -10569 -745678338 1 8792059919353348096 +8793387410919038976 -73 -73 -1011 -1011 -1058166020 1 8793387410919038976 +8795069490394882048 6 6 -5946 -5946 1366402722 1 8795069490394882048 +8806507556248731648 89 89 32734 32734 1190554937 1 8806507556248731648 +8808467247666241536 59 59 297 297 -1706867123 1 8808467247666241536 +8811693967537774592 NULL NULL 24299 24299 1731764471 1 8811693967537774592 +8815398225009967104 103 103 NULL NULL -1701502632 1 8815398225009967104 +8817665768680906752 -82 -82 -24320 -24320 1550375386 1 8817665768680906752 +8822384228057604096 85 85 26579 26579 -1371840597 1 8822384228057604096 +8825059717746376704 75 75 12802 12802 872554087 1 8825059717746376704 +8829545979081744384 90 90 -27844 -27844 NULL 0 8829545979081744384 +883 62 62 12048 12048 -1554130090 1 883 +8836228556823977984 49 49 -26061 -26061 1499399891 1 8836228556823977984 +8837420822750314496 -23 -23 -29475 -29475 2052773366 1 8837420822750314496 +8849475396952514560 -28 -28 NULL NULL 718692886 1 8849475396952514560 +8850055384477401088 21 21 -20657 -20657 1503176016 1 8850055384477401088 +8853989376829833216 82 82 5196 5196 -1505397109 1 8853989376829833216 +8854495099223375872 -49 -49 -12588 -12588 2065408093 1 8854495099223375872 +8854677881758162944 NULL NULL -32263 -32263 1883400319 1 8854677881758162944 +8854715632851345408 49 49 22511 22511 1301997393 1 8854715632851345408 +8856674723376668672 NULL NULL NULL NULL -4943292 1 8856674723376668672 +8868529429494071296 52 52 19003 19003 1830870769 1 8868529429494071296 +8871707618793996288 23 23 NULL NULL -677778959 1 8871707618793996288 +8875745082589929472 -50 -50 -28968 -28968 -1460613213 1 8875745082589929472 +888 -6 -6 15862 15862 1012696613 1 888 +8895174927321243648 -57 -57 30921 30921 -522450861 1 8895174927321243648 +8896237972875370496 -54 -54 -31404 -31404 1540680149 1 8896237972875370496 +8897901899039473664 39 39 3228 3228 -535056977 1 8897901899039473664 +8899122608190930944 124 124 -1067 -1067 -2146432765 1 8899122608190930944 +8900180888218329088 87 87 13048 13048 -1058356124 1 8900180888218329088 +8900351886974279680 -83 -83 -15497 -15497 1000106109 1 8900351886974279680 +8900545829211299840 -102 -102 256 256 352214248 1 8900545829211299840 +8905330479248064512 46 46 27675 27675 NULL 0 8905330479248064512 +8910706980937261056 118 118 -12506 -12506 1166237779 1 8910706980937261056 +8920344895701393408 81 81 7299 7299 -1126628450 1 8920344895701393408 +8920533610804609024 84 84 7569 7569 1739911574 1 8920533610804609024 +8927691194719174656 76 76 5025 5025 -917062754 1 8927691194719174656 +8928133990107881472 -70 -70 23063 23063 -1511162508 1 8928133990107881472 +8935252708196999168 97 97 12327 12327 1603612975 1 8935252708196999168 +8936639033158410240 -57 -57 21469 21469 -1305139473 1 8936639033158410240 +8939431770838810624 -108 -108 -18292 -18292 -934008333 1 8939431770838810624 +8945004737083555840 15 15 19887 19887 252169185 1 8945004737083555840 +8945302550165004288 -116 -116 22118 22118 1117805438 1 8945302550165004288 +8962097525980225536 NULL NULL -26946 -26946 -329695030 1 8962097525980225536 +8972161729142095872 90 90 NULL NULL 1709983738 1 8972161729142095872 +8979012655944220672 -16 -16 -29722 -29722 -120692484 1 8979012655944220672 +898 56 32 -22608 28077 104527563 2 898 +8983857919580209152 16 16 -29285 -29285 1273798925 1 8983857919580209152 +8983912573761167360 -95 -95 -17690 -17690 NULL 0 8983912573761167360 +8984935029383389184 -96 -96 NULL NULL -1565671389 1 8984935029383389184 +8987827141270880256 -42 -42 -27015 -27015 -1024500955 1 8987827141270880256 +8991071342495531008 -59 -59 15655 15655 -574475259 1 8991071342495531008 +8991442360387584000 -10 -10 -5468 -5468 2081243058 1 8991442360387584000 +8994608999945125888 113 113 -23323 -23323 -839512271 1 8994608999945125888 +8995562121346260992 2 2 11664 11664 -618505946 1 8995562121346260992 +8996824426131390464 0 0 28774 28774 -214166042 1 8996824426131390464 +9000633029632499712 -35 -35 -10420 -10420 -641062448 1 9000633029632499712 +9001907486943993856 NULL NULL 7483 7483 -1974257754 1 9001907486943993856 +9005866015985713152 -98 -98 -5374 -5374 652118640 1 9005866015985713152 +9016280522993975296 -8 -8 20794 20794 388707554 1 9016280522993975296 +9020143715350814720 4 4 16565 16565 NULL 0 9020143715350814720 +9023663198045544448 0 0 22388 22388 1145627305 1 9023663198045544448 +9030480306789818368 -91 -91 NULL NULL -758973175 1 9030480306789818368 +9038087402564657152 74 74 -14836 -14836 NULL 0 9038087402564657152 +9040958359122640896 -48 -48 -30157 -30157 -1635301453 1 9040958359122640896 +9043089884440068096 33 33 -19020 -19020 -1527024213 1 9043089884440068096 +9048002942653710336 -15 -15 14982 14982 -1079231269 1 9048002942653710336 +9048297564833079296 7 7 29851 29851 -1534307678 1 9048297564833079296 +9050032047355125760 -52 -52 27527 27527 -1240048334 1 9050032047355125760 +9053187076403060736 73 73 -32208 -32208 1075444504 1 9053187076403060736 +9054887854393950208 75 75 13522 13522 -1517536924 1 9054887854393950208 +9062227900376203264 30 30 4206 4206 1260101584 1 9062227900376203264 +9064847977742032896 3 3 10727 10727 -1849091666 1 9064847977742032896 +9067985867711291392 126 126 NULL NULL 43672187 1 9067985867711291392 +9073672806863790080 116 116 -32119 -32119 -2144241640 1 9073672806863790080 +9075404705968840704 -17 -17 22289 22289 712816880 1 9075404705968840704 +9078604269481148416 90 90 -8309 -8309 -298221893 1 9078604269481148416 +908 -73 -73 -9102 -9102 266601601 1 908 +9083076230151864320 126 126 -23667 -23667 2111462911 1 9083076230151864320 +9083704659251798016 57 57 1280 1280 -1359838019 1 9083704659251798016 +9084402694981533696 52 52 28570 28570 NULL 0 9084402694981533696 +9085381906890203136 71 71 -11066 -11066 -240529113 1 9085381906890203136 +9085434340468473856 -1 -1 -14551 -14551 76381404 1 9085434340468473856 +9086905513121890304 -126 -126 -4808 -4808 1796013407 1 9086905513121890304 +9089435102788009984 11 11 -21274 -21274 2102440065 1 9089435102788009984 +9091082386452684800 70 70 -25463 -25463 748185058 1 9091082386452684800 +9091085792947666944 64 64 22618 22618 254921167 1 9091085792947666944 +9094945190752903168 -19 -19 -32480 -32480 2126491387 1 9094945190752903168 +9096395849845194752 -122 -122 25038 25038 100270148 1 9096395849845194752 +91 -21 -21 15628 15628 -1288198020 1 91 +9104574294205636608 -20 -20 -20834 -20834 1257621270 1 9104574294205636608 +9107991000536498176 30 30 10615 10615 -847235873 1 9107991000536498176 +9112400579327483904 -65 -65 17073 17073 1111985530 1 9112400579327483904 +9114850402293882880 107 107 -23153 -23153 1571267481 1 9114850402293882880 +9116137265342169088 NULL NULL NULL NULL -236700442 1 9116137265342169088 +9117063974299148288 42 42 29954 29954 -297664578 1 9117063974299148288 +9119046173224370176 -94 -94 -6088 -6088 1604076720 1 9119046173224370176 +9123116008004288512 NULL NULL -1801 -1801 1882932986 1 9123116008004288512 +913 -62 -62 -25077 -25077 1845797092 1 913 +9131533983989358592 4 4 -7178 -7178 -1234163924 1 9131533983989358592 +9132009829414584320 107 107 -2027 -2027 -1856034030 1 9132009829414584320 +9136234417125007360 -71 -71 -21820 -21820 NULL 0 9136234417125007360 +9136548192574529536 44 44 -19926 -19926 1121512594 1 9136548192574529536 +9139805788041134080 -45 -45 -5338 -5338 881396599 1 9139805788041134080 +914 -91 -91 -7300 -7300 -1257859205 1 914 +9148071980848742400 -77 -77 30619 30619 1370723240 1 9148071980848742400 +9149216169284091904 -72 -72 -31033 -31033 -694520014 1 9149216169284091904 +9165199002069458944 -6 -6 312 312 430686478 1 9165199002069458944 +9169248521377374208 86 86 32547 32547 1566958573 1 9169248521377374208 +917 25 25 -15493 -15493 -2076460151 1 917 +9174894805640142848 -94 -94 -30397 -30397 1336842978 1 9174894805640142848 +918 -105 -105 -21292 -21292 1359437295 1 918 +9180098147855769600 111 111 -6349 -6349 1950882901 1 9180098147855769600 +9182828596851990528 -87 -87 21091 21091 -1012329052 1 9182828596851990528 +9185458640237641728 -6 -6 31316 31316 -1011125931 1 9185458640237641728 +9185952983951343616 -68 -68 -14315 -14315 889733679 1 9185952983951343616 +9188173682239275008 50 50 -17236 -17236 -1248781172 1 9188173682239275008 +919 120 120 30166 30166 -357680544 1 919 +9190466190353661952 14 14 18823 18823 1918230406 1 9190466190353661952 +9191943992860327936 22 22 -16940 -16940 -595769210 1 9191943992860327936 +9194388393453060096 -11 -11 -16362 -16362 1002519329 1 9194388393453060096 +9199741683232399360 -125 -125 22704 22704 -1096771844 1 9199741683232399360 +9207107990561972224 122 122 13265 13265 -765190882 1 9207107990561972224 +9207927479837319168 116 116 18354 18354 2066707767 1 9207927479837319168 +9209153648361848832 77 77 2952 2952 471464395 1 9209153648361848832 +921 92 92 -23550 -23550 1238986437 1 921 +9211455920344088576 54 54 -15936 -15936 166320811 1 9211455920344088576 +922 28 28 -16425 -16425 932774185 1 922 +923 -37 -37 20704 20704 -1506324615 1 923 +927 84 84 NULL NULL 1044196568 1 927 +928 -9 -9 -11160 -11160 413090363 1 928 +939 -31 -31 -739 -739 -982238309 1 939 +94 87 87 -5837 -5837 NULL 0 94 +945 -43 -43 27454 27454 219415594 1 945 +947 -85 -85 30237 30237 -896274896 1 947 +950 37 45 -13601 -7230 -3606362766 2 950 +958 46 46 -4910 -4910 NULL 0 958 +961 -27 -27 10473 10473 1805139501 1 961 +965 125 125 26292 26292 1336951982 1 965 +967 -57 -57 11843 11843 -1240208945 1 967 +976 72 72 7058 7058 -1563676282 1 976 +979 123 123 -9798 -9798 1022214896 1 979 +982 -98 -98 -18140 -18140 -835198551 1 982 +987 NULL NULL -19159 -19159 1807877618 1 987 +997 -14 -14 15342 15342 -742707249 1 997 +999 107 107 11159 11159 -346607939 1 999 +NULL 127 -1065 -32371 32563 -9784926725 80 NULL diff --git ql/src/test/results/clientpositive/vector_groupby7.q.out ql/src/test/results/clientpositive/vector_groupby7.q.out new file mode 100644 index 0000000..00a99d6 --- /dev/null +++ ql/src/test/results/clientpositive/vector_groupby7.q.out @@ -0,0 +1,2022 @@ +PREHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: -- SORT_QUERY_RESULTS + +create table vectortab2k( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' +STORED AS TEXTFILE +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@vectortab2k +POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/vectortab2k' OVERWRITE INTO TABLE vectortab2k +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@vectortab2k +PREHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: create table vectortab2korc( + t tinyint, + si smallint, + i int, + b bigint, + f float, + d double, + dc decimal(38,18), + bo boolean, + s string, + s2 string, + ts timestamp, + ts2 timestamp, + dt date) +STORED AS ORC +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@vectortab2korc +PREHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2k +PREHOOK: Output: default@vectortab2korc +POSTHOOK: query: INSERT INTO TABLE vectortab2korc SELECT * FROM vectortab2k +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2k +POSTHOOK: Output: default@vectortab2korc +POSTHOOK: Lineage: vectortab2korc.b SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:b, type:bigint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.bo SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:bo, type:boolean, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.d SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:d, type:double, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dc SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dc, type:decimal(38,18), comment:null), ] +POSTHOOK: Lineage: vectortab2korc.dt SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:dt, type:date, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.f SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:f, type:float, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.i SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:i, type:int, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.s2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:s2, type:string, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.si SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:si, type:smallint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.t SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:t, type:tinyint, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts, type:timestamp, comment:null), ] +POSTHOOK: Lineage: vectortab2korc.ts2 SIMPLE [(vectortab2k)vectortab2k.FieldSchema(name:ts2, type:timestamp, comment:null), ] +PREHOOK: query: explain +select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +POSTHOOK: query: explain +select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: vectortab2korc + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: b (type: bigint), t (type: tinyint), i (type: int) + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: max(_col1), sum(_col1), count(), sum(_col2), count(_col2), max(_col0) + keys: _col0 (type: bigint) + mode: hash + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6 + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: bigint) + sort order: + + Map-reduce partition columns: _col0 (type: bigint) + Statistics: Num rows: 2000 Data size: 918712 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: tinyint), _col2 (type: bigint), _col3 (type: bigint), _col4 (type: bigint), _col5 (type: bigint), _col6 (type: bigint) + Execution mode: vectorized + Reduce Operator Tree: + Group By Operator + aggregations: max(VALUE._col0), sum(VALUE._col1), count(VALUE._col2), sum(VALUE._col3), count(VALUE._col4), max(VALUE._col5) + keys: KEY._col0 (type: bigint) + mode: mergepartial + outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6 + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 1000 Data size: 459356 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +PREHOOK: type: QUERY +PREHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +POSTHOOK: query: select b, max(t), sum(t), count(*), sum(i), count(i), max(b) from vectortab2korc group by b +POSTHOOK: type: QUERY +POSTHOOK: Input: default@vectortab2korc +#### A masked pattern was here #### +-6917607783359897600 36 36 1 -603273425 1 -6917607783359897600 +-6919476845891313664 124 124 1 710856472 1 -6919476845891313664 +-6920172215209426944 115 115 1 -764412063 1 -6920172215209426944 +-6921654334727036928 52 52 1 -1066775085 1 -6921654334727036928 +-6933565857643814912 -80 -80 1 581259902 1 -6933565857643814912 +-6934304742087655424 77 77 1 955171928 1 -6934304742087655424 +-6935038507792801792 55 55 1 174310705 1 -6935038507792801792 +-6935548339131138048 -85 -85 1 -1062159435 1 -6935548339131138048 +-6938706403992854528 -102 -102 1 980732494 1 -6938706403992854528 +-6941777546186579968 NULL NULL 1 121663320 1 -6941777546186579968 +-6947955278050181120 -63 -63 1 641695802 1 -6947955278050181120 +-6951350560260784128 -6 -6 1 1342923026 1 -6951350560260784128 +-6957946688477274112 -96 -96 1 1505168716 1 -6957946688477274112 +-6960947572095770624 -15 -15 1 1136976809 1 -6960947572095770624 +-6962271229404348416 -103 -103 1 1106995930 1 -6962271229404348416 +-6962292590214234112 -53 -53 1 -1147471772 1 -6962292590214234112 +-6968771079156654080 -7 -7 1 -939348081 1 -6968771079156654080 +-6968892545529896960 126 126 1 470993066 1 -6968892545529896960 +-6970396058557005824 81 81 1 2140632003 1 -6970396058557005824 +-6974654664348033024 -61 -61 1 -968377273 1 -6974654664348033024 +-6975459232300236800 -88 -88 1 1151752586 1 -6975459232300236800 +-6986178228432322560 60 60 1 -1369253050 1 -6986178228432322560 +-6988811476286873600 -53 -53 1 -1968097621 1 -6988811476286873600 +-6988970700649168896 -68 -68 1 -1230459100 1 -6988970700649168896 +-6992217501957169152 -32 -32 1 1472487454 1 -6992217501957169152 +-6997233584896229376 -118 -118 1 -76654979 1 -6997233584896229376 +-7000925438663041024 -115 -115 1 596045726 1 -7000925438663041024 +-7003696402314215424 -21 -21 1 -1458382451 1 -7003696402314215424 +-7011425384222244864 73 73 1 NULL 0 -7011425384222244864 +-7017212700635545600 115 115 1 304860245 1 -7017212700635545600 +-7020852530219171840 -104 -104 1 824836988 1 -7020852530219171840 +-7030489936116252672 58 58 1 1115197541 1 -7030489936116252672 +-7035132060308643840 -80 -80 1 NULL 0 -7035132060308643840 +-7036607470351654912 102 102 1 -1933192293 1 -7036607470351654912 +-7037375807670501376 20 20 1 -1168823523 1 -7037375807670501376 +-7037638331316469760 -104 -104 1 14573904 1 -7037638331316469760 +-7038455462786334720 74 74 1 524317972 1 -7038455462786334720 +-7040248820505149440 -82 -82 1 196581473 1 -7040248820505149440 +-7041362811802148864 -94 -94 1 -455114104 1 -7041362811802148864 +-7042183597114081280 121 121 1 658636280 1 -7042183597114081280 +-7046180371529351168 35 35 1 -117723745 1 -7046180371529351168 +-7049618574399692800 47 47 1 -978892011 1 -7049618574399692800 +-7052619594823221248 -46 -46 1 -1117358187 1 -7052619594823221248 +-7055619148037554176 22 22 1 -838656526 1 -7055619148037554176 +-7055760785575665664 53 53 1 759899363 1 -7055760785575665664 +-7057750467944931328 -26 -26 1 -71449585 1 -7057750467944931328 +-7058986555327307776 34 34 1 1942004879 1 -7058986555327307776 +-7063777488249085952 112 112 1 -507250351 1 -7063777488249085952 +-7078068944081002496 -101 -101 1 2013178181 1 -7078068944081002496 +-7079898537463537664 122 122 1 -1205034356 1 -7079898537463537664 +-7081500255163727872 52 52 1 -1969751342 1 -7081500255163727872 +-7083646746411720704 -24 -24 1 780938234 1 -7083646746411720704 +-7085247548404178944 -84 -84 1 1640192895 1 -7085247548404178944 +-7093825013581979648 NULL NULL 1 -628790799 1 -7093825013581979648 +-7094189393339678720 -91 -91 1 1796486238 1 -7094189393339678720 +-7094827141662539776 -42 -42 1 -632803945 1 -7094827141662539776 +-7104310188119834624 -69 -69 1 -1928197479 1 -7104310188119834624 +-7106210529681350656 -91 -91 1 1718167702 1 -7106210529681350656 +-7109790267244814336 22 22 1 -291577538 1 -7109790267244814336 +-7115054815375073280 -88 -88 1 NULL 0 -7115054815375073280 +-7120456708338688000 117 117 1 1751468853 1 -7120456708338688000 +-7127548949860818944 -28 -28 1 260463232 1 -7127548949860818944 +-7138415011665043456 111 111 1 -1345391395 1 -7138415011665043456 +-7139677575412686848 -85 -85 1 -1556127172 1 -7139677575412686848 +-7140008543769042944 69 69 1 -1938290238 1 -7140008543769042944 +-7144791190333546496 -37 -37 1 -876122064 1 -7144791190333546496 +-7145585429014888448 26 26 1 -817093900 1 -7145585429014888448 +-7147490721376591872 25 25 1 1759741857 1 -7147490721376591872 +-7152177800841502720 -79 -79 1 -37773326 1 -7152177800841502720 +-7155539549555105792 -86 -86 1 -345542922 1 -7155539549555105792 +-7158472098920390656 -127 -127 1 -71305062 1 -7158472098920390656 +-7159700138947862528 5 5 1 -76430653 1 -7159700138947862528 +-7161165959057334272 56 56 1 1352649032 1 -7161165959057334272 +-7162299524557471744 84 84 1 1813010930 1 -7162299524557471744 +-7172594404186693632 -105 -105 1 -1949359208 1 -7172594404186693632 +-7185369278665605120 73 73 1 -374337252 1 -7185369278665605120 +-7192529627893858304 -34 -34 1 -45439614 1 -7192529627893858304 +-7194281951646187520 8 8 1 -797889292 1 -7194281951646187520 +-7195217207163166720 85 85 1 -1977762695 1 -7195217207163166720 +-7198372044947275776 -101 -101 1 -1424770359 1 -7198372044947275776 +-7199983995864711168 69 69 1 -1870912732 1 -7199983995864711168 +-7201085131997011968 67 67 1 -1356601829 1 -7201085131997011968 +-7209060152494817280 NULL NULL 1 -2071851852 1 -7209060152494817280 +-7213775605408178176 -33 -33 1 1222935237 1 -7213775605408178176 +-7220731681653604352 29 29 1 -851663638 1 -7220731681653604352 +-7221474017515347968 -75 -75 1 -1421860505 1 -7221474017515347968 +-7228589258642194432 -73 -73 1 1958701268 1 -7228589258642194432 +-7240213957902663680 33 33 1 -841634659 1 -7240213957902663680 +-7242345057866285056 54 54 1 548375173 1 -7242345057866285056 +-7245872320493322240 -102 -102 1 -134686276 1 -7245872320493322240 +-7246123871306244096 -108 -108 1 1686537335 1 -7246123871306244096 +-7255010240787030016 18 18 1 1373871781 1 -7255010240787030016 +-7255686273677328384 45 45 1 2100839074 1 -7255686273677328384 +-7262049693594943488 79 79 1 1295073553 1 -7262049693594943488 +-7262384251828518912 109 109 1 1647411522 1 -7262384251828518912 +-7262798781688651776 9 9 1 -423190290 1 -7262798781688651776 +-7263060340185194496 10 10 1 1590744669 1 -7263060340185194496 +-7265998318110711808 8 8 1 1437057145 1 -7265998318110711808 +-7266719102957125632 42 42 1 960187615 1 -7266719102957125632 +-7270034223527993344 NULL NULL 1 -1984079412 1 -7270034223527993344 +-7273590251991162880 84 84 1 994798486 1 -7273590251991162880 +-7273694358642851840 76 76 1 2009890220 1 -7273694358642851840 +-7276111129363046400 126 126 1 -1462604138 1 -7276111129363046400 +-7287583262310350848 36 36 1 -1108723753 1 -7287583262310350848 +-7292078334519894016 -28 -28 1 -785261879 1 -7292078334519894016 +-7296096276653391872 -6 -6 1 160290374 1 -7296096276653391872 +-7303847963918393344 -78 -78 1 -1769423338 1 -7303847963918393344 +-7319315187617587200 -54 -54 1 -235238928 1 -7319315187617587200 +-7326863346317598720 49 49 1 958866509 1 -7326863346317598720 +-7328087811698909184 -54 -54 1 -1017629298 1 -7328087811698909184 +-7329767178250018816 -8 -8 1 -448060992 1 -7329767178250018816 +-7329807949048193024 -69 -69 1 -369183838 1 -7329807949048193024 +-7330203470474985472 54 54 1 -1065248998 1 -7330203470474985472 +-7330413050756235264 -31 -31 1 -2024003241 1 -7330413050756235264 +-7333278178640953344 74 74 1 1393506704 1 -7333278178640953344 +-7333362172439035904 25 25 1 -835002549 1 -7333362172439035904 +-7340231535789727744 29 29 1 526502851 1 -7340231535789727744 +-7344146703223496704 -26 -26 1 789871166 1 -7344146703223496704 +-7344947507044466688 -77 -77 1 -340951385 1 -7344947507044466688 +-7345562788132315136 -6 -6 1 1750433588 1 -7345562788132315136 +-7356685674003021824 118 118 1 1319589591 1 -7356685674003021824 +-7357888618985873408 0 0 1 NULL 0 -7357888618985873408 +-7362189611124563968 -57 -57 1 -496915240 1 -7362189611124563968 +-7366430883634929664 -32 -32 1 1592153312 1 -7366430883634929664 +-7378096180613840896 37 37 1 218917585 1 -7378096180613840896 +-7380731416973295616 -94 -94 1 -1114208576 1 -7380731416973295616 +-7395343938785738752 96 96 1 830944953 1 -7395343938785738752 +-7395553021620731904 18 18 1 1056997296 1 -7395553021620731904 +-7399631791131074560 92 92 1 -932921363 1 -7399631791131074560 +-7404052043914526720 -10 -10 1 -1349876582 1 -7404052043914526720 +-7404057145074712576 55 55 1 56316391 1 -7404057145074712576 +-7409317158045442048 NULL NULL 1 -1463884101 1 -7409317158045442048 +-7409653086454030336 77 77 1 -624029057 1 -7409653086454030336 +-7412431471807283200 113 113 1 622925063 1 -7412431471807283200 +-7413317118463164416 -12 -12 1 -507015439 1 -7413317118463164416 +-7419068456205385728 112 112 1 -4393552 1 -7419068456205385728 +-7420448501073051648 -8 -8 1 -1155174991 1 -7420448501073051648 +-7425160895830573056 -98 -98 1 -765102534 1 -7425160895830573056 +-7429331808102899712 96 96 1 -1057522129 1 -7429331808102899712 +-7433265617153343488 -69 -69 1 NULL 0 -7433265617153343488 +-7442593976514420736 -19 -19 1 1851805558 1 -7442593976514420736 +-7444070205513138176 -28 -28 1 -520725912 1 -7444070205513138176 +-7451660755269853184 97 97 1 1338047392 1 -7451660755269853184 +-7453525026342617088 -122 -122 1 1505665168 1 -7453525026342617088 +-7455898404374921216 17 17 1 1544482684 1 -7455898404374921216 +-7456869587112255488 NULL NULL 1 -224865887 1 -7456869587112255488 +-7461750143936897024 -70 -70 1 -1343425152 1 -7461750143936897024 +-7464270453557993472 116 116 1 -1439293109 1 -7464270453557993472 +-7469660864676585472 -40 -40 1 85774760 1 -7469660864676585472 +-7470307155642245120 -95 -95 1 1137950964 1 -7470307155642245120 +-7476082621253402624 -29 -29 1 1083855659 1 -7476082621253402624 +-7483435388852559872 85 85 1 -914329027 1 -7483435388852559872 +-7488345684795342848 123 123 1 -1668736016 1 -7488345684795342848 +-7488415863027367936 35 35 1 1286367391 1 -7488415863027367936 +-7494411162675691520 -46 -46 1 1595326878 1 -7494411162675691520 +-7496839341561954304 -92 -92 1 868714547 1 -7496839341561954304 +-7497303453253402624 66 66 1 1415647436 1 -7497303453253402624 +-7500200359698907136 -2 -2 1 -423074450 1 -7500200359698907136 +-7501803640821456896 -2 -2 1 1809795770 1 -7501803640821456896 +-7506254246954500096 94 94 1 -511198293 1 -7506254246954500096 +-7507424948896415744 37 37 1 -828522499 1 -7507424948896415744 +-7507578199583694848 2 2 1 -1784633305 1 -7507578199583694848 +-7510418793070075904 -35 -35 1 975932228 1 -7510418793070075904 +-7511202710200885248 -84 -84 1 -2042647152 1 -7511202710200885248 +-7511952204985049088 105 105 1 -1351437382 1 -7511952204985049088 +-7512289590991544320 -85 -85 1 1409872356 1 -7512289590991544320 +-7512297136103800832 -36 -36 1 -1180153422 1 -7512297136103800832 +-7515996202498473984 -17 -17 1 344989592 1 -7515996202498473984 +-7524170566881329152 98 98 1 -1908696083 1 -7524170566881329152 +-7526793959592140800 48 48 1 -570632618 1 -7526793959592140800 +-7528526815026692096 NULL NULL 1 2125479431 1 -7528526815026692096 +-7532751268425261056 100 100 1 1752520642 1 -7532751268425261056 +-7535857766791577600 -34 -34 1 1846184880 1 -7535857766791577600 +-7535958203887706112 NULL NULL 1 656636097 1 -7535958203887706112 +-7536330682873937920 -87 -87 1 -1289501869 1 -7536330682873937920 +-7540104552219860992 -22 -22 1 1081187102 1 -7540104552219860992 +-7541860097718902784 -61 -61 1 -625788713 1 -7541860097718902784 +-7542857121910046720 79 79 1 1495575878 1 -7542857121910046720 +-7547245548870025216 75 75 1 1784291853 1 -7547245548870025216 +-7547432761381339136 90 90 1 434679307 1 -7547432761381339136 +-7551394356730339328 22 22 1 1179528290 1 -7551394356730339328 +-7557017910095650816 38 38 1 195281533 1 -7557017910095650816 +-7558524160894427136 35 35 1 375106978 1 -7558524160894427136 +-7571293705217687552 -89 -89 1 1240875512 1 -7571293705217687552 +-7571957778022178816 -43 -43 1 1042184256 1 -7571957778022178816 +-7572262898020278272 -59 -59 1 -1875699183 1 -7572262898020278272 +-7572962089372991488 5 5 1 -841268868 1 -7572962089372991488 +-7576194692683563008 -115 -115 1 2080249726 1 -7576194692683563008 +-7593363318079610880 -56 -56 1 -1811563127 1 -7593363318079610880 +-7594824008626372608 -57 -57 1 824743780 1 -7594824008626372608 +-7598782894648565760 90 90 1 -983874694 1 -7598782894648565760 +-7600138468036386816 53 53 1 -722294882 1 -7600138468036386816 +-7603467428164009984 0 0 1 -619311578 1 -7603467428164009984 +-7603569103205916672 -100 -100 1 390124976 1 -7603569103205916672 +-7610137349734883328 -46 -46 1 683320224 1 -7610137349734883328 +-7611584069753552896 -42 -42 1 -1765795567 1 -7611584069753552896 +-7612455481940246528 -92 -92 1 NULL 0 -7612455481940246528 +-7612466483992051712 29 29 1 -1969235238 1 -7612466483992051712 +-7616522969329262592 58 58 1 1924741890 1 -7616522969329262592 +-7617860842651017216 -101 -101 1 386741352 1 -7617860842651017216 +-7623047151287754752 -66 -66 1 -1050029724 1 -7623047151287754752 +-7623359796281999360 51 51 1 1829544791 1 -7623359796281999360 +-7623405558242500608 -103 -103 1 283322761 1 -7623405558242500608 +-7624057992767782912 -109 -109 1 -1218581850 1 -7624057992767782912 +-7629401308029976576 -17 -17 1 -1655030261 1 -7629401308029976576 +-7637494527844343808 52 52 1 2005560498 1 -7637494527844343808 +-7637755520917741568 -127 -127 1 648935848 1 -7637755520917741568 +-7642381493746483200 -72 -72 1 583458404 1 -7642381493746483200 +-7647020450676146176 76 76 1 609917172 1 -7647020450676146176 +-7661192563533062144 -21 -21 1 -1319753324 1 -7661192563533062144 +-7661250850555633664 -106 -106 1 -693249555 1 -7661250850555633664 +-7663293054873812992 -56 -56 1 -1478812842 1 -7663293054873812992 +-7665186441284968448 NULL NULL 1 791096295 1 -7665186441284968448 +-7668388017287020544 2 2 1 NULL 0 -7668388017287020544 +-7669169138124275712 57 57 1 -1484033125 1 -7669169138124275712 +-7673901622181953536 -16 -16 1 1141303816 1 -7673901622181953536 +-7679894005808693248 -67 -67 1 -306214368 1 -7679894005808693248 +-7686220526274502656 -51 -51 1 -892839693 1 -7686220526274502656 +-7687052294777208832 52 52 1 -1989778424 1 -7687052294777208832 +-7692192232238678016 90 90 1 745725681 1 -7692192232238678016 +-7695491171376291840 -122 -122 1 1225312439 1 -7695491171376291840 +-7700203302632210432 13 13 1 1805308672 1 -7700203302632210432 +-7703540456272994304 127 127 1 1312270193 1 -7703540456272994304 +-7707242953271500800 -34 -34 1 1568180994 1 -7707242953271500800 +-7707867749256445952 -98 -98 1 -596963345 1 -7707867749256445952 +-7708932208121225216 74 74 1 307333276 1 -7708932208121225216 +-7709958788604936192 -104 -104 1 595836061 1 -7709958788604936192 +-7712425776235274240 115 115 1 -1432316859 1 -7712425776235274240 +-7720966287634112512 -28 -28 1 NULL 0 -7720966287634112512 +-7739424919198187520 -90 -90 1 712625264 1 -7739424919198187520 +-7744462446680375296 -31 -31 1 2029657999 1 -7744462446680375296 +-7751265769984491520 74 74 1 700341242 1 -7751265769984491520 +-7751427073017544704 -79 -79 1 615619268 1 -7751427073017544704 +-7753051494275432448 -2 -2 1 -1599905147 1 -7753051494275432448 +-7759238919361888256 -122 -122 1 -2065287410 1 -7759238919361888256 +-7759425383684849664 46 46 1 -938762477 1 -7759425383684849664 +-7772064021830574080 -42 -42 1 -1201785350 1 -7772064021830574080 +-7773957003968675840 48 48 1 270090617 1 -7773957003968675840 +-7777884099756122112 -93 -93 1 914583645 1 -7777884099756122112 +-7778829032042790912 18 18 1 -807242371 1 -7778829032042790912 +-7779270198785875968 83 83 1 -1242677422 1 -7779270198785875968 +-7782344916178796544 92 92 1 -1213081886 1 -7782344916178796544 +-7784419454650843136 54 54 1 -1210907929 1 -7784419454650843136 +-7792903881635938304 -76 -76 1 -191899537 1 -7792903881635938304 +-7793447076762345472 56 56 1 1196151988 1 -7793447076762345472 +-7797149520019062784 6 6 1 -1262842192 1 -7797149520019062784 +-7797151404935618560 123 123 1 -507955215 1 -7797151404935618560 +-7800879252150779904 108 108 1 1352739140 1 -7800879252150779904 +-7802538500225777664 -11 -11 1 215759857 1 -7802538500225777664 +-7804116532814151680 -109 -109 1 -1146649990 1 -7804116532814151680 +-7805985795815342080 9 9 1 -2076886223 1 -7805985795815342080 +-7811060170911375360 -2 -2 1 1513689502 1 -7811060170911375360 +-7818454479651135488 79 79 1 -559270035 1 -7818454479651135488 +-7819437864839495680 118 118 1 -370093295 1 -7819437864839495680 +-7822452149325094912 69 69 1 60847311 1 -7822452149325094912 +-7824788571789279232 -105 -105 1 -1406691044 1 -7824788571789279232 +-7827420207675105280 -97 -97 1 -36682325 1 -7827420207675105280 +-7831320202242228224 -32 -32 1 -1726479726 1 -7831320202242228224 +-7831595638727565312 29 29 1 1626884085 1 -7831595638727565312 +-7833618000492109824 92 92 1 589546540 1 -7833618000492109824 +-7835907977757245440 4 4 1 -87470856 1 -7835907977757245440 +-7838598833900584960 95 95 1 1028204648 1 -7838598833900584960 +-7840338174858199040 66 66 1 -300717684 1 -7840338174858199040 +-7845896959112658944 78 78 1 -1688105985 1 -7845896959112658944 +-7848043121524228096 101 101 1 1667594394 1 -7848043121524228096 +-7849504559236210688 110 110 1 -2052386812 1 -7849504559236210688 +-7858505678035951616 34 34 1 NULL 0 -7858505678035951616 +-7866079955473989632 96 96 1 196980893 1 -7866079955473989632 +-7867219225874571264 NULL NULL 1 -1078579367 1 -7867219225874571264 +-7868306678534193152 103 103 1 -2144138362 1 -7868306678534193152 +-7873753603299540992 93 93 1 -971698865 1 -7873753603299540992 +-7875953567586451456 -99 -99 1 816439627 1 -7875953567586451456 +-7877598807023386624 -48 -48 1 340384179 1 -7877598807023386624 +-7878145001776152576 -25 -25 1 -1489628668 1 -7878145001776152576 +-7879864376629567488 93 93 1 -472303419 1 -7879864376629567488 +-7881262505761710080 51 51 1 -103219371 1 -7881262505761710080 +-7881351200983613440 14 14 1 720703232 1 -7881351200983613440 +-7883252982752665600 -75 -75 1 1136548971 1 -7883252982752665600 +-7884460946615984128 127 127 1 1772349172 1 -7884460946615984128 +-7888051992910274560 89 89 1 1818213677 1 -7888051992910274560 +-7892780594910871552 119 119 1 -779743333 1 -7892780594910871552 +-7893577088764174336 -71 -71 1 268888160 1 -7893577088764174336 +-7894382303337832448 -66 -66 1 1832650234 1 -7894382303337832448 +-7895991410072928256 72 72 1 1467284000 1 -7895991410072928256 +-7902517224300036096 74 74 1 -950738312 1 -7902517224300036096 +-7903158849011843072 21 21 1 -217930632 1 -7903158849011843072 +-7904188195431661568 49 49 1 -442839889 1 -7904188195431661568 +-7907355742053883904 102 102 1 794783516 1 -7907355742053883904 +-7910019233726242816 96 96 1 -1259611508 1 -7910019233726242816 +-7911421221625077760 48 48 1 476704350 1 -7911421221625077760 +-7915999634274369536 -72 -72 1 1814570016 1 -7915999634274369536 +-7916510129632296960 26 26 1 -2136052026 1 -7916510129632296960 +-7928062266382778368 -54 -54 1 152654715 1 -7928062266382778368 +-7928440849566146560 -99 -99 1 -800975421 1 -7928440849566146560 +-7939634346485858304 -79 -79 1 1012843193 1 -7939634346485858304 +-7949309059286163456 -57 -57 1 88774647 1 -7949309059286163456 +-7949445503604604928 -87 -87 1 1695098246 1 -7949445503604604928 +-7953426740065312768 -11 -11 1 22308780 1 -7953426740065312768 +-7964801953178091520 -116 -116 1 661659208 1 -7964801953178091520 +-7966960765508280320 60 60 1 -884109192 1 -7966960765508280320 +-7978782649203228672 89 89 1 491016124 1 -7978782649203228672 +-7989766326847807488 -2 -2 1 -1731820254 1 -7989766326847807488 +-7998947380180819968 110 110 1 -136514115 1 -7998947380180819968 +-8007017894942638080 31 31 1 1219616145 1 -8007017894942638080 +-8013397854633648128 -98 -98 1 -1391183008 1 -8013397854633648128 +-8016589197379289088 -48 -48 1 -1721763321 1 -8016589197379289088 +-8017791189288869888 -101 -101 1 -2057666812 1 -8017791189288869888 +-8018511948141748224 NULL NULL 1 661380540 1 -8018511948141748224 +-8021859935185928192 -61 -61 1 1420099773 1 -8021859935185928192 +-8022573309127000064 -96 -96 1 1194243726 1 -8022573309127000064 +-8023708819947323392 35 35 1 198539698 1 -8023708819947323392 +-8028275725610909696 72 72 1 -1937640350 1 -8028275725610909696 +-8028910243475038208 -87 -87 1 873035819 1 -8028910243475038208 +-8030058711611629568 -99 -99 1 -752222556 1 -8030058711611629568 +-8034414142083170304 4 4 1 -267130580 1 -8034414142083170304 +-8046189486447017984 96 96 1 925032386 1 -8046189486447017984 +-8046238369820344320 -69 -69 1 819069589 1 -8046238369820344320 +-8047774491688255488 49 49 1 -1339495001 1 -8047774491688255488 +-8051395538179063808 NULL NULL 1 -469749219 1 -8051395538179063808 +-8051587217208967168 78 78 1 51376784 1 -8051587217208967168 +-8051871680800120832 -94 -94 1 NULL 0 -8051871680800120832 +-8054581198284668928 -6 -6 1 1395450272 1 -8054581198284668928 +-8067243114610532352 68 68 1 214068706 1 -8067243114610532352 +-8070535484085895168 45 45 1 829101712 1 -8070535484085895168 +-8076479329071955968 119 119 1 2017314998 1 -8076479329071955968 +-8082793390939193344 88 88 1 -1878838836 1 -8082793390939193344 +-8084716955963252736 64 64 1 -1609864597 1 -8084716955963252736 +-8086577583338061824 -33 -33 1 -340462064 1 -8086577583338061824 +-8088337436168830976 8 8 1 2124297747 1 -8088337436168830976 +-8099313480512716800 -103 -103 1 -392713245 1 -8099313480512716800 +-8103788088118018048 -106 -106 1 -533227056 1 -8103788088118018048 +-8104684579106914304 19 19 1 -1091003492 1 -8104684579106914304 +-8108693586698706944 118 118 1 -896261100 1 -8108693586698706944 +-8115963579415650304 NULL NULL 1 -951728053 1 -8115963579415650304 +-8117838333114212352 -18 -18 1 -1642207005 1 -8117838333114212352 +-8122639684164501504 -82 -82 1 1425456189 1 -8122639684164501504 +-8127494999848919040 -30 -30 1 1701817607 1 -8127494999848919040 +-8131997716860526592 91 91 1 -457341338 1 -8131997716860526592 +-8136227554401107968 14 14 1 127917714 1 -8136227554401107968 +-8140349174954893312 -38 -38 1 NULL 0 -8140349174954893312 +-8142667274351345664 -113 -113 1 453613037 1 -8142667274351345664 +-8147405381260345344 14 14 1 659397992 1 -8147405381260345344 +-8158011642485825536 NULL NULL 1 NULL 0 -8158011642485825536 +-8161047750470279168 106 106 1 -621365995 1 -8161047750470279168 +-8172827216441573376 83 83 1 -113253627 1 -8172827216441573376 +-8182421179156905984 25 25 1 -1892816721 1 -8182421179156905984 +-8191825921746305024 -82 -82 1 703111607 1 -8191825921746305024 +-8194062064124362752 -96 -96 1 1482983157 1 -8194062064124362752 +-8203008052020879360 -68 -68 1 -1127100849 1 -8203008052020879360 +-8203075743525806080 93 93 1 -626484313 1 -8203075743525806080 +-8205148279289085952 -12 -12 1 768198315 1 -8205148279289085952 +-8214462866994339840 109 109 1 NULL 0 -8214462866994339840 +-8219876839318716416 -44 -44 1 1452244326 1 -8219876839318716416 +-8232763638546694144 -122 -122 1 -514010922 1 -8232763638546694144 +-8240034910581153792 56 56 1 -665623523 1 -8240034910581153792 +-8240684139569233920 18 18 1 -1721368386 1 -8240684139569233920 +-8243487285852766208 29 29 1 1153811197 1 -8243487285852766208 +-8244116388227104768 38 38 1 1893512909 1 -8244116388227104768 +-8244657976255889408 -115 -115 1 688547276 1 -8244657976255889408 +-8260340354454503424 82 82 1 1456367662 1 -8260340354454503424 +-8269917980278980608 -117 -117 1 -1700451326 1 -8269917980278980608 +-8270479187688816640 -70 -70 1 1519993904 1 -8270479187688816640 +-8275337702906757120 78 78 1 210003006 1 -8275337702906757120 +-8280276629934981120 -35 -35 1 -588160623 1 -8280276629934981120 +-8293833565967810560 21 21 1 -1464514590 1 -8293833565967810560 +-8297230235506343936 102 102 1 283618733 1 -8297230235506343936 +-8300526097982226432 120 120 1 1314531900 1 -8300526097982226432 +-8300764106868350976 -45 -45 1 -1196101029 1 -8300764106868350976 +-8302817097848307712 -127 -127 1 -1021859098 1 -8302817097848307712 +-8317591428117274624 96 96 1 -670925379 1 -8317591428117274624 +-8318886086186213376 -124 -124 1 1033609549 1 -8318886086186213376 +-8322751250650218496 -107 -107 1 -1212524805 1 -8322751250650218496 +-8330233444291084288 62 62 1 -409404534 1 -8330233444291084288 +-8335810316927213568 45 45 1 -1562552002 1 -8335810316927213568 +-8340523561480437760 120 120 1 39723411 1 -8340523561480437760 +-8345065519816695808 9 9 1 654939016 1 -8345065519816695808 +-8347088645602050048 127 127 1 76299337 1 -8347088645602050048 +-8357136656913686528 107 107 1 1517915751 1 -8357136656913686528 +-8358130693961195520 -14 -14 1 -122391516 1 -8358130693961195520 +-8359839265974165504 62 62 1 1572563948 1 -8359839265974165504 +-8368269352975982592 77 77 1 NULL 0 -8368269352975982592 +-8368487814665895936 -66 -66 1 156101201 1 -8368487814665895936 +-8369487968903897088 52 52 1 -194270271 1 -8369487968903897088 +-8379109122834997248 -28 -28 1 1566607834 1 -8379109122834997248 +-8379964450833367040 9 9 1 -181122344 1 -8379964450833367040 +-8384695077413412864 -104 -104 1 -1818456584 1 -8384695077413412864 +-8387347109404286976 2 2 1 -2011708220 1 -8387347109404286976 +-8387536830476820480 -103 -103 1 -1703620970 1 -8387536830476820480 +-8395998375405912064 38 38 1 -1141801925 1 -8395998375405912064 +-8400045653258444800 -117 -117 1 1523657918 1 -8400045653258444800 +-8411282676082565120 61 61 1 253621570 1 -8411282676082565120 +-8418913260807217152 96 96 1 -41864614 1 -8418913260807217152 +-8425998949410889728 -62 -62 1 -656478771 1 -8425998949410889728 +-8426531414463545344 8 8 1 1701761102 1 -8426531414463545344 +-8430283518005846016 NULL NULL 1 -16094879 1 -8430283518005846016 +-8430370933326536704 -64 -64 1 NULL 0 -8430370933326536704 +-8431492599012163584 123 123 1 -1131684944 1 -8431492599012163584 +-8438554249514491904 NULL NULL 1 232405034 1 -8438554249514491904 +-8445801063348281344 27 27 1 -1247325089 1 -8445801063348281344 +-8453491903284994048 -26 -26 1 1524010024 1 -8453491903284994048 +-8454143651040444416 27 27 1 516479816 1 -8454143651040444416 +-8465978403747037184 33 33 1 1347876055 1 -8465978403747037184 +-8469607298426437632 94 94 1 374283948 1 -8469607298426437632 +-8471480409335513088 102 102 1 1891680787 1 -8471480409335513088 +-8485389240529354752 -36 -36 1 -1528033060 1 -8485389240529354752 +-8488247955875618816 33 33 1 1802498539 1 -8488247955875618816 +-8490382417169408000 92 92 1 987917448 1 -8490382417169408000 +-8494118409594650624 28 28 1 631207613 1 -8494118409594650624 +-8503342882470019072 -9 -9 1 1367179645 1 -8503342882470019072 +-8503573595507761152 47 47 1 2068018858 1 -8503573595507761152 +-8507279516485566464 -119 -119 1 631711489 1 -8507279516485566464 +-8509547439040757760 44 44 1 -1749415887 1 -8509547439040757760 +-8518060755719585792 -23 -23 1 -1100641049 1 -8518060755719585792 +-8518258741831680000 -40 -40 1 -809805200 1 -8518258741831680000 +-8521578237232529408 -57 -57 1 -373034494 1 -8521578237232529408 +-8522878384019169280 NULL NULL 1 633813435 1 -8522878384019169280 +-8523434203900674048 -19 -19 1 -590374062 1 -8523434203900674048 +-8525212657458348032 NULL NULL 1 -1280919769 1 -8525212657458348032 +-8535957064499879936 -73 -73 1 -99205196 1 -8535957064499879936 +-8536369662934401024 -48 -48 1 447426619 1 -8536369662934401024 +-8543982423727128576 76 76 1 -607667405 1 -8543982423727128576 +-8544299740525461504 -1 -1 1 -846450672 1 -8544299740525461504 +-8545239748068941824 NULL NULL 1 -897586947 1 -8545239748068941824 +-8546758906409312256 -28 -28 1 -1236536142 1 -8546758906409312256 +-8552393882631389184 NULL NULL 1 1920863389 1 -8552393882631389184 +-8555709701170552832 -99 -99 1 -1364322216 1 -8555709701170552832 +-8559008501282832384 -127 -127 1 895945459 1 -8559008501282832384 +-8559252110266564608 44 44 1 259204652 1 -8559252110266564608 +-8562524688907485184 -54 -54 1 1775355987 1 -8562524688907485184 +-8566856504746352640 48 48 1 2018442973 1 -8566856504746352640 +-8566940231897874432 -47 -47 1 -1409508377 1 -8566940231897874432 +-8570933074545745920 125 125 1 -749042352 1 -8570933074545745920 +-8572823448513445888 NULL NULL 1 -101960322 1 -8572823448513445888 +-8572949572756774912 48 48 1 1787826883 1 -8572949572756774912 +-8581765103969312768 -38 -38 1 -890374552 1 -8581765103969312768 +-8581979259158929408 -57 -57 1 -674478103 1 -8581979259158929408 +-8584520406368493568 1 1 1 -19116270 1 -8584520406368493568 +-8585134536083660800 22 22 1 -1196808950 1 -8585134536083660800 +-8585966098173870080 -31 -31 1 318631333 1 -8585966098173870080 +-8593419958317056000 88 88 1 6266567 1 -8593419958317056000 +-8603817012434198528 9 9 1 1114521964 1 -8603817012434198528 +-8604758220106014720 -108 -108 1 -1798573685 1 -8604758220106014720 +-8607195685207408640 74 74 1 -1111937842 1 -8607195685207408640 +-8615168537390571520 -21 -21 1 1469775272 1 -8615168537390571520 +-8619303037130301440 -53 -53 1 -2074079977 1 -8619303037130301440 +-8623238306523824128 -107 -107 1 -1442424087 1 -8623238306523824128 +-8623965248051789824 -34 -34 1 1637295757 1 -8623965248051789824 +-8632237187473088512 -74 -74 1 NULL 0 -8632237187473088512 +-8649711322250362880 5 5 1 -500921094 1 -8649711322250362880 +-8651641150831362048 -52 -52 1 -1533934649 1 -8651641150831362048 +-8654433008222797824 NULL NULL 1 -1728171376 1 -8654433008222797824 +-8654797319350927360 82 82 1 895763504 1 -8654797319350927360 +-8658387566611996672 -15 -15 1 NULL 0 -8658387566611996672 +-8659643752269242368 -18 -18 1 1204834275 1 -8659643752269242368 +-8659692318743314432 -103 -103 1 25400543 1 -8659692318743314432 +-8660149447361404928 -115 -115 1 1317690178 1 -8660149447361404928 +-8664374244449050624 -44 -44 1 1059212450 1 -8664374244449050624 +-8664806103426252800 -81 -81 1 964810954 1 -8664806103426252800 +-8665218198816497664 -7 -7 1 -1031592590 1 -8665218198816497664 +-8665764757143658496 NULL NULL 1 -45460011 1 -8665764757143658496 +-8675661101615489024 -101 -101 1 -1918651448 1 -8675661101615489024 +-8675892979328212992 20 20 1 1478365409 1 -8675892979328212992 +-8683802826440105984 -104 -104 1 -1344287228 1 -8683802826440105984 +-8688153842294595584 NULL NULL 1 -1741895392 1 -8688153842294595584 +-8689606130068611072 -79 -79 1 488559595 1 -8689606130068611072 +-8694818694700048384 41 41 1 94220511 1 -8694818694700048384 +-8696162322976997376 -9 -9 1 1228837108 1 -8696162322976997376 +-8703026916864802816 5 5 1 -397683105 1 -8703026916864802816 +-8704234107608203264 25 25 1 -1318045616 1 -8704234107608203264 +-8705403811649355776 -112 -112 1 206121314 1 -8705403811649355776 +-8710298418608619520 -27 -27 1 -1817938378 1 -8710298418608619520 +-8714995808835444736 19 19 1 206454818 1 -8714995808835444736 +-8719510423723155456 48 48 1 -327648289 1 -8719510423723155456 +-8730803262481580032 71 71 1 NULL 0 -8730803262481580032 +-8731068123910987776 -86 -86 1 -1434562279 1 -8731068123910987776 +-8746702976270385152 26 26 1 1767359228 1 -8746702976270385152 +-8754966081778565120 79 79 1 -125419186 1 -8754966081778565120 +-8754992450211692544 92 92 1 1785455842 1 -8754992450211692544 +-8756989568739835904 -101 -101 1 -158420748 1 -8756989568739835904 +-8760655406971863040 19 19 1 -1249011023 1 -8760655406971863040 +-8763062627136864256 40 40 1 -454598288 1 -8763062627136864256 +-8768744394742235136 -68 -68 1 -726879427 1 -8768744394742235136 +-8782213262837530624 100 100 1 1565313938 1 -8782213262837530624 +-8783777723063099392 -75 -75 1 877053605 1 -8783777723063099392 +-8789178184387641344 -30 -30 1 -1045771991 1 -8789178184387641344 +-8797972842900307968 -3 -3 1 284646137 1 -8797972842900307968 +-8807361476639629312 -44 -44 1 NULL 0 -8807361476639629312 +-8813211231120031744 -68 -68 1 1575300276 1 -8813211231120031744 +-8831091081349758976 40 40 1 -1832606512 1 -8831091081349758976 +-8832750849949892608 20 20 1 -66010816 1 -8832750849949892608 +-8833019327569510400 25 25 1 -189393743 1 -8833019327569510400 +-8835408234247168000 127 127 1 -938112972 1 -8835408234247168000 +-8836899523028312064 114 114 1 397255100 1 -8836899523028312064 +-8843859708698583040 55 55 1 2008211296 1 -8843859708698583040 +-8844949406948671488 -105 -105 1 315973457 1 -8844949406948671488 +-8845239510002753536 97 97 1 -1358159222 1 -8845239510002753536 +-8852770376039219200 -123 -123 1 311478497 1 -8852770376039219200 +-8853553406533894144 NULL NULL 1 -1820436871 1 -8853553406533894144 +-8856151919723003904 58 58 1 -575513309 1 -8856151919723003904 +-8856821118526734336 -41 -41 1 618321042 1 -8856821118526734336 +-8857335871148171264 -28 -28 1 1061043704 1 -8857335871148171264 +-8858063395050110976 28 28 1 -1117019030 1 -8858063395050110976 +-8859107121649893376 -58 -58 1 -37876543 1 -8859107121649893376 +-8866442231663067136 68 68 1 -1079633326 1 -8866442231663067136 +-8870186814744420352 -110 -110 1 NULL 0 -8870186814744420352 +-8870673219965001728 1 1 1 -1620148746 1 -8870673219965001728 +-8875546987176206336 104 104 1 414645489 1 -8875546987176206336 +-8877053610728161280 NULL NULL 1 706823078 1 -8877053610728161280 +-8877431933441327104 63 63 1 1650676897 1 -8877431933441327104 +-8879742387365429248 NULL NULL 1 1912175355 1 -8879742387365429248 +-8881446757271846912 79 79 1 1224662770 1 -8881446757271846912 +-8887058200926093312 3 3 1 -191704948 1 -8887058200926093312 +-8892963883085578240 -115 -115 1 -2087815643 1 -8892963883085578240 +-8896045754034978816 -127 -127 1 1392980712 1 -8896045754034978816 +-8914039133569400832 -62 -62 1 1332042427 1 -8914039133569400832 +-8916987977485312000 -73 -73 1 -839176151 1 -8916987977485312000 +-8922409715403112448 -81 -81 1 -536315467 1 -8922409715403112448 +-8923529803981905920 -32 -32 1 1148500740 1 -8923529803981905920 +-8927968289860370432 45 45 1 1033836308 1 -8927968289860370432 +-8930307926221807616 116 116 1 -966979668 1 -8930307926221807616 +-8938849835283677184 -80 -80 1 1318606691 1 -8938849835283677184 +-8940944155843461120 -98 -98 1 -858439361 1 -8940944155843461120 +-8941201923743703040 NULL NULL 1 NULL 0 -8941201923743703040 +-8946656952763777024 4 4 1 -759911896 1 -8946656952763777024 +-8948335470186373120 79 79 1 -1078397698 1 -8948335470186373120 +-8959796625322680320 -76 -76 1 1318956413 1 -8959796625322680320 +-8961059046745669632 63 63 1 1783034168 1 -8961059046745669632 +-8962547695651323904 -100 -100 1 1091736925 1 -8962547695651323904 +-8965578088652095488 -74 -74 1 -1216166764 1 -8965578088652095488 +-8989473881707921408 -110 -110 1 1310360849 1 -8989473881707921408 +-8990843030306717696 NULL NULL 1 -311437801 1 -8990843030306717696 +-8992599250893979648 78 78 1 1677494300 1 -8992599250893979648 +-8996954350906294272 -95 -95 1 -1769037737 1 -8996954350906294272 +-9002912355472736256 -51 -51 1 -561932449 1 -9002912355472736256 +-9004892183139811328 -91 -91 1 -1949698319 1 -9004892183139811328 +-9008631121684832256 98 98 1 704038411 1 -9008631121684832256 +-9012093603044245504 -1 -1 1 538766635 1 -9012093603044245504 +-9013952631912325120 -42 -42 1 -1052493316 1 -9013952631912325120 +-9014145341570203648 -4 -4 1 273256071 1 -9014145341570203648 +-9022154842129547264 118 118 1 1130043800 1 -9022154842129547264 +-9032650742739836928 -31 -31 1 1102561039 1 -9032650742739836928 +-9049720998034137088 27 27 1 1747664003 1 -9049720998034137088 +-9051477157204770816 -15 -15 1 -1648991909 1 -9051477157204770816 +-9058029636530003968 NULL NULL 1 -1197602595 1 -9058029636530003968 +-9066993118333706240 -86 -86 1 -425196209 1 -9066993118333706240 +-9071565764086521856 -1 -1 1 2058640744 1 -9071565764086521856 +-9075302542655684608 76 76 1 -295186284 1 -9075302542655684608 +-9075486079396069376 3 3 1 -1805915233 1 -9075486079396069376 +-9078662294976061440 80 80 1 -235819331 1 -9078662294976061440 +-9079801920509001728 -112 -112 1 -705887590 1 -9079801920509001728 +-9080568167841226752 -46 -46 1 906074599 1 -9080568167841226752 +-9080956291212132352 -31 -31 1 1330219997 1 -9080956291212132352 +-9084940280061485056 122 122 1 128430191 1 -9084940280061485056 +-9088239683374350336 -78 -78 1 -18917438 1 -9088239683374350336 +-9091113592821972992 55 55 1 1861276585 1 -9091113592821972992 +-9095689235523264512 11 11 1 1687784247 1 -9095689235523264512 +-9101953184875757568 86 86 1 -1918847735 1 -9101953184875757568 +-9102482277760983040 78 78 1 742866312 1 -9102482277760983040 +-9105358806324035584 97 97 1 1679381813 1 -9105358806324035584 +-9105701280936501248 -31 -31 1 1109664665 1 -9105701280936501248 +-9109392978217484288 -84 -84 1 407098216 1 -9109392978217484288 +-9117959922369060864 -79 -79 1 936133387 1 -9117959922369060864 +-9126793997498957824 NULL NULL 1 770574055 1 -9126793997498957824 +-9136398397785948160 78 78 1 376076075 1 -9136398397785948160 +-9142610685888192512 86 86 1 -387395264 1 -9142610685888192512 +-9145593811310010368 -1 -1 1 -202409329 1 -9145593811310010368 +-9148197394287779840 -5 -5 1 -1568536214 1 -9148197394287779840 +-9149719074367946752 11 11 1 234452496 1 -9149719074367946752 +-9157613004431998976 -78 -78 1 1362740312 1 -9157613004431998976 +-9175038118837149696 20 20 1 -1701492480 1 -9175038118837149696 +-9175279464813223936 106 106 1 2080412555 1 -9175279464813223936 +-9178166810751909888 -26 -26 1 -1407817977 1 -9178166810751909888 +-9187662685618348032 -26 -26 1 NULL 0 -9187662685618348032 +-9189155542884474880 18 18 1 -1955545912 1 -9189155542884474880 +-9203804401302323200 -14 -14 1 -671853199 1 -9203804401302323200 +-9203942396257984512 87 87 1 -1625800024 1 -9203942396257984512 +-9206329156028112896 -68 -68 1 2084666529 1 -9206329156028112896 +-9210275791460499456 124 124 1 601376532 1 -9210275791460499456 +-9213132862973829120 -42 -42 1 -1216206795 1 -9213132862973829120 +-9215144824304721920 99 99 1 -399643110 1 -9215144824304721920 +-9218875542187065344 -61 -61 1 785382955 1 -9218875542187065344 +-9219066990552760320 -117 -117 1 2090044777 1 -9219066990552760320 +1021 31 31 1 -1884780525 1 1021 +1030 25 25 1 -300429552 1 1030 +1032 107 107 1 -1914210382 1 1032 +1039 -26 -26 1 914062370 1 1039 +1046 -55 -55 1 -990781312 1 1046 +1048 -124 -124 1 -249150336 1 1048 +1053 -100 -100 1 -1369302744 1 1053 +1055 33 33 1 371383749 1 1055 +1058 82 82 1 -1497098905 1 1058 +1065 -44 -44 1 1194089079 1 1065 +1066 -105 -105 1 1767019352 1 1066 +1074 125 125 1 161210995 1 1074 +1075 -33 -101 3 1609470119 2 1075 +108 100 100 1 -835107230 1 108 +1086 33 33 1 -1341627565 1 1086 +1093 82 82 1 NULL 0 1093 +1094 -4 -4 1 -359194591 1 1094 +1095 -86 -86 1 291866793 1 1095 +1099 -127 -127 1 1390704286 1 1099 +1115 108 108 1 -144862954 1 1115 +112 107 107 1 -2147071655 1 112 +1127 7 7 1 -423378447 1 1127 +1128 12 12 1 -932525608 1 1128 +1132 88 88 1 239078089 1 1132 +1134 -19 -19 1 187718349 1 1134 +1141 -39 -39 1 -540820650 1 1141 +1142 -92 -92 1 1184001017 1 1142 +1145 114 114 1 669484010 1 1145 +1153 -41 -41 1 1646811064 1 1153 +1157 29 29 1 590719541 1 1157 +1158 36 36 1 990246086 1 1158 +1165 -3 -83 2 1630946897 2 1165 +1168 77 77 1 NULL 0 1168 +1177 -117 -117 1 1182595271 1 1177 +1187 123 123 1 69110370 1 1187 +1189 108 108 1 215508794 1 1189 +1198 -57 -57 1 -1857500489 1 1198 +120 117 117 1 29680001 1 120 +1201 6 6 1 945911081 1 1201 +1217 58 58 1 -1802746460 1 1217 +1234 -46 -46 1 -1921909135 1 1234 +1243 63 63 1 1938788165 1 1243 +1247 -77 -77 1 -866304147 1 1247 +1252 98 98 1 30036142 1 1252 +1261 18 18 1 -343173797 1 1261 +1270 -127 -127 1 1969239701 1 1270 +1280 46 46 1 991397535 1 1280 +1282 NULL NULL 1 -1140071443 1 1282 +1286 83 83 1 -480058682 1 1286 +1287 70 70 1 -1362178985 1 1287 +1290 27 27 1 177837042 1 1290 +1291 -90 -90 1 1398486099 1 1291 +1299 64 64 1 765656980 1 1299 +130 5 5 1 -2081501748 1 130 +1307 79 79 1 882331889 1 1307 +1312 -114 -114 1 742059797 1 1312 +1316 -3 -3 1 997193329 1 1316 +1321 -90 -90 1 731241198 1 1321 +1337 48 48 1 -1948257321 1 1337 +1341 -98 -98 1 492120544 1 1341 +1342 -48 -48 1 1203482872 1 1342 +1343 114 114 1 -217785690 1 1343 +1345 -10 -10 1 -600315936 1 1345 +1346 89 89 1 -158233823 1 1346 +135 5 5 1 198017473 1 135 +1366 48 48 1 748358417 1 1366 +1368 55 -40 2 1427261767 2 1368 +1371 35 12 2 -1220509644 2 1371 +138 36 36 1 843282593 1 138 +1386 1 1 1 2081152819 1 1386 +1398 84 84 1 955267058 1 1398 +1409 13 13 1 865013617 1 1409 +1422 93 93 1 -1402821064 1 1422 +1423 -90 -90 1 631954352 1 1423 +1436 109 109 1 1765173148 1 1436 +1439 -5 -5 1 531459992 1 1439 +1447 53 53 1 NULL 0 1447 +1450 NULL NULL 1 740883263 1 1450 +1454 27 27 1 NULL 0 1454 +1458 NULL NULL 1 -1001529082 1 1458 +1462 -112 -112 1 287239980 1 1462 +1466 -124 -124 1 574069547 1 1466 +1470 NULL NULL 1 1406029775 1 1470 +1477 83 83 1 -707228984 1 1477 +1481 -15 -37 2 1842582526 2 1481 +1489 -36 -36 1 766737781 1 1489 +1493 -60 -60 1 557053197 1 1493 +1495 -65 -65 1 -1222897252 1 1495 +1501 -28 -28 1 1081920048 1 1501 +1506 121 121 1 1893632113 1 1506 +1508 79 79 1 1632769786 1 1508 +1509 -24 -107 2 3225474919 2 1509 +1518 -102 -102 1 824235855 1 1518 +1520 -31 -31 1 NULL 0 1520 +1521 -67 -67 1 -993029335 1 1521 +1524 -61 -61 1 -1851280202 1 1524 +1530 92 92 1 1934970004 1 1530 +1537 -23 -55 2 257940904 2 1537 +154 -12 -113 2 553439267 2 154 +1541 60 60 1 -1430903652 1 1541 +1542 -116 -116 1 NULL 0 1542 +1545 51 51 1 564366133 1 1545 +1556 25 25 1 -1202975006 1 1556 +1559 36 36 1 -206177972 1 1559 +1561 -111 -111 1 NULL 0 1561 +1566 -60 -60 1 747122546 1 1566 +1604 NULL NULL 1 -2077771325 1 1604 +1606 -82 -82 1 -1901806083 1 1606 +1608 99 99 1 142722637 1 1608 +1613 -33 -33 1 -1422780798 1 1613 +1614 -79 -79 1 -296195507 1 1614 +1620 -5 -5 1 -1989378509 1 1620 +1638 NULL NULL 1 92777932 1 1638 +1641 115 115 1 NULL 0 1641 +1643 -74 -74 1 1346627771 1 1643 +1648 65 65 1 -496870819 1 1648 +1651 -91 -91 1 -1575588203 1 1651 +1667 -5 -5 1 -499533481 1 1667 +1671 1 1 1 1504919241 1 1671 +1674 -68 -68 1 1488440165 1 1674 +1676 6 6 1 -393723522 1 1676 +1678 NULL NULL 1 -1104268719 1 1678 +168 119 119 1 -53587991 1 168 +1681 -111 -111 1 929751599 1 1681 +169 -67 -67 1 -1759354458 1 169 +1693 68 68 1 -1545572711 1 1693 +1701 6 -59 2 755580328 2 1701 +1704 64 64 1 -605370177 1 1704 +1719 -115 -242 2 -469198712 2 1719 +1726 -35 -35 1 NULL 0 1726 +1728 118 118 1 626251612 1 1728 +1745 -75 -75 1 368170021 1 1745 +1751 38 38 1 -667383951 1 1751 +1752 -78 -78 1 -1538978853 1 1752 +1769 -104 -104 1 805672638 1 1769 +1774 -29 -29 1 -1974777102 1 1774 +1775 32 32 1 1928365430 1 1775 +1777 37 37 2 1061638369 1 1777 +1780 17 17 1 -71433796 1 1780 +1781 60 60 1 NULL 0 1781 +1785 55 55 1 -524189419 1 1785 +1786 31 31 1 -1009249550 1 1786 +1788 42 42 1 -997463353 1 1788 +1789 12 12 1 -1098379914 1 1789 +1791 -19 -19 1 -1900369503 1 1791 +1796 -79 -79 1 -1625062942 1 1796 +1806 -45 -45 1 -40284975 1 1806 +181 -49 -49 1 1742536084 1 181 +1811 -41 -41 1 -922200749 1 1811 +1813 -69 -69 1 -738157651 1 1813 +1826 27 27 1 505902480 1 1826 +1827 -53 -53 1 -956668825 1 1827 +1835 -96 -96 1 1768399622 1 1835 +1837 77 77 1 290921475 1 1837 +1845 -59 -59 1 -909024258 1 1845 +1846 114 114 1 418182899 1 1846 +1856 53 -72 2 -1828994565 2 1856 +1862 113 113 1 674547678 1 1862 +1863 99 99 1 -1017027298 1 1863 +1864 104 104 1 NULL 0 1864 +1866 104 104 1 -400501472 1 1866 +187 -27 -27 1 2133950868 1 187 +1870 -68 -68 1 25644069 1 1870 +188 -127 -127 1 316438994 1 188 +1880 23 23 1 1293876597 1 1880 +1890 56 56 1 -1660344634 1 1890 +1892 31 31 1 596595603 1 1892 +1899 52 52 1 734267314 1 1899 +19 48 -71 2 -2337280360 2 19 +1906 -107 -107 1 1070989126 1 1906 +1910 30 30 1 1978200605 1 1910 +1914 124 185 2 -2608386973 2 1914 +1926 -6 -6 1 -490337498 1 1926 +1937 -79 -79 1 -987995271 1 1937 +1940 0 0 1 950997304 1 1940 +1941 -116 -116 1 -54793232 1 1941 +1948 33 -73 3 -1338846770 3 1948 +1955 -53 -53 1 -316678117 1 1955 +1965 70 70 1 1173098061 1 1965 +1972 NULL NULL 1 -1404921781 1 1972 +1981 87 87 1 -980869630 1 1981 +1983 50 50 1 -1954890941 1 1983 +1987 121 121 1 65956045 1 1987 +1990 -71 -71 1 1050809633 1 1990 +1995 113 113 1 1012230484 1 1995 +1999 -89 -89 1 -9958400 1 1999 +2001 -30 -30 1 217476429 1 2001 +2002 105 105 1 1535954353 1 2002 +2004 102 102 1 1464703053 1 2004 +2009 NULL NULL 1 -1471147786 1 2009 +2011 -92 -92 1 33234633 1 2011 +2013 -15 -15 1 1142098316 1 2013 +2016 -50 -50 1 135341845 1 2016 +2017 97 97 1 44628821 1 2017 +2020 75 117 2 -207047446 2 2020 +2025 NULL NULL 1 989475408 1 2025 +2026 51 51 1 -1454941039 1 2026 +2029 NULL NULL 1 546555204 1 2029 +203 -3 -3 1 2070969353 1 203 +204 72 72 1 2018249426 1 204 +2046 -98 -98 1 363981930 1 2046 +2056 -6 -6 1 1941527322 1 2056 +2067 92 92 1 NULL 0 2067 +2072 -118 -118 1 -1652600376 1 2072 +2073 32 32 1 -856843296 1 2073 +2085 -114 -114 1 -1179668872 1 2085 +2089 89 89 1 945683736 1 2089 +2092 -21 -21 1 1678261510 1 2092 +2105 84 84 1 1550112473 1 2105 +2106 -125 -125 1 1597303154 1 2106 +2108 108 108 1 977292235 1 2108 +213 121 3 2 -1443273080 2 213 +2131 7 7 1 -464804906 1 2131 +2138 4 4 1 -1048181367 1 2138 +2140 123 123 1 -1319686435 1 2140 +2144 69 69 1 117620760 1 2144 +2155 NULL NULL 1 1126157283 1 2155 +2177 -55 -55 1 -1960344717 1 2177 +2179 72 72 1 1394370866 1 2179 +2180 -51 -51 1 -120704505 1 2180 +2183 28 28 1 -1947868215 1 2183 +2186 110 110 1 -1655396452 1 2186 +2187 -8 -8 1 -906986958 1 2187 +2189 -119 -119 1 NULL 0 2189 +2193 91 107 2 -2636180757 2 2193 +2194 -24 -24 1 -853967587 1 2194 +22 81 81 1 176792505 1 22 +2201 19 19 1 1425362689 1 2201 +2205 48 48 1 2013376408 1 2205 +2214 -125 -125 1 1602631923 1 2214 +2217 -30 -30 1 479566810 1 2217 +2218 26 26 1 NULL 0 2218 +2223 127 127 1 1605596441 1 2223 +2227 55 55 1 1054864168 1 2227 +2229 -101 -101 1 516843026 1 2229 +2232 17 17 1 277582670 1 2232 +2241 -46 -46 1 810157660 1 2241 +2244 -87 -87 1 -1699049982 1 2244 +2255 -91 -91 1 -1561738723 1 2255 +2262 -25 -25 1 1283898734 1 2262 +2264 119 119 1 -425103007 1 2264 +2270 -92 -92 1 -1429346144 1 2270 +2274 -35 -35 1 -1676261015 1 2274 +2277 -70 -70 1 -1447263708 1 2277 +2279 NULL NULL 1 -1412187081 1 2279 +228 121 121 1 167432368 1 228 +2283 -50 -50 1 530274409 1 2283 +2285 -35 -35 2 1874746988 2 2285 +2295 101 101 1 -1914072976 1 2295 +2306 31 31 1 -604362582 1 2306 +2320 111 111 1 -1919939921 1 2320 +2323 29 29 1 -2028355450 1 2323 +2325 26 14 2 3116981291 2 2325 +2335 55 55 1 1281277970 1 2335 +2341 -85 -85 1 1951869763 1 2341 +2348 30 30 1 -40407627 1 2348 +2358 69 69 1 -370798230 1 2358 +236 25 25 1 514833409 1 236 +2373 -64 -64 1 -1602792666 1 2373 +238 45 45 1 713031549 1 238 +2386 NULL NULL 1 930008274 1 2386 +2393 -18 -72 2 2753810053 2 2393 +2398 98 98 1 1489169773 1 2398 +2400 64 64 1 663222148 1 2400 +2410 75 75 1 NULL 0 2410 +2412 -5 -42 2 -2637504979 2 2412 +2420 -7 -7 1 480849725 1 2420 +2426 NULL NULL 1 62293025 1 2426 +2434 -42 -42 1 1621606222 1 2434 +244 -25 -25 1 860708524 1 244 +2461 58 58 1 -1668974292 1 2461 +2463 75 114 3 2507326063 3 2463 +2465 NULL NULL 1 -1819075185 1 2465 +2469 -42 -42 1 524808 1 2469 +2475 66 66 1 -1116100266 1 2475 +2476 78 78 1 -1210261177 1 2476 +2485 -5 -100 2 1214463625 2 2485 +2487 -73 -73 1 NULL 0 2487 +2492 12 12 1 -270683864 1 2492 +2494 59 59 1 -1830870295 1 2494 +2502 73 73 1 -336625622 1 2502 +2506 42 42 1 776606164 1 2506 +2509 -126 -126 1 693331761 1 2509 +2512 63 63 1 -1164833898 1 2512 +2514 -38 -38 1 407233168 1 2514 +2515 -86 -86 1 -601946913 1 2515 +2517 34 34 1 198624903 1 2517 +2524 -34 -34 1 -1081766449 1 2524 +2533 74 74 1 672266669 1 2533 +2539 36 36 1 1090344463 1 2539 +2540 -32 -32 1 1103878879 1 2540 +255 102 102 1 -1106469823 1 255 +2551 -88 -88 1 -1762037754 1 2551 +2553 12 12 1 1112783661 1 2553 +2560 13 -97 2 -3439306295 2 2560 +2563 -94 -94 1 -1141652793 1 2563 +2565 97 97 1 -1302592941 1 2565 +2569 -75 -75 1 -837503491 1 2569 +2579 39 39 1 1640445482 1 2579 +2580 51 51 1 1933545427 1 2580 +2587 46 46 1 -1125605439 1 2587 +259 -113 -113 1 -922875124 1 259 +2599 -101 -101 1 -1903090602 1 2599 +2607 111 111 1 NULL 0 2607 +2608 41 41 1 335359004 1 2608 +2619 -42 -100 2 -123535819 2 2619 +2625 96 96 1 -1897998366 1 2625 +2626 107 107 1 1620529246 1 2626 +263 125 225 2 2902136672 2 263 +2637 30 30 1 1522208504 1 2637 +2647 80 80 1 92834720 1 2647 +2649 102 102 1 659343542 1 2649 +2662 -16 -16 1 209430502 1 2662 +2663 39 39 1 43983130 1 2663 +2675 -44 -44 1 1305668933 1 2675 +268 -42 -136 2 657241842 2 268 +2680 -44 -44 1 825977391 1 2680 +2682 38 38 1 -675125724 1 2682 +2688 86 86 1 -1249134513 1 2688 +2689 35 35 1 -1343327 1 2689 +2692 67 67 1 NULL 0 2692 +2700 -81 -81 1 -123529324 1 2700 +2712 -62 -62 1 -901778330 1 2712 +2714 NULL NULL 1 1284956108 1 2714 +2715 67 -52 2 2531982336 2 2715 +2719 -127 -127 1 1516149502 1 2719 +2724 -105 -105 1 922373046 1 2724 +2725 38 38 1 257821327 1 2725 +2735 66 66 1 1307148254 1 2735 +2745 39 39 1 1134416796 1 2745 +275 -109 -109 1 1517488324 1 275 +2752 -83 -83 1 962091264 1 2752 +2762 37 37 1 314232856 1 2762 +2772 -57 -57 1 1835749815 1 2772 +2776 73 73 1 -1801684055 1 2776 +2786 -101 -218 2 -1773917592 2 2786 +279 11 11 1 -1709246310 1 279 +2790 -27 -27 1 686081268 1 2790 +2791 -109 -109 1 -714594143 1 2791 +2803 52 53 3 2005164945 3 2803 +2805 -69 -69 1 -295751373 1 2805 +281 83 83 1 -42151403 1 281 +2810 126 126 1 1844415080 1 2810 +2811 -92 -92 1 -170643477 1 2811 +2816 -108 -108 1 -912429611 1 2816 +2821 95 95 1 829055499 1 2821 +2824 -52 -52 1 -1679120527 1 2824 +2835 117 117 1 144428297 1 2835 +2842 125 125 1 889772203 1 2842 +2843 -17 -70 2 -2509512115 2 2843 +2846 10 10 1 -121162464 1 2846 +2847 NULL NULL 1 1634441052 1 2847 +2848 29 29 1 -985817478 1 2848 +2850 90 90 1 1618123796 1 2850 +2855 117 212 2 -13657610 2 2855 +2862 -86 -86 1 1956887369 1 2862 +2878 9 9 1 -906545548 1 2878 +2886 40 40 1 84231802 1 2886 +289 114 114 1 -1144976744 1 289 +2897 4 -65 2 1164210518 2 2897 +2900 102 102 1 2114363167 1 2900 +2903 NULL NULL 1 1552351592 1 2903 +2905 8 8 1 -1232183416 1 2905 +2911 -47 -47 1 1483580941 1 2911 +2915 45 45 1 -470798506 1 2915 +2919 -88 -88 1 1002132158 1 2919 +2933 3 -35 2 -3159411453 2 2933 +2938 -44 -44 1 -2032576637 1 2938 +294 86 86 1 -1817096156 1 294 +2941 31 31 1 -1862095575 1 2941 +2942 -40 -40 1 1638471881 1 2942 +296 -21 -92 2 -750491170 2 296 +2962 109 109 1 1042237722 1 2962 +2968 -17 -106 2 1556919269 1 2968 +2971 -60 -60 1 -373541958 1 2971 +2977 90 90 1 -2007662579 1 2977 +2979 37 37 1 131031898 1 2979 +2984 19 19 1 1440427914 1 2984 +2986 85 85 1 -933324607 1 2986 +2988 0 0 1 492639283 1 2988 +2991 -38 -38 1 NULL 0 2991 +3002 -100 -100 1 -1538558250 1 3002 +3006 114 114 1 1328225044 1 3006 +301 -65 -65 1 -1924909143 1 301 +302 -58 -58 1 -1730740504 1 302 +3021 -59 -131 2 -182818671 2 3021 +3024 62 62 1 -891543038 1 3024 +3029 50 50 1 -1198036877 1 3029 +3031 -5 -5 1 NULL 0 3031 +3036 120 120 1 -449333854 1 3036 +3043 -115 -115 1 692666133 1 3043 +3054 119 119 1 -973128166 1 3054 +3055 -108 -108 1 -1198465530 1 3055 +3058 106 106 1 -1144920802 1 3058 +3059 92 92 1 1386071996 1 3059 +3060 34 34 2 -1304196353 2 3060 +3067 38 38 1 1256676429 1 3067 +3071 -52 -52 1 1129173487 1 3071 +3073 116 116 1 722737062 1 3073 +3079 -24 -151 2 -882028850 1 3079 +3083 -70 -70 1 -385247581 1 3083 +3084 -75 -75 1 1333148555 1 3084 +3089 -98 -98 1 584084934 1 3089 +3094 114 114 1 1335803002 1 3094 +3103 -121 -121 1 -1622653291 1 3103 +311 33 33 1 -1850492820 1 311 +3111 10 10 1 -1299159155 1 3111 +3118 7 7 1 NULL 0 3118 +3119 82 82 1 673904922 1 3119 +3144 -17 -17 1 -758231588 1 3144 +3147 -96 -96 1 1102069050 1 3147 +3159 48 29 2 1048839219 2 3159 +3163 NULL NULL 1 26270580 1 3163 +3174 46 46 1 -1871446009 1 3174 +3183 -23 -23 1 1363459426 1 3183 +3190 -124 -124 1 297577612 1 3190 +3197 -66 -66 1 976870621 1 3197 +3199 86 86 1 -2086352100 1 3199 +320 0 0 1 1198172036 1 320 +3203 6 6 1 -491377296 1 3203 +3206 77 77 1 -733756717 1 3206 +3208 -72 -72 1 -211669740 1 3208 +3212 10 10 1 900992177 1 3212 +3213 -57 -57 1 -1171326281 1 3213 +3231 NULL NULL 1 -817383093 1 3231 +3232 59 59 1 1434588588 1 3232 +3235 -14 -14 1 -287400633 1 3235 +3244 -40 -40 1 1303632852 1 3244 +3245 -3 -3 1 1385883394 1 3245 +3248 29 29 1 1202720813 1 3248 +3249 -124 -124 1 206942178 1 3249 +3253 61 61 1 -1218871391 1 3253 +3255 23 23 1 -1212433954 1 3255 +3263 NULL NULL 1 -419335927 1 3263 +3286 5 5 1 -1078214868 1 3286 +3300 NULL NULL 1 1743696703 1 3300 +3307 -115 -115 1 -1128317466 1 3307 +3322 -120 -120 1 -1544877665 1 3322 +3333 11 11 1 -462541618 1 3333 +3352 -28 -28 1 -1621814212 1 3352 +336 -83 -83 1 1376818328 1 336 +3365 29 29 1 1712411993 1 3365 +3366 -55 -55 1 -606214770 1 3366 +3397 -26 -26 1 -2066134281 1 3397 +34 -15 -15 1 1969650228 1 34 +3401 NULL NULL 1 -2138343289 1 3401 +3407 -105 -105 1 NULL 0 3407 +3409 89 89 1 -337586880 1 3409 +341 126 126 1 278643258 1 341 +3418 -89 -214 2 -153939256 2 3418 +342 -121 -121 1 -884796655 1 342 +3421 -117 -117 1 -1878572820 1 3421 +3430 -110 -110 1 -395499919 1 3430 +3443 120 120 1 -1006768637 1 3443 +3446 -80 -80 1 440393309 1 3446 +345 -87 -87 1 NULL 0 345 +3456 97 97 1 NULL 0 3456 +346 NULL NULL 2 -2819634111 2 346 +3460 -95 -95 1 1204325852 1 3460 +3462 122 114 3 -1412216754 3 3462 +3467 58 69 2 -537984108 2 3467 +347 30 30 1 -414207254 1 347 +3472 -30 -30 1 868717604 1 3472 +3478 -40 -40 1 1772545157 1 3478 +3493 37 37 1 -890552359 1 3493 +350 59 59 1 330302407 1 350 +3507 -126 -126 1 2032271149 1 3507 +3510 -104 -104 1 197056787 1 3510 +3512 60 60 1 636901402 1 3512 +3533 -52 -52 1 1076088102 1 3533 +3534 -5 -5 1 NULL 0 3534 +3541 104 104 1 -996953616 1 3541 +3542 -59 -59 1 459269456 1 3542 +355 48 48 1 1258721737 1 355 +3554 -39 -39 1 48554395 1 3554 +3555 43 43 2 499253776 2 3555 +3563 -76 -76 1 1332181668 1 3563 +3566 -79 -79 1 -519978947 1 3566 +3567 -56 -56 1 410340192 1 3567 +3568 -96 -96 1 NULL 0 3568 +3579 121 121 1 -1426893312 1 3579 +3588 98 62 2 1546855030 2 3588 +3599 -27 -27 1 2069258195 1 3599 +3606 -86 -86 1 -1032306832 1 3606 +3608 56 56 1 773730574 1 3608 +3609 104 104 1 -1380191654 1 3609 +361 103 103 1 -434747475 1 361 +3613 59 59 1 1191238870 1 3613 +3622 100 127 2 474041784 2 3622 +3625 123 123 1 -1656822229 1 3625 +3630 -80 -80 1 693876030 1 3630 +3637 -51 -51 1 929560791 1 3637 +364 32 32 1 1336365018 1 364 +3648 81 81 1 1142481557 1 3648 +3663 31 31 1 -886741158 1 3663 +3664 58 58 1 -186600427 1 3664 +367 -112 -112 1 -1324624386 1 367 +3672 76 76 1 1825828852 1 3672 +3673 126 126 1 -362603422 1 3673 +3677 NULL NULL 1 470575409 1 3677 +3680 67 67 1 1124269631 1 3680 +3682 3 3 1 -1718163874 1 3682 +3690 57 57 1 1500437122 1 3690 +3691 124 124 1 -664111469 1 3691 +3701 -105 -105 1 760466914 1 3701 +3702 NULL NULL 1 -1423467446 1 3702 +3703 20 20 1 1796950944 1 3703 +3707 87 87 1 1377359511 1 3707 +3722 41 41 1 -1322736153 1 3722 +3724 42 42 1 1625751062 1 3724 +3725 68 111 2 -207705473 2 3725 +3728 113 164 2 -1739142068 2 3728 +3739 -60 -60 1 -192181579 1 3739 +3747 -114 -114 1 1001732850 1 3747 +3749 -38 -38 1 1027147837 1 3749 +375 -75 -75 1 -1754347372 1 375 +3755 -86 -86 1 -7929246 1 3755 +3763 18 18 1 -679230165 1 3763 +3764 95 95 1 -2027812975 1 3764 +3769 95 95 1 -1431196400 1 3769 +3770 66 48 2 -3354369862 2 3770 +378 -55 -55 1 -1270523286 1 378 +3781 -16 -56 2 -20392256 2 3781 +3789 -4 -4 1 -139448716 1 3789 +379 34 34 1 1625699061 1 379 +3810 107 107 1 -1043413503 1 3810 +3812 -116 -116 1 -870900240 1 3812 +3823 -13 -13 1 1563120121 1 3823 +3824 111 111 1 1372224352 1 3824 +383 -24 -90 2 872090024 2 383 +3830 58 58 1 1443426396 1 3830 +3835 -27 -27 1 133276416 1 3835 +3841 1 1 1 -901079162 1 3841 +3848 93 93 1 1436480682 1 3848 +3858 97 97 1 1925283040 1 3858 +3860 75 75 1 -423945469 1 3860 +3866 91 116 2 347517645 2 3866 +3874 50 50 1 -1603071732 1 3874 +3879 -121 -121 1 461680901 1 3879 +388 108 108 1 -66112513 1 388 +3887 53 53 1 476919973 1 3887 +3901 18 18 1 -1909635960 1 3901 +3904 -55 -55 1 1473503196 1 3904 +3907 -69 -69 1 -373038706 1 3907 +391 NULL NULL 1 1107258026 1 391 +3910 62 62 1 NULL 0 3910 +3911 -43 -43 1 -1283465451 1 3911 +3913 -14 -14 1 1506907734 1 3913 +392 51 51 1 1664736741 1 392 +3932 -85 -85 1 2145269593 1 3932 +3940 15 15 1 923353533 1 3940 +3941 -122 -122 1 -734921821 1 3941 +3945 -30 -30 1 -1758125445 1 3945 +3946 -37 -37 1 523289079 1 3946 +3949 -59 -59 1 1797164732 1 3949 +3958 -34 -34 1 65172363 1 3958 +3960 -16 -16 1 1509573831 1 3960 +3961 40 40 1 -1955647385 1 3961 +3962 -10 -10 1 NULL 0 3962 +3965 -91 -91 1 771827308 1 3965 +3974 47 35 2 417582711 2 3974 +3980 82 82 1 -564495517 1 3980 +3990 -86 -86 1 -1392487784 1 3990 +4018 -34 -34 1 -396852483 1 4018 +4020 -113 -113 1 -1447140800 1 4020 +4024 -28 -28 1 -202035134 1 4024 +4030 -105 -105 1 -216495498 1 4030 +4037 -71 -71 1 1003667927 1 4037 +4051 -55 -55 1 1052255272 1 4051 +4054 -40 -40 1 1998185704 1 4054 +4056 -52 -52 1 -1516259168 1 4056 +4075 80 80 1 NULL 0 4075 +4078 -118 -118 1 727802564 1 4078 +4088 15 15 1 947846543 1 4088 +41 37 37 1 -203911033 1 41 +412 127 91 2 1638575351 2 412 +417 -49 -49 1 152891873 1 417 +425 20 20 1 1336194583 1 425 +443 98 98 1 596242714 1 443 +454 7 7 1 -1227085134 1 454 +455 93 93 1 1159353899 1 455 +462 105 105 1 1677444379 1 462 +470 -63 -63 1 -181523892 1 470 +471 -26 -26 1 -207899360 1 471 +481 -51 -51 1 536235636 1 481 +482 4 4 1 765084282 1 482 +485 -80 -80 1 874824958 1 485 +489 4 4 1 -928013434 1 489 +49 -47 -47 1 1673218677 1 49 +490 -95 -95 1 1229172951 1 490 +491 -93 -93 1 -201554470 1 491 +5 120 120 1 -1063673827 1 5 +500 71 71 1 1216016081 1 500 +501 63 32 2 -754130393 2 501 +504 -43 -43 1 851975276 1 504 +522 111 111 1 -853606287 1 522 +523 0 0 1 149701884 1 523 +524 -91 -91 1 -1326025787 1 524 +530 82 82 1 -1851680302 1 530 +535 64 64 1 888896424 1 535 +579 -34 -34 1 -1804244259 1 579 +583 -120 -120 1 -1554325042 1 583 +584 88 88 1 -2017279089 1 584 +586 113 113 1 -310343273 1 586 +587 116 116 1 1485934602 1 587 +590 53 53 1 -186764959 1 590 +597 -65 -65 1 1577999613 1 597 +601 -60 -60 1 -592568201 1 601 +612 -81 -81 1 1131663263 1 612 +615 50 50 1 2097519027 1 615 +618 -27 -27 1 -412333994 1 618 +65 -90 -90 1 919363072 1 65 +650 -58 -58 1 1222217404 1 650 +658 -103 -103 1 -1254129998 1 658 +66 70 70 1 2013444562 1 66 +661 -2 -2 2 638630670 2 661 +663 -31 -31 1 -1261099087 1 663 +664 113 113 1 899810881 1 664 +677 57 57 1 -1038565721 1 677 +68 -53 -53 1 879290165 1 68 +681 -31 -31 1 -893863493 1 681 +687 -52 -52 1 1888675011 1 687 +688 -96 -96 1 NULL 0 688 +690 102 102 1 -1112062809 1 690 +691 54 54 1 -1156193121 1 691 +6923604860394528768 78 78 1 -1095938490 1 6923604860394528768 +6924820982050758656 87 87 1 -1709117770 1 6924820982050758656 +6926925215281774592 -57 -57 1 987734049 1 6926925215281774592 +6927260280037097472 120 120 1 1668094749 1 6927260280037097472 +6928080429732536320 0 0 1 1300798829 1 6928080429732536320 +6933001829416034304 NULL NULL 1 2089198703 1 6933001829416034304 +6933451028794925056 39 39 1 1776456512 1 6933451028794925056 +6933731240564056064 111 111 1 780859673 1 6933731240564056064 +6934570741217755136 22 22 1 491758252 1 6934570741217755136 +694 -36 -36 1 -2015780444 1 694 +6947488599548215296 14 14 1 1141595012 1 6947488599548215296 +695 -13 -13 1 -521886983 1 695 +6960137166475911168 50 50 1 -558456218 1 6960137166475911168 +6962726713896484864 48 48 1 2051470532 1 6962726713896484864 +6963217546192322560 NULL NULL 1 -1340213051 1 6963217546192322560 +6964585306125008896 31 31 1 2146312499 1 6964585306125008896 +6967631925774639104 82 82 1 373031319 1 6967631925774639104 +6969599299897163776 108 108 1 -2042831105 1 6969599299897163776 +6974475559697768448 -64 -64 1 1493555718 1 6974475559697768448 +6982145326341423104 -68 -68 1 -941433219 1 6982145326341423104 +6987889924212203520 -53 -53 1 -2053551539 1 6987889924212203520 +6991316084916879360 48 48 1 -1345085327 1 6991316084916879360 +6996686091335884800 -81 -81 1 -1738775004 1 6996686091335884800 +7006803044329021440 80 80 1 1614297403 1 7006803044329021440 +7013693841855774720 -116 -116 1 656187584 1 7013693841855774720 +7014537632150224896 -72 -72 1 -44426049 1 7014537632150224896 +7017956982081404928 -75 -75 1 -828724467 1 7017956982081404928 +7022349041913978880 93 93 1 -1096013673 1 7022349041913978880 +7027529814236192768 -60 -60 1 -1988508336 1 7027529814236192768 +7031339012080549888 -121 -121 1 1182390248 1 7031339012080549888 +7039820685967343616 41 41 1 -483740394 1 7039820685967343616 +7045967493826387968 105 105 1 -1669227632 1 7045967493826387968 +7049773031131283456 -57 -57 1 814544198 1 7049773031131283456 +7052226236896256000 41 41 1 1119976718 1 7052226236896256000 +7054271419461812224 50 50 1 -1266138408 1 7054271419461812224 +7054938591408996352 -119 -119 1 -352146259 1 7054938591408996352 +7060236714847412224 -98 -98 1 -1858443953 1 7060236714847412224 +7061498706968428544 -50 -50 1 -290558484 1 7061498706968428544 +7061809776248545280 38 38 1 -469870330 1 7061809776248545280 +7062382339142156288 4 4 1 536876888 1 7062382339142156288 +7062605127422894080 -35 -35 1 -1614194712 1 7062605127422894080 +7065344324692443136 7 7 1 -1881263242 1 7065344324692443136 +7068517339681259520 55 55 1 -1871209811 1 7068517339681259520 +7069729473166090240 21 21 1 NULL 0 7069729473166090240 +707 -3 -3 1 1343581455 1 707 +7077311975029555200 112 112 1 1103797891 1 7077311975029555200 +7078641038157643776 -87 -87 1 NULL 0 7078641038157643776 +7080269176324218880 -100 -100 1 -337073639 1 7080269176324218880 +7084659344078970880 -40 -40 1 963854010 1 7084659344078970880 +7086206629592252416 -117 -117 1 -1106685577 1 7086206629592252416 +7091300332052062208 54 54 1 NULL 0 7091300332052062208 +7099005292698550272 72 72 1 917891418 1 7099005292698550272 +71 -62 -62 1 -20639382 1 71 +7107604675626008576 -56 -56 1 1949494660 1 7107604675626008576 +7125231541858205696 104 104 1 -2111312205 1 7125231541858205696 +7128222874437238784 54 54 1 -283378057 1 7128222874437238784 +7130159794259353600 -20 -20 1 -837506172 1 7130159794259353600 +7130306447560826880 -14 -14 1 77063155 1 7130306447560826880 +7149417430082027520 113 113 1 -1352545619 1 7149417430082027520 +7153922334283776000 110 110 1 NULL 0 7153922334283776000 +7157247449513484288 49 49 1 -36038293 1 7157247449513484288 +7164349895861829632 -121 -121 1 -1153978907 1 7164349895861829632 +7165364563962191872 -101 -101 1 -1272838092 1 7165364563962191872 +7166263463731421184 101 101 1 -1838281337 1 7166263463731421184 +7175638927948562432 -83 -83 1 596280431 1 7175638927948562432 +7186401810812059648 10 10 1 1430614653 1 7186401810812059648 +7195454019231834112 -13 -13 1 -1419573027 1 7195454019231834112 +7198687580227043328 14 14 1 563507584 1 7198687580227043328 +7199539820886958080 -27 -27 1 NULL 0 7199539820886958080 +7204802700490858496 -22 -22 1 -1719427168 1 7204802700490858496 +7210160489915236352 NULL NULL 1 -1353470095 1 7210160489915236352 +7212016545671348224 59 59 1 1309976380 1 7212016545671348224 +7212090742612467712 -98 -98 1 -1067083033 1 7212090742612467712 +7217123582035116032 113 113 1 -90029636 1 7217123582035116032 +7220131672176058368 80 80 1 1017953606 1 7220131672176058368 +7220581538170413056 28 28 1 615661052 1 7220581538170413056 +7223569671814987776 NULL NULL 1 -1004204053 1 7223569671814987776 +7226360892091416576 -26 -26 1 -935723237 1 7226360892091416576 +7229607057201127424 16 16 1 -1818380492 1 7229607057201127424 +723 NULL NULL 1 1616782308 1 723 +7231399302953377792 -41 -41 1 1990792684 1 7231399302953377792 +7232273749940838400 -83 -83 1 -1231821948 1 7232273749940838400 +7235109456886816768 -114 -114 1 -2098078720 1 7235109456886816768 +7237310132329488384 -45 -45 1 -1061859761 1 7237310132329488384 +7238339720750948352 38 38 1 -1770229099 1 7238339720750948352 +724 -28 -28 1 -616724730 1 724 +7242751359672631296 -120 -120 1 -2016985611 1 7242751359672631296 +7249443195032985600 NULL NULL 1 -51612681 1 7249443195032985600 +7250237407877382144 52 52 1 -772236518 1 7250237407877382144 +7254710367022645248 67 67 1 1911809937 1 7254710367022645248 +7255302164215013376 -108 -108 1 1281159709 1 7255302164215013376 +7259955893466931200 10 10 1 NULL 0 7259955893466931200 +7260908278294560768 43 43 1 826519029 1 7260908278294560768 +7265141874315517952 -99 -99 1 -571587579 1 7265141874315517952 +7266437490436341760 -41 -41 1 177391521 1 7266437490436341760 +7271786885641666560 -61 -61 1 936752497 1 7271786885641666560 +7271887863395459072 23 23 1 -94709066 1 7271887863395459072 +7274777328897802240 21 21 1 482977302 1 7274777328897802240 +7291432593139507200 3 3 1 1570238232 1 7291432593139507200 +7295502697317097472 NULL NULL 1 210728566 1 7295502697317097472 +7295926343524163584 -35 -35 1 1182646662 1 7295926343524163584 +7296164580491075584 -111 -111 1 1412102605 1 7296164580491075584 +7299197687217856512 8 8 1 172075892 1 7299197687217856512 +73 69 69 1 488014426 1 73 +7304839835188609024 -8 -8 1 1961954939 1 7304839835188609024 +7308289763456000000 NULL NULL 1 -1423477356 1 7308289763456000000 +7309156463509061632 -100 -100 1 1304431147 1 7309156463509061632 +7310869618402910208 -45 -45 1 -359943425 1 7310869618402910208 +7319711402123149312 -95 -95 1 1036391201 1 7319711402123149312 +7333512171174223872 -8 -8 1 -332125121 1 7333512171174223872 +7339426767877390336 7 7 1 538268118 1 7339426767877390336 +7343171468838567936 -93 -93 1 879289168 1 7343171468838567936 +7344029858387820544 115 115 1 -1669848306 1 7344029858387820544 +7345991518378442752 -28 -28 1 849859032 1 7345991518378442752 +7347732772348870656 -78 -78 1 -1800413845 1 7347732772348870656 +7348598907182800896 -101 -101 1 -1940205653 1 7348598907182800896 +735 65 65 1 115111911 1 735 +7354813692542304256 77 77 1 1426152053 1 7354813692542304256 +7359004378440146944 -108 -108 1 1082837515 1 7359004378440146944 +736 -4 -4 1 -1183469360 1 736 +7368920486374989824 64 64 1 -1822850051 1 7368920486374989824 +7370078518278397952 -48 -48 1 -215703544 1 7370078518278397952 +7370803940448305152 -18 -18 1 -533281137 1 7370803940448305152 +7375521127126089728 102 102 1 -688296901 1 7375521127126089728 +7376467688511455232 5 5 1 -348628614 1 7376467688511455232 +7378993334503694336 -45 -45 1 1870464222 1 7378993334503694336 +738 26 26 1 -453739759 1 738 +7381659098423926784 -1 -1 1 867587289 1 7381659098423926784 +7384150968511315968 103 103 1 1447462863 1 7384150968511315968 +7386087924003676160 3 3 1 2038381675 1 7386087924003676160 +7391208370547269632 -1 -1 1 -743680989 1 7391208370547269632 +7393308503950548992 95 95 1 -849551464 1 7393308503950548992 +7394967727502467072 30 30 1 -1983567458 1 7394967727502467072 +7401968422230032384 -15 -15 1 -504529358 1 7401968422230032384 +7410096605330227200 38 38 1 1987336880 1 7410096605330227200 +7410872053689794560 -38 -38 1 -916344293 1 7410872053689794560 +7411793502161182720 -5 -5 1 -177025818 1 7411793502161182720 +7412924364686458880 -123 -123 1 1817671655 1 7412924364686458880 +7414865343000322048 48 48 1 -829717122 1 7414865343000322048 +7418271723644403712 56 56 1 1202593021 1 7418271723644403712 +743 18 18 1 1004241194 1 743 +7432428551399669760 23 23 1 -805288503 1 7432428551399669760 +7432998950057975808 59 59 1 -434656160 1 7432998950057975808 +7436133434239229952 112 112 1 203688965 1 7436133434239229952 +7440265908266827776 NULL NULL 1 -1425942083 1 7440265908266827776 +7450416810848313344 0 0 1 1393262450 1 7450416810848313344 +7452756603516190720 110 110 1 -2009569943 1 7452756603516190720 +7454442625055145984 80 80 1 -267554590 1 7454442625055145984 +7454632396542074880 -97 -97 1 859140926 1 7454632396542074880 +7461153404961128448 -33 -33 1 -23865350 1 7461153404961128448 +7471208109437304832 -110 -110 1 -1603374745 1 7471208109437304832 +7473537548003352576 35 35 1 -1439424023 1 7473537548003352576 +7486884806277611520 -87 -87 1 1516236846 1 7486884806277611520 +7487338208419823616 59 59 1 1974939899 1 7487338208419823616 +7487538600082554880 -32 -32 1 2068538934 1 7487538600082554880 +7490717730239250432 64 64 1 -1829691116 1 7490717730239250432 +7491898395977523200 -43 -43 1 1265528735 1 7491898395977523200 +7492436934952574976 -98 -98 1 NULL 0 7492436934952574976 +7497276415392407552 122 122 1 1543611951 1 7497276415392407552 +7497306924248834048 -78 -78 1 550594651 1 7497306924248834048 +7500716020874674176 11 11 1 -1953605752 1 7500716020874674176 +7514552840617558016 59 59 1 334208532 1 7514552840617558016 +7517159036469575680 58 58 1 -1437126017 1 7517159036469575680 +7524958388842078208 -78 -78 1 -664856187 1 7524958388842078208 +7528074274555305984 100 100 1 550186724 1 7528074274555305984 +7528211148397944832 33 33 1 -512198016 1 7528211148397944832 +7534042483076857856 -59 -59 1 1645753684 1 7534042483076857856 +7534145866886782976 54 54 1 -532755480 1 7534145866886782976 +7534549597202194432 70 70 1 2044130430 1 7534549597202194432 +7545689659010949120 -33 -33 1 -1380678829 1 7545689659010949120 +7548958830580563968 119 119 1 1836499981 1 7548958830580563968 +7549858023389003776 53 53 1 NULL 0 7549858023389003776 +7555301305375858688 -105 -105 1 1916363472 1 7555301305375858688 +7566273236152721408 -13 -13 1 881673558 1 7566273236152721408 +7569249672628789248 -113 -113 1 -1952235832 1 7569249672628789248 +7570474972934488064 50 50 1 -432218419 1 7570474972934488064 +7573530789362262016 7 7 1 NULL 0 7573530789362262016 +7575087487730196480 15 15 1 1421779455 1 7575087487730196480 +7581052107944361984 -37 -37 1 1493152791 1 7581052107944361984 +7581614118458335232 -77 -77 1 -1129489281 1 7581614118458335232 +7584007864107778048 41 41 1 1410516523 1 7584007864107778048 +7592440105065308160 85 85 1 NULL 0 7592440105065308160 +7593521922173419520 37 37 1 1260480653 1 7593521922173419520 +7596563216912211968 -44 -44 1 605946758 1 7596563216912211968 +7599019810193211392 94 94 1 -2112149052 1 7599019810193211392 +7608447395949109248 -119 -119 1 882762933 1 7608447395949109248 +7614435638888210432 -113 -113 1 735600165 1 7614435638888210432 +7620183559667081216 -20 -20 1 -1967660827 1 7620183559667081216 +7621013099259527168 -59 -59 1 -553349593 1 7621013099259527168 +7625728883085025280 -92 -92 1 -1699044525 1 7625728883085025280 +7626715182847090688 -77 -77 1 1905812339 1 7626715182847090688 +763 -31 -31 1 -1933374662 1 763 +7637152193832886272 -33 -33 1 1880017800 1 7637152193832886272 +7647481735646363648 7 7 1 1164895226 1 7647481735646363648 +7648729477297987584 2 2 1 NULL 0 7648729477297987584 +7652123583449161728 66 66 1 472901914 1 7652123583449161728 +7659279803863146496 31 31 1 1541249928 1 7659279803863146496 +7662037650719850496 -100 -100 1 -175727228 1 7662037650719850496 +7675009476762918912 23 23 1 522895626 1 7675009476762918912 +7678790769408172032 -69 -69 1 -1313618168 1 7678790769408172032 +7682327310082531328 -12 -12 1 879500678 1 7682327310082531328 +7686992843032010752 -77 -77 1 -897622427 1 7686992843032010752 +7689489436826804224 33 33 1 -909127123 1 7689489436826804224 +7690986322714066944 -41 -41 1 -2124994385 1 7690986322714066944 +7691062622443044864 98 98 1 1516165279 1 7691062622443044864 +7696737688942567424 -18 -18 1 -269702086 1 7696737688942567424 +7697541332524376064 -96 -96 1 -1070951602 1 7697541332524376064 +7700734109530767360 -60 -60 1 194754262 1 7700734109530767360 +7701723309715685376 101 101 1 -1831957182 1 7701723309715685376 +7705445437881278464 47 47 1 527598540 1 7705445437881278464 +7710447533880614912 61 61 1 -583908704 1 7710447533880614912 +7718825401976684544 -22 -22 1 -1226425562 1 7718825401976684544 +7720187583697502208 -72 -72 1 -1366059787 1 7720187583697502208 +7731443941834678272 -112 -112 1 -1092872261 1 7731443941834678272 +7735566678126616576 -28 -28 1 1626868156 1 7735566678126616576 +774 -114 -114 1 449788961 1 774 +7741854854673367040 93 93 1 -1743938290 1 7741854854673367040 +7746402369011277824 -50 -50 1 -1735287250 1 7746402369011277824 +7747874976739016704 89 89 1 315055746 1 7747874976739016704 +7748799008146366464 85 85 1 -540401598 1 7748799008146366464 +7752740515534422016 NULL NULL 1 1851654062 1 7752740515534422016 +7753359568986636288 -81 -81 1 -816661030 1 7753359568986636288 +7753882935005880320 16 16 1 1190302173 1 7753882935005880320 +7761834341179375616 90 90 1 1273877405 1 7761834341179375616 +7762823913046556672 123 123 1 1198701102 1 7762823913046556672 +7765456790394871808 -98 -98 1 1074488452 1 7765456790394871808 +7768984605670604800 116 116 1 NULL 0 7768984605670604800 +7775034125776363520 -90 -90 1 -1628799508 1 7775034125776363520 +7778936842502275072 17 17 1 -1702587308 1 7778936842502275072 +7779486624537370624 124 124 1 -1998652546 1 7779486624537370624 +7779735136559579136 120 120 1 -1228063838 1 7779735136559579136 +7782245855193874432 73 73 1 618991041 1 7782245855193874432 +7784169796350730240 120 120 1 -958165276 1 7784169796350730240 +7784489776013295616 5 5 1 -158848747 1 7784489776013295616 +779 62 62 1 -1939362279 1 779 +7790728456522784768 -23 -23 1 1575091509 1 7790728456522784768 +7792036342592348160 36 36 1 -538812082 1 7792036342592348160 +7794244032613703680 90 90 1 1301426600 1 7794244032613703680 +78 -19 -19 1 95356298 1 78 +780 103 103 1 -737624128 1 780 +7800332581637259264 123 123 1 592011541 1 7800332581637259264 +7801697837312884736 -41 -41 1 -116484575 1 7801697837312884736 +7818464507324121088 92 92 1 -2119724898 1 7818464507324121088 +782 -56 -56 1 -1552053883 1 782 +7823874904139849728 -125 -125 1 344239980 1 7823874904139849728 +784 75 75 1 44595790 1 784 +7843804446688264192 -6 -6 1 -397951021 1 7843804446688264192 +7844258063629852672 -1 -1 1 972835688 1 7844258063629852672 +7845953007588401152 120 120 1 NULL 0 7845953007588401152 +7857878068300898304 -50 -50 1 977624089 1 7857878068300898304 +7868367829080506368 56 56 1 658008867 1 7868367829080506368 +7870277756614623232 -105 -105 1 985634256 1 7870277756614623232 +7871189141676998656 79 79 1 1363568842 1 7871189141676998656 +7871554728617025536 6 6 1 -309571354 1 7871554728617025536 +7874764415950176256 NULL NULL 1 2127682701 1 7874764415950176256 +7885697257930588160 NULL NULL 1 1992977592 1 7885697257930588160 +7888238729321496576 124 124 1 978044705 1 7888238729321496576 +789 -119 -119 1 NULL 0 789 +7892026679115554816 22 22 1 626941809 1 7892026679115554816 +7892281003266408448 46 46 1 -371779520 1 7892281003266408448 +7898670840507031552 98 98 1 776459017 1 7898670840507031552 +7909645665163804672 -109 -109 1 -1289665817 1 7909645665163804672 +7917494645725765632 -61 -61 1 2076370203 1 7917494645725765632 +7919597361814577152 70 70 1 2125311222 1 7919597361814577152 +7921639119138070528 112 112 1 -1030565036 1 7921639119138070528 +7922443154272395264 39 39 1 -1333770335 1 7922443154272395264 +7926898770090491904 85 85 1 1582537271 1 7926898770090491904 +7933040277013962752 121 121 1 -1061222139 1 7933040277013962752 +7936149988210212864 -27 -27 1 1769324649 1 7936149988210212864 +7944741547145502720 0 0 1 372099650 1 7944741547145502720 +7947544013461512192 -52 -52 1 -1184620079 1 7947544013461512192 +7948803266578161664 -69 -69 1 1766517223 1 7948803266578161664 +7955126053367119872 -8 -8 1 1447438548 1 7955126053367119872 +7961515985722605568 NULL NULL 1 866084887 1 7961515985722605568 +7961909238130270208 85 85 1 -1138530007 1 7961909238130270208 +797 87 87 1 996831203 1 797 +7983789401706094592 -14 -14 1 230954385 1 7983789401706094592 +7989119273552158720 -55 -55 1 NULL 0 7989119273552158720 +7989160253372817408 -58 -58 1 1848935036 1 7989160253372817408 +7997694023324975104 -116 -116 1 -1826997220 1 7997694023324975104 +7998357471114969088 84 84 1 346562088 1 7998357471114969088 +7998687089080467456 -50 -50 1 NULL 0 7998687089080467456 +80 105 105 1 NULL 0 80 +8000440057238052864 111 111 1 1251556414 1 8000440057238052864 +8002769767000145920 -106 -106 1 1668446119 1 8002769767000145920 +8004633750273925120 21 21 1 -1754203978 1 8004633750273925120 +8011181697250631680 -73 -73 1 1773417290 1 8011181697250631680 +8011602724663336960 -98 -98 1 667283966 1 8011602724663336960 +8014986215157530624 -117 -117 1 -799249885 1 8014986215157530624 +8017403886247927808 35 35 1 -1491722659 1 8017403886247927808 +803 96 96 1 -2096425960 1 803 +8045070943673671680 68 68 1 435407142 1 8045070943673671680 +8048726769133592576 -30 -30 1 -406264741 1 8048726769133592576 +8059284960252731392 -57 -57 1 -251576563 1 8059284960252731392 +8069531888205086720 43 43 1 1978171687 1 8069531888205086720 +8071961599867387904 105 105 1 52667480 1 8071961599867387904 +8073733016154431488 52 52 1 1815882183 1 8073733016154431488 +8079573715140485120 -49 -49 1 503752931 1 8079573715140485120 +808 -5 -5 1 -1836166334 1 808 +8087737899452432384 -1 -1 1 -2137168636 1 8087737899452432384 +809 28 28 1 -682333536 1 809 +8091421389575282688 91 91 1 NULL 0 8091421389575282688 +8099215208813903872 -39 -39 1 492968645 1 8099215208813903872 +8100036735858401280 54 54 1 -146961490 1 8100036735858401280 +8109381965028548608 -121 -121 1 2022944702 1 8109381965028548608 +8111757081791733760 -79 -79 1 -234758376 1 8111757081791733760 +8113585123802529792 67 67 1 129675822 1 8113585123802529792 +8116738401948377088 89 89 1 1914993018 1 8116738401948377088 +812 71 71 1 -954480325 1 812 +8120593157178228736 -50 -50 1 -1379039356 1 8120593157178228736 +8129551357032259584 40 40 1 323817967 1 8129551357032259584 +8135164922674872320 51 51 1 -1459528251 1 8135164922674872320 +8142241016679735296 96 96 1 -163859725 1 8142241016679735296 +8143462899383345152 37 37 1 644934949 1 8143462899383345152 +8144552446127972352 -103 -103 1 2083836439 1 8144552446127972352 +8145745969573666816 -88 -88 1 467753905 1 8145745969573666816 +8145750910080745472 -6 -6 1 1275228381 1 8145750910080745472 +8146288732715196416 87 87 1 -728015067 1 8146288732715196416 +8146492373537660928 94 94 1 1316369941 1 8146492373537660928 +8148211378319933440 -8 -8 1 NULL 0 8148211378319933440 +815 74 74 1 1910930064 1 815 +8150115791664340992 -109 -109 1 793047956 1 8150115791664340992 +8156018594610790400 -49 -49 1 1384071499 1 8156018594610790400 +8156782979767238656 63 63 1 -1651993300 1 8156782979767238656 +8160569434550403072 -90 -90 1 -1808960215 1 8160569434550403072 +8160662610166194176 12 12 1 -310584775 1 8160662610166194176 +8163948965373386752 0 0 1 1968813171 1 8163948965373386752 +8168742078705262592 -50 -50 1 -303747347 1 8168742078705262592 +8169878743136043008 76 76 1 1765874562 1 8169878743136043008 +8171188598958407680 NULL NULL 1 1996235654 1 8171188598958407680 +8183233196086214656 57 57 1 1450881368 1 8183233196086214656 +8184799300477943808 -68 -68 1 -579916775 1 8184799300477943808 +8190539859890601984 12 12 1 1418228573 1 8190539859890601984 +8190967051000659968 42 42 1 604460005 1 8190967051000659968 +8192304692696383488 95 95 1 494570380 1 8192304692696383488 +8195103847607967744 58 58 1 15020431 1 8195103847607967744 +8199513544090730496 -50 -50 1 758926227 1 8199513544090730496 +820 125 21 2 337231116 2 820 +8201303040648052736 -52 -52 1 -774406989 1 8201303040648052736 +8201491077550874624 NULL NULL 1 1677197847 1 8201491077550874624 +8208354137450766336 -55 -55 1 1377144283 1 8208354137450766336 +8210813831744118784 -46 -46 1 139661585 1 8210813831744118784 +8213810702473183232 -83 -83 1 587797446 1 8213810702473183232 +8219326436390821888 -57 -57 1 2064448036 1 8219326436390821888 +8220104397160169472 -50 -50 1 -1274158260 1 8220104397160169472 +8221561626658881536 -29 -29 1 -1626062014 1 8221561626658881536 +8222714144797368320 -78 -78 1 -318380015 1 8222714144797368320 +8223732800007864320 -91 -91 1 -599396052 1 8223732800007864320 +823 96 96 1 1660088606 1 823 +8230371298967609344 57 57 1 1660278264 1 8230371298967609344 +8235179243092090880 -78 -78 1 187893585 1 8235179243092090880 +8244041599171862528 -111 -111 1 402173272 1 8244041599171862528 +8254763178969915392 -80 -80 1 658850444 1 8254763178969915392 +8268875586442256384 -104 -104 1 1271280812 1 8268875586442256384 +8269730157217062912 7 7 1 127051381 1 8269730157217062912 +8272001752345690112 -118 -118 1 3999930 1 8272001752345690112 +8279056098670198784 -115 -115 1 2133492883 1 8279056098670198784 +8282648443538710528 0 0 1 -402441123 1 8282648443538710528 +8283099811330506752 73 73 1 737149747 1 8283099811330506752 +8286706213485297664 3 3 1 -916495008 1 8286706213485297664 +8287522765741301760 45 45 1 -1817564067 1 8287522765741301760 +8290014929764040704 -124 -124 1 -1424027104 1 8290014929764040704 +8290944180915871744 20 20 1 684561551 1 8290944180915871744 +8294315622451740672 70 70 1 -43858652 1 8294315622451740672 +8295110846998233088 -107 -107 1 -1945738830 1 8295110846998233088 +83 11 11 1 -684022323 1 83 +8302473563519950848 69 69 1 -1524081566 1 8302473563519950848 +8316336224427483136 84 84 1 345556325 1 8316336224427483136 +8323460620425330688 -43 -43 1 -1524554771 1 8323460620425330688 +8325227661920133120 -61 -61 1 -178568841 1 8325227661920133120 +8332670681629106176 -65 -65 1 -314935936 1 8332670681629106176 +8333523087360901120 23 23 1 -442732016 1 8333523087360901120 +8337549596011102208 -127 -127 1 904604938 1 8337549596011102208 +8345435427356090368 -88 -88 1 323919214 1 8345435427356090368 +835 30 30 1 -1054609414 1 835 +8351163199364390912 -48 -48 1 391186487 1 8351163199364390912 +8362046808797306880 45 45 1 89366322 1 8362046808797306880 +8365058996333953024 62 62 1 -2043805661 1 8365058996333953024 +8367680396909404160 14 14 1 -1269216718 1 8367680396909404160 +8368012468775608320 -98 -98 1 -1665164127 1 8368012468775608320 +837 74 74 1 170870820 1 837 +8371939471056470016 -29 -29 1 826143442 1 8371939471056470016 +8372408423196270592 73 73 1 564349193 1 8372408423196270592 +8372588378498777088 62 62 1 1321678350 1 8372588378498777088 +8374321007870836736 46 46 1 -329336519 1 8374321007870836736 +8376440110255243264 -58 -58 1 1665724041 1 8376440110255243264 +8383159090746204160 NULL NULL 1 605141554 1 8383159090746204160 +8388363436324085760 -120 -120 1 -707108808 1 8388363436324085760 +8391407951622815744 107 107 1 NULL 0 8391407951622815744 +8391785334471589888 -72 -72 1 -630900418 1 8391785334471589888 +8396433451610652672 -7 -7 1 -180280420 1 8396433451610652672 +8398862954249560064 -48 -48 1 669871113 1 8398862954249560064 +8407869317250220032 -55 -55 1 -1240912824 1 8407869317250220032 +8410599906334097408 -6 -6 1 -1606567895 1 8410599906334097408 +8411494452500930560 13 13 1 -1568646283 1 8411494452500930560 +8415171956168417280 -111 -111 1 541118710 1 8415171956168417280 +8416121695917498368 93 93 1 63706286 1 8416121695917498368 +8417381121663746048 55 55 1 1458051497 1 8417381121663746048 +8419958579638157312 -114 -114 1 -99916247 1 8419958579638157312 +8424515140664360960 -111 -111 1 1847210729 1 8424515140664360960 +8435912708683087872 -52 -52 1 -2081809883 1 8435912708683087872 +845 NULL NULL 1 -1026746699 1 845 +8451612303224520704 -113 -113 1 -971203543 1 8451612303224520704 +8454154705460666368 12 12 1 -1421396891 1 8454154705460666368 +8455496814886002688 68 68 1 107680423 1 8455496814886002688 +8457906374051020800 -98 -98 1 106847364 1 8457906374051020800 +8461498293348065280 49 49 1 1636364987 1 8461498293348065280 +8463868417649524736 -81 -81 1 -1643714866 1 8463868417649524736 +8467976965865799680 22 22 1 916057807 1 8467976965865799680 +8470141334513098752 -8 -8 1 NULL 0 8470141334513098752 +8472429318602268672 NULL NULL 1 -308225568 1 8472429318602268672 +8473699639908261888 -86 -86 1 -591879497 1 8473699639908261888 +8487573502287478784 -8 -8 1 1895282160 1 8487573502287478784 +8489584373231919104 -22 -22 1 1416850873 1 8489584373231919104 +8489735221193138176 -89 -89 1 -1124028213 1 8489735221193138176 +85 -91 -91 1 -913906252 1 85 +8501910015960735744 19 19 1 1579460630 1 8501910015960735744 +8508401924853850112 108 108 1 -1578387726 1 8508401924853850112 +8509508263705477120 -103 -103 1 1107757211 1 8509508263705477120 +8514851182589771776 52 52 1 415234946 1 8514851182589771776 +8514979402185596928 -77 -77 1 1902676205 1 8514979402185596928 +8515682078777081856 98 98 1 -1026458834 1 8515682078777081856 +8518454006987948032 -78 -78 1 -379174037 1 8518454006987948032 +8519937082746634240 -3 -3 1 -1745449855 1 8519937082746634240 +8523972434954510336 -52 -52 1 2134433675 1 8523972434954510336 +8524940073536954368 52 52 1 476858779 1 8524940073536954368 +8525336514806317056 119 119 1 350802495 1 8525336514806317056 +8525894870444638208 13 13 1 1216287232 1 8525894870444638208 +8532016240026279936 -67 -67 1 -1726585032 1 8532016240026279936 +8536948829863198720 100 100 1 1723691683 1 8536948829863198720 +8540237852367446016 92 92 1 398960205 1 8540237852367446016 +8543177193114779648 51 51 1 2048533360 1 8543177193114779648 +8547243497773457408 42 42 1 -534991774 1 8547243497773457408 +8551446856960942080 72 72 1 -1312782341 1 8551446856960942080 +8553195689344991232 45 45 1 566646177 1 8553195689344991232 +8554899472487596032 -24 -24 1 -491882534 1 8554899472487596032 +8555933456197828608 29 29 1 NULL 0 8555933456197828608 +8555948987770511360 -54 -54 1 107941738 1 8555948987770511360 +8557218322962644992 42 42 1 -1210550573 1 8557218322962644992 +8558000156325707776 6 6 1 -370901197 1 8558000156325707776 +8560526613401714688 17 17 1 1592467112 1 8560526613401714688 +8569030475428511744 -55 -55 1 1743671220 1 8569030475428511744 +8570983266408103936 106 106 1 950545385 1 8570983266408103936 +8571268359622172672 119 119 1 1187495452 1 8571268359622172672 +8573305425181941760 115 115 1 1583280136 1 8573305425181941760 +8577096957495025664 125 125 1 NULL 0 8577096957495025664 +8579974641030365184 -97 -97 1 -1545388906 1 8579974641030365184 +8583916402383601664 56 56 1 -733239404 1 8583916402383601664 +8613562211893919744 98 98 1 -1109134719 1 8613562211893919744 +8625937019655200768 -104 -104 1 272086526 1 8625937019655200768 +8631515095562887168 -77 -77 1 -1244527286 1 8631515095562887168 +8637720762289659904 1 1 1 1669519977 1 8637720762289659904 +8639254009546055680 NULL NULL 1 477584560 1 8639254009546055680 +8641221723991433216 -46 -46 1 -1531040609 1 8641221723991433216 +8643198489997254656 94 94 1 -1079086534 1 8643198489997254656 +8644602243484803072 79 79 1 -1218592418 1 8644602243484803072 +8649296591032172544 -92 -92 1 -1744964279 1 8649296591032172544 +8652485812846567424 42 42 1 1372705672 1 8652485812846567424 +8656571350884048896 -19 -19 1 NULL 0 8656571350884048896 +8660248367767076864 -122 -122 1 1520375588 1 8660248367767076864 +8665969966920990720 -105 -105 1 1372982791 1 8665969966920990720 +8666178591503564800 -104 -104 1 -1565785026 1 8666178591503564800 +8677632093825916928 21 21 1 2040926345 1 8677632093825916928 +8677794924343164928 123 123 1 115470151 1 8677794924343164928 +868 NULL NULL 1 -2133145181 1 868 +8682955459667951616 96 96 1 2009215103 1 8682955459667951616 +8687042963221159936 -61 -61 1 -870624802 1 8687042963221159936 +8688483860094599168 -96 -96 1 -273937943 1 8688483860094599168 +8693036785094565888 41 41 1 2090496825 1 8693036785094565888 +8697823501349609472 -2 -2 1 922553769 1 8697823501349609472 +8698055291501543424 71 71 1 -1755088362 1 8698055291501543424 +8708232769657815040 -13 -13 1 6526476 1 8708232769657815040 +8708845895460577280 -34 -34 1 1860113703 1 8708845895460577280 +871 -31 -31 1 915505006 1 871 +8714829359200747520 -11 -11 1 672919099 1 8714829359200747520 +8716401555586727936 92 92 1 -789126455 1 8716401555586727936 +8720504651219001344 -93 -93 1 825677248 1 8720504651219001344 +8723248113030782976 -8 -8 1 144499388 1 8723248113030782976 +873 8 8 1 842283345 1 873 +8731960288562044928 15 15 1 869288953 1 8731960288562044928 +8734584858442498048 -71 -71 1 -946830673 1 8734584858442498048 +8736061027343859712 79 79 1 -1974972123 1 8736061027343859712 +874 NULL NULL 1 58313734 1 874 +8752150411997356032 -97 -97 1 -1502924486 1 8752150411997356032 +8759089349412847616 NULL NULL 1 1972940844 1 8759089349412847616 +8759184090543857664 -2 -2 1 435426302 1 8759184090543857664 +8760285623204290560 100 100 1 -573787626 1 8760285623204290560 +8761174805938331648 -114 -114 1 1205391962 1 8761174805938331648 +8769199243315814400 -123 -123 1 2100377172 1 8769199243315814400 +8773222500321361920 -74 -74 1 217823040 1 8773222500321361920 +8775009214012456960 113 113 1 -213198503 1 8775009214012456960 +8779073705407963136 -75 -75 1 -1979314577 1 8779073705407963136 +8779711700787298304 71 71 1 -859535015 1 8779711700787298304 +878 106 106 1 290601612 1 878 +8780196485890555904 48 48 1 -607285491 1 8780196485890555904 +8782900615468302336 88 88 1 -1411407810 1 8782900615468302336 +8783241818558193664 -102 -102 1 -714270951 1 8783241818558193664 +8785153741735616512 -107 -107 1 1028092807 1 8785153741735616512 +8792059919353348096 41 41 1 -745678338 1 8792059919353348096 +8793387410919038976 -73 -73 1 -1058166020 1 8793387410919038976 +8795069490394882048 6 6 1 1366402722 1 8795069490394882048 +8806507556248731648 89 89 1 1190554937 1 8806507556248731648 +8808467247666241536 59 59 1 -1706867123 1 8808467247666241536 +8811693967537774592 NULL NULL 1 1731764471 1 8811693967537774592 +8815398225009967104 103 103 1 -1701502632 1 8815398225009967104 +8817665768680906752 -82 -82 1 1550375386 1 8817665768680906752 +8822384228057604096 85 85 1 -1371840597 1 8822384228057604096 +8825059717746376704 75 75 1 872554087 1 8825059717746376704 +8829545979081744384 90 90 1 NULL 0 8829545979081744384 +883 62 62 1 -1554130090 1 883 +8836228556823977984 49 49 1 1499399891 1 8836228556823977984 +8837420822750314496 -23 -23 1 2052773366 1 8837420822750314496 +8849475396952514560 -28 -28 1 718692886 1 8849475396952514560 +8850055384477401088 21 21 1 1503176016 1 8850055384477401088 +8853989376829833216 82 82 1 -1505397109 1 8853989376829833216 +8854495099223375872 -49 -49 1 2065408093 1 8854495099223375872 +8854677881758162944 NULL NULL 1 1883400319 1 8854677881758162944 +8854715632851345408 49 49 1 1301997393 1 8854715632851345408 +8856674723376668672 NULL NULL 1 -4943292 1 8856674723376668672 +8868529429494071296 52 52 1 1830870769 1 8868529429494071296 +8871707618793996288 23 23 1 -677778959 1 8871707618793996288 +8875745082589929472 -50 -50 1 -1460613213 1 8875745082589929472 +888 -6 -6 1 1012696613 1 888 +8895174927321243648 -57 -57 1 -522450861 1 8895174927321243648 +8896237972875370496 -54 -54 1 1540680149 1 8896237972875370496 +8897901899039473664 39 39 1 -535056977 1 8897901899039473664 +8899122608190930944 124 124 1 -2146432765 1 8899122608190930944 +8900180888218329088 87 87 1 -1058356124 1 8900180888218329088 +8900351886974279680 -83 -83 1 1000106109 1 8900351886974279680 +8900545829211299840 -102 -102 1 352214248 1 8900545829211299840 +8905330479248064512 46 46 1 NULL 0 8905330479248064512 +8910706980937261056 118 118 1 1166237779 1 8910706980937261056 +8920344895701393408 81 81 1 -1126628450 1 8920344895701393408 +8920533610804609024 84 84 1 1739911574 1 8920533610804609024 +8927691194719174656 76 76 1 -917062754 1 8927691194719174656 +8928133990107881472 -70 -70 1 -1511162508 1 8928133990107881472 +8935252708196999168 97 97 1 1603612975 1 8935252708196999168 +8936639033158410240 -57 -57 1 -1305139473 1 8936639033158410240 +8939431770838810624 -108 -108 1 -934008333 1 8939431770838810624 +8945004737083555840 15 15 1 252169185 1 8945004737083555840 +8945302550165004288 -116 -116 1 1117805438 1 8945302550165004288 +8962097525980225536 NULL NULL 1 -329695030 1 8962097525980225536 +8972161729142095872 90 90 1 1709983738 1 8972161729142095872 +8979012655944220672 -16 -16 1 -120692484 1 8979012655944220672 +898 56 32 2 104527563 2 898 +8983857919580209152 16 16 1 1273798925 1 8983857919580209152 +8983912573761167360 -95 -95 1 NULL 0 8983912573761167360 +8984935029383389184 -96 -96 1 -1565671389 1 8984935029383389184 +8987827141270880256 -42 -42 1 -1024500955 1 8987827141270880256 +8991071342495531008 -59 -59 1 -574475259 1 8991071342495531008 +8991442360387584000 -10 -10 1 2081243058 1 8991442360387584000 +8994608999945125888 113 113 1 -839512271 1 8994608999945125888 +8995562121346260992 2 2 1 -618505946 1 8995562121346260992 +8996824426131390464 0 0 1 -214166042 1 8996824426131390464 +9000633029632499712 -35 -35 1 -641062448 1 9000633029632499712 +9001907486943993856 NULL NULL 1 -1974257754 1 9001907486943993856 +9005866015985713152 -98 -98 1 652118640 1 9005866015985713152 +9016280522993975296 -8 -8 1 388707554 1 9016280522993975296 +9020143715350814720 4 4 1 NULL 0 9020143715350814720 +9023663198045544448 0 0 1 1145627305 1 9023663198045544448 +9030480306789818368 -91 -91 1 -758973175 1 9030480306789818368 +9038087402564657152 74 74 1 NULL 0 9038087402564657152 +9040958359122640896 -48 -48 1 -1635301453 1 9040958359122640896 +9043089884440068096 33 33 1 -1527024213 1 9043089884440068096 +9048002942653710336 -15 -15 1 -1079231269 1 9048002942653710336 +9048297564833079296 7 7 1 -1534307678 1 9048297564833079296 +9050032047355125760 -52 -52 1 -1240048334 1 9050032047355125760 +9053187076403060736 73 73 1 1075444504 1 9053187076403060736 +9054887854393950208 75 75 1 -1517536924 1 9054887854393950208 +9062227900376203264 30 30 1 1260101584 1 9062227900376203264 +9064847977742032896 3 3 1 -1849091666 1 9064847977742032896 +9067985867711291392 126 126 1 43672187 1 9067985867711291392 +9073672806863790080 116 116 1 -2144241640 1 9073672806863790080 +9075404705968840704 -17 -17 1 712816880 1 9075404705968840704 +9078604269481148416 90 90 1 -298221893 1 9078604269481148416 +908 -73 -73 1 266601601 1 908 +9083076230151864320 126 126 1 2111462911 1 9083076230151864320 +9083704659251798016 57 57 1 -1359838019 1 9083704659251798016 +9084402694981533696 52 52 1 NULL 0 9084402694981533696 +9085381906890203136 71 71 1 -240529113 1 9085381906890203136 +9085434340468473856 -1 -1 1 76381404 1 9085434340468473856 +9086905513121890304 -126 -126 1 1796013407 1 9086905513121890304 +9089435102788009984 11 11 1 2102440065 1 9089435102788009984 +9091082386452684800 70 70 1 748185058 1 9091082386452684800 +9091085792947666944 64 64 1 254921167 1 9091085792947666944 +9094945190752903168 -19 -19 1 2126491387 1 9094945190752903168 +9096395849845194752 -122 -122 1 100270148 1 9096395849845194752 +91 -21 -21 1 -1288198020 1 91 +9104574294205636608 -20 -20 1 1257621270 1 9104574294205636608 +9107991000536498176 30 30 1 -847235873 1 9107991000536498176 +9112400579327483904 -65 -65 1 1111985530 1 9112400579327483904 +9114850402293882880 107 107 1 1571267481 1 9114850402293882880 +9116137265342169088 NULL NULL 1 -236700442 1 9116137265342169088 +9117063974299148288 42 42 1 -297664578 1 9117063974299148288 +9119046173224370176 -94 -94 1 1604076720 1 9119046173224370176 +9123116008004288512 NULL NULL 1 1882932986 1 9123116008004288512 +913 -62 -62 1 1845797092 1 913 +9131533983989358592 4 4 1 -1234163924 1 9131533983989358592 +9132009829414584320 107 107 1 -1856034030 1 9132009829414584320 +9136234417125007360 -71 -71 1 NULL 0 9136234417125007360 +9136548192574529536 44 44 1 1121512594 1 9136548192574529536 +9139805788041134080 -45 -45 1 881396599 1 9139805788041134080 +914 -91 -91 1 -1257859205 1 914 +9148071980848742400 -77 -77 1 1370723240 1 9148071980848742400 +9149216169284091904 -72 -72 1 -694520014 1 9149216169284091904 +9165199002069458944 -6 -6 1 430686478 1 9165199002069458944 +9169248521377374208 86 86 1 1566958573 1 9169248521377374208 +917 25 25 1 -2076460151 1 917 +9174894805640142848 -94 -94 1 1336842978 1 9174894805640142848 +918 -105 -105 1 1359437295 1 918 +9180098147855769600 111 111 1 1950882901 1 9180098147855769600 +9182828596851990528 -87 -87 1 -1012329052 1 9182828596851990528 +9185458640237641728 -6 -6 1 -1011125931 1 9185458640237641728 +9185952983951343616 -68 -68 1 889733679 1 9185952983951343616 +9188173682239275008 50 50 1 -1248781172 1 9188173682239275008 +919 120 120 1 -357680544 1 919 +9190466190353661952 14 14 1 1918230406 1 9190466190353661952 +9191943992860327936 22 22 1 -595769210 1 9191943992860327936 +9194388393453060096 -11 -11 1 1002519329 1 9194388393453060096 +9199741683232399360 -125 -125 1 -1096771844 1 9199741683232399360 +9207107990561972224 122 122 1 -765190882 1 9207107990561972224 +9207927479837319168 116 116 1 2066707767 1 9207927479837319168 +9209153648361848832 77 77 1 471464395 1 9209153648361848832 +921 92 92 1 1238986437 1 921 +9211455920344088576 54 54 1 166320811 1 9211455920344088576 +922 28 28 1 932774185 1 922 +923 -37 -37 1 -1506324615 1 923 +927 84 84 1 1044196568 1 927 +928 -9 -9 1 413090363 1 928 +939 -31 -31 1 -982238309 1 939 +94 87 87 1 NULL 0 94 +945 -43 -43 1 219415594 1 945 +947 -85 -85 1 -896274896 1 947 +950 37 45 2 -3606362766 2 950 +958 46 46 1 NULL 0 958 +961 -27 -27 1 1805139501 1 961 +965 125 125 1 1336951982 1 965 +967 -57 -57 1 -1240208945 1 967 +976 72 72 1 -1563676282 1 976 +979 123 123 1 1022214896 1 979 +982 -98 -98 1 -835198551 1 982 +987 NULL NULL 1 1807877618 1 987 +997 -14 -14 1 -742707249 1 997 +999 107 107 1 -346607939 1 999 +NULL 127 -1065 83 -9784926725 80 NULL