diff --git a/src/java/alering-node-new/src/main/resources/MetricSubcriberConfig.yaml b/src/java/alering-node-new/src/main/resources/MetricSubcriberConfig.yaml deleted file mode 100644 index 04d6fcb..0000000 --- a/src/java/alering-node-new/src/main/resources/MetricSubcriberConfig.yaml +++ /dev/null @@ -1,3 +0,0 @@ -info: - batch-size: 20 - retries: 3 \ No newline at end of file diff --git a/src/java/alering-node-new/src/test/java/MetricClientTest.java b/src/java/alering-node-new/src/test/java/MetricClientTest.java index 8a9aef7..66c2787 100644 --- a/src/java/alering-node-new/src/test/java/MetricClientTest.java +++ b/src/java/alering-node-new/src/test/java/MetricClientTest.java @@ -56,32 +56,32 @@ public class MetricClientTest { // // static void setupClient() throws IOException { // context = new RealAlertingDriverContext("/dev/shm/aeron"); -// Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricProducerConfig.yaml")); +// Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricClientTest/MetricProducerConfig.yaml")); // // MetricProducer clientMetricProducer = new MetricProducer(metricProducer); -// Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ClientProducerConfig.yaml")); -// Subscriber clientConsumer = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/ClientConsumerConfig.yaml")); +// Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricClientTest/ClientProducerConfig.yaml")); +// Subscriber clientConsumer = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/MetricClientTest/ClientConsumerConfig.yaml")); // // MetricRegistry.initialize(clientProducer, clientConsumer, clientMetricProducer, context); // metricRegistry = MetricRegistry.getInstance(); // // alertSubscriber = new AlertSubscriberTest(new Subscriber(context, -// ConfigReader.readConsumerFromFile("src/test/resources/AlertConsumerConfig.yaml")), +// ConfigReader.readSubscriberFromFile("src/test/resources/MetricClientTest/AlertConsumerConfig.yaml")), // alertId, metricId, alertValue, alertTimestamp); // alertSubscriber.start(); // } // // static void setupServer() { -// serverProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ServerProducerConfig.yaml")); -// serverSubscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/ServerConsumerConfig.yaml")); +// serverProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricClientTest/ServerProducerConfig.yaml")); +// serverSubscriber = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/MetricClientTest/ServerConsumerConfig.yaml")); // -// alertNodeProducer1 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/AlertNodeProducerConfig1.yaml")); -// alertNodeProducer2 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/AlertNodeProducerConfig2.yaml")); -// alertNodeSubscriber1 = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/AlertNodeConsumerConfig1.yaml")); -// alertNodeSubscriber2 = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/AlertNodeConsumerConfig2.yaml")); +// alertNodeProducer1 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricClientTest/AlertNodeProducerConfig1.yaml")); +// alertNodeProducer2 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricClientTest/AlertNodeProducerConfig2.yaml")); +// alertNodeSubscriber1 = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/MetricClientTest/AlertNodeConsumerConfig1.yaml")); +// alertNodeSubscriber2 = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/MetricClientTest/AlertNodeConsumerConfig2.yaml")); // } // -// @BeforeAll +// @BeforeAllConsumer // static void run() throws IOException { // setupClient(); // setupServer(); diff --git a/src/java/alering-node-new/src/test/java/TimeTestingServer.java b/src/java/alering-node-new/src/test/java/TimeTestingServer.java index 976c39f..a201a9e 100644 --- a/src/java/alering-node-new/src/test/java/TimeTestingServer.java +++ b/src/java/alering-node-new/src/test/java/TimeTestingServer.java @@ -24,66 +24,65 @@ private class ApiNode { Producer serverProducer; Subscriber serverSubscriber; } -// -// public void main() throws Exception { -// RealAlertingDriverContext context = new RealAlertingDriverContext("/dev/shm/aeron"); -// ApiNode[] apiNodes = new ApiNode[clientCount]; -// -// AlertSystemBalancer alertSystemBalancer = new AlertSystemBalancer(); -// AlertNode[] alertNodes = new AlertNode[2 * clientCount]; -// -// AlertInfo[] alertInfos = new AlertInfo[alertPerClient]; -// AlertLogicBase[] alertLogicBases = new AlertLogicBase[alertPerClient]; -// for (int i = 0; i < alertPerClient; ++i) { -// alertInfos[i] = new AlertInfo(i, alertPerClient - i, threshold); -// alertLogicBases[i] = switch (i % 5) { -// case 0 -> new GreaterAlert(alertInfos[i]); -// case 1 -> new LessAlert(alertInfos[i]); -// case 2 -> new EqualAlert(alertInfos[i]); -// case 3 -> new GreaterOrEqualAlert(alertInfos[i]); -// case 4 -> new LessOrEqualAlert(alertInfos[i]); -// default -> throw new IllegalStateException("Unexpected value: " + i % 5); -// }; -// } -// -// for (int i = 0; i < clientCount; ++i) { -// ApiNode node = new ApiNode(); -// node.serverProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ServerProducerConfig" + i + ".yaml")); -// node.serverSubscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/ServerSubscriberConfig" + i + ".yaml")); -// apiNodes[i] = node; -// -// -// alertSystemBalancer.clientCreated(i); -// Producer alertNodeProducer1 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/AlertNodeProducerConfig" + i + "_1.yaml")); -// Producer alertNodeProducer2 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/AlertNodeProducerConfig" + i + "_2.yaml")); -// Subscriber alertNodeSubscriber1 = new Subscriber(context, ConfigReader.readProducerFromFile("src/test/resources/AlertNodeSubscriberConfig" + i + "_1.yaml")); -// Subscriber alertNodeSubscriber2 = new Subscriber(context, ConfigReader.readProducerFromFile("src/test/resources/AlertNodeSubscriberConfig" + i + "_2.yaml")); -// alertSystemBalancer.assignClientToAlertNode(i, alertNodeProducer1, alertNodeProducer2, alertNodeSubscriber1, alertNodeSubscriber2); -// AlertNode[] curClientAlertNodes = alertSystemBalancer.getAlertNodesByClientId(i); -// alertNodes[2 * i] = curClientAlertNodes[0]; -// alertNodes[2 * i + 1] = curClientAlertNodes[1]; -// for (int j = 0; j < alertPerClient; ++j) { -// alertSystemBalancer.addAlertToClientsAlertNodes(i, alertInfos[j], alertLogicBases[j]); -// } -// alertSystemBalancer.startClientsAlertNodes(i); -// // TODO wait all producers -// -// GetMetricId work = new GetMetricId(); -// // TODO client должен сделать work.addToMap(tagsList, metricId) -// int finalI = i; -// FragmentHandler serverGetIdHandler = (DirectBuffer buffer, int offset, int length, Header header) -> { -// buffer.getInt(offset); // вытаскиваем id инструкции -// offset += MetricConstants.INT_SIZE; -// work.doWork(client, apiNodes[finalI].serverProducer, buffer, offset, length, header); -// }; -// new Thread(() -> { -// int poll = -1; -// while (poll <= 0) { -// poll = apiNodes[finalI].serverSubscriber.getSubscription().poll(serverGetIdHandler, 1000); -// apiNodes[finalI].serverSubscriber.getIdle().idle(); -// } -// }).start(); -// } -// -// } + + public void main() throws Exception { + RealAlertingDriverContext context = new RealAlertingDriverContext("/dev/shm/aeron"); + ApiNode[] apiNodes = new ApiNode[clientCount]; + + AlertSystemBalancer alertSystemBalancer = new AlertSystemBalancer(); + AlertNode[] alertNodes = new AlertNode[2 * clientCount]; + + AlertInfo[] alertInfos = new AlertInfo[alertPerClient]; + AlertLogicBase[] alertLogicBases = new AlertLogicBase[alertPerClient]; + for (int i = 0; i < alertPerClient; ++i) { + alertInfos[i] = new AlertInfo(i, alertPerClient - i, threshold); + alertLogicBases[i] = switch (i % 5) { + case 0 -> new GreaterAlert(alertInfos[i]); + case 1 -> new LessAlert(alertInfos[i]); + case 2 -> new EqualAlert(alertInfos[i]); + case 3 -> new GreaterOrEqualAlert(alertInfos[i]); + case 4 -> new LessOrEqualAlert(alertInfos[i]); + default -> throw new IllegalStateException("Unexpected value: " + i % 5); + }; + } + + for (int i = 0; i < clientCount; ++i) { + ApiNode node = new ApiNode(); + node.serverProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/TimeTesting/Server/ServerProducerConfig" + i + ".yaml")); + node.serverSubscriber = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/TimeTesting/Server/ServerSubscriberConfig" + i + ".yaml")); + apiNodes[i] = node; + + alertSystemBalancer.clientCreated(i); + Producer alertNodeProducer1 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/TimeTesting/Server/AlertNodeProducerConfig" + i + "_1.yaml")); + Producer alertNodeProducer2 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/TimeTesting/Server/AlertNodeProducerConfig" + i + "_2.yaml")); + Subscriber alertNodeSubscriber1 = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/TimeTesting/Server/AlertNodeSubscriberConfig" + i + "_1.yaml")); + Subscriber alertNodeSubscriber2 = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/TimeTesting/Server/AlertNodeSubscriberConfig" + i + "_2.yaml")); + alertSystemBalancer.assignClientToAlertNode(i, alertNodeProducer1, alertNodeProducer2, alertNodeSubscriber1, alertNodeSubscriber2); + AlertNode[] curClientAlertNodes = alertSystemBalancer.getAlertNodesByClientId(i); + alertNodes[2 * i] = curClientAlertNodes[0]; + alertNodes[2 * i + 1] = curClientAlertNodes[1]; + for (int j = 0; j < alertPerClient; ++j) { + alertSystemBalancer.addAlertToClientsAlertNodes(i, alertInfos[j], alertLogicBases[j]); + } + alertSystemBalancer.startClientsAlertNodes(i); + // TODO wait all producers + + GetMetricId work = new GetMetricId(); + // TODO client должен сделать work.addToMap(tagsList, metricId) + int finalI = i; + FragmentHandler serverGetIdHandler = (DirectBuffer buffer, int offset, int length, Header header) -> { + buffer.getInt(offset); // вытаскиваем id инструкции + offset += MetricConstants.INT_SIZE; + work.doWork(client, apiNodes[finalI].serverProducer, buffer, offset, length, header); + }; + new Thread(() -> { + int poll = -1; + while (poll <= 0) { + poll = apiNodes[finalI].serverSubscriber.getSubscription().poll(serverGetIdHandler, 1000); + apiNodes[finalI].serverSubscriber.getIdle().idle(); + } + }).start(); + } + + } } diff --git a/src/java/alering-node-new/src/test/resources/AlertNodeProducerConfig1.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeProducerConfig1.yaml similarity index 100% rename from src/java/alering-node-new/src/test/resources/AlertNodeProducerConfig1.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeProducerConfig1.yaml diff --git a/src/java/alering-node-new/src/test/resources/AlertNodeProducerConfig2.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeProducerConfig2.yaml similarity index 100% rename from src/java/alering-node-new/src/test/resources/AlertNodeProducerConfig2.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeProducerConfig2.yaml diff --git a/src/java/protocol/src/main/resources/AlertNodes/AlertNodeConsumerConfig1.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeSubscriberConfig1.yaml similarity index 94% rename from src/java/protocol/src/main/resources/AlertNodes/AlertNodeConsumerConfig1.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeSubscriberConfig1.yaml index 08b03ee..523220d 100644 --- a/src/java/protocol/src/main/resources/AlertNodes/AlertNodeConsumerConfig1.yaml +++ b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeSubscriberConfig1.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: mdc publication-ip: localhost diff --git a/src/java/protocol/src/main/resources/AlertNodes/AlertNodeConsumerConfig2.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeSubscriberConfig2.yaml similarity index 94% rename from src/java/protocol/src/main/resources/AlertNodes/AlertNodeConsumerConfig2.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeSubscriberConfig2.yaml index 08b03ee..523220d 100644 --- a/src/java/protocol/src/main/resources/AlertNodes/AlertNodeConsumerConfig2.yaml +++ b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertNodeSubscriberConfig2.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: mdc publication-ip: localhost diff --git a/src/java/alering-node-new/src/test/resources/AlertConsumerConfig.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertSubscriberConfig.yaml similarity index 93% rename from src/java/alering-node-new/src/test/resources/AlertConsumerConfig.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/AlertSubscriberConfig.yaml index 6ea76dc..c614c6c 100644 --- a/src/java/alering-node-new/src/test/resources/AlertConsumerConfig.yaml +++ b/src/java/alering-node-new/src/test/resources/MetricClientTest/AlertSubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/alering-node-new/src/test/resources/ClientProducerConfig.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/ClientProducerConfig.yaml similarity index 100% rename from src/java/alering-node-new/src/test/resources/ClientProducerConfig.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/ClientProducerConfig.yaml diff --git a/src/java/alering-node-new/src/test/resources/ClientConsumerConfig.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/ClientSubscriberConfig.yaml similarity index 93% rename from src/java/alering-node-new/src/test/resources/ClientConsumerConfig.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/ClientSubscriberConfig.yaml index 99eefd2..f4be199 100644 --- a/src/java/alering-node-new/src/test/resources/ClientConsumerConfig.yaml +++ b/src/java/alering-node-new/src/test/resources/MetricClientTest/ClientSubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/alering-node-new/src/test/resources/MetricProducerConfig.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/MetricProducerConfig.yaml similarity index 100% rename from src/java/alering-node-new/src/test/resources/MetricProducerConfig.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/MetricProducerConfig.yaml diff --git a/src/java/alering-node-new/src/test/resources/ServerProducerConfig.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/ServerProducerConfig.yaml similarity index 100% rename from src/java/alering-node-new/src/test/resources/ServerProducerConfig.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/ServerProducerConfig.yaml diff --git a/src/java/metric-client/src/test/resources/Protocol/ServerConsumerConfig.yaml b/src/java/alering-node-new/src/test/resources/MetricClientTest/ServerSubscriberConfig.yaml similarity index 93% rename from src/java/metric-client/src/test/resources/Protocol/ServerConsumerConfig.yaml rename to src/java/alering-node-new/src/test/resources/MetricClientTest/ServerSubscriberConfig.yaml index 6a54d40..a81179d 100644 --- a/src/java/metric-client/src/test/resources/Protocol/ServerConsumerConfig.yaml +++ b/src/java/alering-node-new/src/test/resources/MetricClientTest/ServerSubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/alert-logic/src/main/java/ru/realalerting/alertlogic/AlertInfo.java b/src/java/alert-logic/src/main/java/ru/realalerting/alertlogic/AlertInfo.java index 1cba0da..708cbc9 100644 --- a/src/java/alert-logic/src/main/java/ru/realalerting/alertlogic/AlertInfo.java +++ b/src/java/alert-logic/src/main/java/ru/realalerting/alertlogic/AlertInfo.java @@ -1,6 +1,6 @@ package ru.realalerting.alertlogic; -public class AlertInfo { // TODO record +public class AlertInfo { // TODO перенести всю инфу в саму реализацию private final int alertId; private final int metricId; diff --git a/src/java/alert-subsriber/src/test/java/ClickHouseAlertTest.java b/src/java/alert-subsriber/src/test/java/ClickHouseAlertTest.java index bbcc0ab..f14a3d2 100644 --- a/src/java/alert-subsriber/src/test/java/ClickHouseAlertTest.java +++ b/src/java/alert-subsriber/src/test/java/ClickHouseAlertTest.java @@ -27,7 +27,7 @@ public class ClickHouseAlertTest { // @BeforeAll // static void setUp() throws Exception { // RealAlertingDriverContext context = new RealAlertingDriverContext("/dev/shm/aeron"); -// RealAlertingConfig config = ConfigReader.readConsumerFromFile("src/test/resources/ConsumerConfig.yaml"); +// RealAlertingConfig config = ConfigReader.readConsumerFromFile("src/test/resources/SubscriberConfig.yaml"); // String url = "jdbc:clickhouse://localhost:8123"; // ClickHouseProperties properties = ClickhouseJdbcUrlParser.parse(url, new ClickHouseProperties().asProperties()); // HttpClient httpClient = new ClickHouseHttpClientBuilder(properties).buildClient(); diff --git a/src/java/alert-subsriber/src/test/resources/ConsumerConfig.yaml b/src/java/alert-subsriber/src/test/resources/SubscriberConfig.yaml similarity index 97% rename from src/java/alert-subsriber/src/test/resources/ConsumerConfig.yaml rename to src/java/alert-subsriber/src/test/resources/SubscriberConfig.yaml index a925fb2..18189d5 100644 --- a/src/java/alert-subsriber/src/test/resources/ConsumerConfig.yaml +++ b/src/java/alert-subsriber/src/test/resources/SubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ClientProducer.java b/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ClientProducer.java index e55d576..5363488 100644 --- a/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ClientProducer.java +++ b/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ClientProducer.java @@ -1,9 +1,7 @@ package ru.realalerting.metrciclient; import io.aeron.logbuffer.BufferClaim; -import org.agrona.BufferUtil; import org.agrona.MutableDirectBuffer; -import org.agrona.concurrent.UnsafeBuffer; import ru.realalerting.producer.BaseProducer; import ru.realalerting.producer.Producer; import ru.realalerting.protocol.MetricConstants; @@ -57,7 +55,7 @@ public void getMetricId(int requestId, List tags) { int allocatedMemory = MetricConstants.ID_SIZE + MetricConstants.ID_SIZE + MetricConstants.INT_SIZE + allTagsSize + tagsBytes.length * MetricConstants.INT_SIZE; BufferClaim curBufferClaim = bufferClaim.get(); - // int (id инструкции) + int(request id) + колиечство тэгов + сумма размеров всех тэгов + количество тэгов * int (длина тэга) + // instructionId + requestId + количество тэгов + сумма размеров всех тэгов + количество тэгов * длина тэга (int) if (producer.getPublication().tryClaim(allocatedMemory, curBufferClaim) > 0) { MutableDirectBuffer buf = curBufferClaim.buffer(); sendData(tagsBytes, requestId, buf, curBufferClaim.offset()); @@ -68,18 +66,18 @@ public void getMetricId(int requestId, List tags) { } public void getAlertsConfigsByMetricId(int requestId, int metricId) { - int allocatedMemory = MetricConstants.INT_SIZE + MetricConstants.ID_SIZE + MetricConstants.INT_SIZE; + int allocatedMemory = MetricConstants.ID_SIZE + MetricConstants.ID_SIZE + MetricConstants.ID_SIZE; // instructionId + requestId + metricId BufferClaim curBufferClaim = bufferClaim.get(); if (producer.getPublication().tryClaim(allocatedMemory, curBufferClaim) > 0) { MutableDirectBuffer buf = curBufferClaim.buffer(); int offset = curBufferClaim.offset(); buf.putInt(offset, Protocol.INSTRUCTION_GET_METRIC_CRITICAL_ALERTS_BY_METRIC_ID); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; buf.putInt(offset, requestId); offset += MetricConstants.ID_SIZE; buf.putInt(offset, metricId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; curBufferClaim.commit(); } else { ++dataLeaked; diff --git a/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ProtocolProcessor.java b/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ProtocolProcessor.java index f60e701..7c50cb5 100644 --- a/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ProtocolProcessor.java +++ b/src/java/metric-client/src/main/java/ru/realalerting/metrciclient/ProtocolProcessor.java @@ -55,5 +55,4 @@ public Object[] setMetricIdWithAlerts(DirectBuffer directBuffer, int offset, int response[3] = alertLogics; return response; } - } diff --git a/src/java/metric-client/src/test/java/AlertSubscriberTest.java b/src/java/metric-client/src/test/java/AlertSubscriberTest.java deleted file mode 100644 index 24a7879..0000000 --- a/src/java/metric-client/src/test/java/AlertSubscriberTest.java +++ /dev/null @@ -1,24 +0,0 @@ -import org.agrona.concurrent.IdleStrategy; -import ru.realalerting.alertsubscriber.AlertSubscriber; -import ru.realalerting.protocol.RealAlertingDriverContext; -import ru.realalerting.reader.RealAlertingConfig; -import ru.realalerting.subscriber.Subscriber; - -public class AlertSubscriberTest extends AlertSubscriber { - public AlertSubscriberTest(RealAlertingDriverContext aeronContext, RealAlertingConfig connectInfo, IdleStrategy idleStrategy, int alertId) { - super(aeronContext, connectInfo, idleStrategy/*, alertId*/); - } - - public AlertSubscriberTest(RealAlertingDriverContext aeronContext, RealAlertingConfig connectInfo, int alertId) { - super(aeronContext, connectInfo/*, alertId*/); - } - - public AlertSubscriberTest(Subscriber subscriber, int alertId) { - super(subscriber/*, alertId*/); - } - - @Override - public void onAlert(int alertId, int metricId, long value, long timestamp) { - System.out.println(alertId + ":" + metricId + ":" + value + ":" + timestamp); - } -} diff --git a/src/java/metric-client/src/test/java/ClientRunning.java b/src/java/metric-client/src/test/java/ClientRunning.java index 4f88fec..d37d0cb 100644 --- a/src/java/metric-client/src/test/java/ClientRunning.java +++ b/src/java/metric-client/src/test/java/ClientRunning.java @@ -28,26 +28,19 @@ public class ClientRunning { private static ArrayList alertSubscribers = new ArrayList<>(); private static ConcurrentHashMap> timestampsByAlertId = new ConcurrentHashMap<>(); private static ArrayList latencies = new ArrayList<>(); - - private static final String AERON_UDP_FORMAT = "aeron:udp?endpoint=%s:%s"; - private static final String AERON_MDC_PUBLICATION = "aeron:udp?control-mode=dynamic|control=%s:%s"; - private static final String AERON_MDC_SUBSCRIPTION = "aeron:udp?endpoint=%s:%s|control=%s:%s|control-mode=dynamic"; - private static ArrayList timestamps = new ArrayList<>(); private static MetricRegistry metricRegistry; private static RealAlertingDriverContext context; - private static final Random RANDOM = new Random(42); - private static void setUpMetricRegistry() throws IOException { context = new RealAlertingDriverContext("/dev/shm/aeron"); - Producer metricProducer = new Producer(context, String.format(AERON_MDC_PUBLICATION, "localhost", 6006), 4); // "src/test/resources/Running/MetricProducerConfig.yaml" + Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("/home/random/metric-client (saruar)/src/test/resources/ClientRunning/MetricProducerConfig.yaml")); MetricProducer clientMetricProducer = new MetricProducer(metricProducer); - Producer clientProducer = new Producer(context, String.format(AERON_UDP_FORMAT, "localhost", 6001), 1); // "src/test/resources/Running/ClientProducerConfig.yaml" - Subscriber clientConsumer = new Subscriber(context, String.format(AERON_UDP_FORMAT, "localhost", 6000), 2); // "src/test/resources/Running/ClientConsumerConfig.yaml" + Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("/home/random/metric-client (saruar)/src/test/resources/ClientRunning/ClientProducerConfig.yaml")); + Subscriber clientConsumer = new Subscriber(context, ConfigReader.readSubscriberFromFile("/home/random/metric-client (saruar)/src/test/resources/ClientRunning/ClientSubscriberConfig.yaml")); MetricRegistry.initialize(clientProducer, clientConsumer, clientMetricProducer, context); metricRegistry = MetricRegistry.getInstance(); @@ -58,8 +51,8 @@ private static void setUpMetricRegistry() throws IOException { private static void setUpAlertSubscriber() { for (int i = 1; i <= alertCount; ++i) { - Subscriber subscriber = new Subscriber(context, String.format(AERON_MDC_SUBSCRIPTION, "localhost", 6020, "localhost", 6010), i); // "src/test/resources/Running/AlertSubscribers/AlertConsumerConfig" + i + "_1" + ".yaml" - AlertSubscriber alertSubscriber = new AlertSubscriber(subscriber/*, 100 + i*/) { + Subscriber subscriber = new Subscriber(context, ConfigReader.readSubscriberFromFile("/home/random/metric-client (saruar)/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig" + i + "_1" + ".yaml")); + AlertSubscriber alertSubscriber = new AlertSubscriber(subscriber) { @Override public void onAlert(int alertId, int metricId, long value, long timestamp) { System.out.println(alertId); @@ -110,7 +103,6 @@ public static void runClient() throws InterruptedException { while(metric5.getMetricId() == -1) { Thread.sleep(50); } -// Thread.sleep(1000); for (int i = 0; i < 10000; ++i) { if (i >= 1) { @@ -127,18 +119,15 @@ public static void runClient() throws InterruptedException { public static void main(String[] args) throws IOException, InterruptedException { setUp(); runClient(); -// while(true) { -// Thread.sleep(1000); -// } + Thread.sleep(20 * 1000); - Thread.sleep(10 * 1000); - - for (Map.Entry> e: timestampsByAlertId.entrySet()) { + for (Map.Entry> e : timestampsByAlertId.entrySet()) { int i = 0; for (Long timestamp : e.getValue()) { latencies.add(timestamp - timestamps.get(i++)); } } + System.out.println(latencies.size()); latencies.sort(Comparator.naturalOrder()); System.out.println(String.format("Fastest - %s mcs", getMicroLatency(latencies.getFirst()))); System.out.println(String.format("0.5 latency - %s mcs", getLatencyPercentile(latencies, 0.5))); @@ -148,7 +137,6 @@ public static void main(String[] args) throws IOException, InterruptedException System.out.println(String.format("0.9999 latency - %s mcs", getLatencyPercentile(latencies, 0.9999))); System.out.println(String.format("1.0 latency - %s mcs", getMicroLatency(latencies.get(latencies.size() - 1)))); System.exit(0); - } private static double getLatencyPercentile(List nanoLatencies, double percentile) { diff --git a/src/java/metric-client/src/test/java/ClientServerTests.java b/src/java/metric-client/src/test/java/ClientServerTests.java deleted file mode 100644 index c7df23e..0000000 --- a/src/java/metric-client/src/test/java/ClientServerTests.java +++ /dev/null @@ -1,287 +0,0 @@ -//import io.aeron.logbuffer.FragmentHandler; -//import io.aeron.logbuffer.Header; -//import io.vertx.sqlclient.SqlClient; -//import org.agrona.DirectBuffer; -//import org.junit.jupiter.api.BeforeAll; -//import org.junit.jupiter.api.Test; -//import ru.realalerting.alertlogic.AlertInfo; -//import ru.realalerting.alertlogic.GreaterAlert; -//import ru.realalerting.metrciclient.Metric; -//import ru.realalerting.metrciclient.MetricRegistry; -//import ru.realalerting.producer.MetricProducer; -//import ru.realalerting.producer.Producer; -//import ru.realalerting.protocol.DataBaseConnection; -//import ru.realalerting.protocol.MetricConstants; -//import ru.realalerting.protocol.RealAlertingDriverContext; -//import ru.realalerting.protocol.client.ApiBalancer; -//import ru.realalerting.protocol.client.GetMetricId; -//import ru.realalerting.reader.ConfigReader; -//import ru.realalerting.subscriber.Subscriber; -// -//import java.io.IOException; -//import java.math.BigDecimal; -//import java.math.RoundingMode; -//import java.util.ArrayList; -//import java.util.Arrays; -//import java.util.Comparator; -//import java.util.List; -//import java.util.concurrent.atomic.AtomicInteger; -// -//import static org.junit.jupiter.api.Assertions.assertEquals; -// -//public class ClientServerTests { -// private static MetricRegistry metricRegistry; -// private static RealAlertingDriverContext context; -// private static int alertId = 0; -// private static int threshold = 200; -// private static Producer alertProducer; -// private SqlClient client = DataBaseConnection.connect(5); -// -// private static Producer serverProducer; -// private static Subscriber serverSubscriber; -// private static Subscriber alertSubscriber; -// private static Subscriber metricSubscriber; -// -// static void setupClient() throws IOException { -// context = new RealAlertingDriverContext("/dev/shm/aeron"); -// alertProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/AlertProducerConfig.yaml")); -// Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/MetricProducerConfig.yaml")); -// -// MetricProducer clientMetricProducer = new MetricProducer(metricProducer); -// Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ClientProducerConfig.yaml")); -// Subscriber clientConsumer = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/ClientConsumerConfig.yaml")); -// -// MetricRegistry.initialize(clientProducer, clientConsumer, clientMetricProducer, context); -// metricRegistry = MetricRegistry.getInstance(); -// } -// -// static void setupServer() { -// alertSubscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/AlertConsumerConfig.yaml")); -// metricSubscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/MetricConsumerConfig.yaml")); -// -// serverProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ServerProducerConfig.yaml")); -// serverSubscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/ServerConsumerConfig.yaml")); -// } -// -// @BeforeAll -// static void run() throws IOException { -// setupClient(); -// setupServer(); -// metricRegistry.getClientProducer().waitUntilConnected(); -// metricRegistry.getMetricProducer().waitUntilConnected(); -// serverProducer.waitUntilConnected(); -// } -// -// -// @Test -// public void testGettingMetricId() throws InterruptedException { -// int metricId = 10; -// String[] tags = {"ya", "west"}; -// List tagsList = new ArrayList(Arrays.asList(tags)); -// Metric metric = metricRegistry.getMetric(tagsList); -// metric.setAlertProducer(alertProducer); -// GetMetricId work = new GetMetricId(); -// work.addToMap(tagsList, metricId); -// FragmentHandler handler = (DirectBuffer buffer, int offset, int length, Header header) -> { -// buffer.getInt(offset); // вытаскиваем id инструкции -// offset += MetricConstants.INT_SIZE; -// work.doWork(client, serverProducer, buffer, offset, length, header); -// }; -// int poll = -1; -// while (poll <= 0) { -// poll = serverSubscriber.getSubscription().poll(handler, 1000); -// serverSubscriber.getIdle().idle(); -// } -// Thread.sleep(20); -// assertEquals(metric.getMetricId(), metricId); -// } -// -// private class MetricValues { -// long value; -// long timestamp; -// -// public MetricValues(long value, long timestamp) { -// this.value = value; -// this.timestamp = timestamp; -// } -// -// public long getValue() { -// return value; -// } -// -// public long getTimestamp() { -// return timestamp; -// } -// } -// -// @Test -// public void testSendMetric() throws InterruptedException { -// int alertMetricId = 11; -// String[] tags = {"ya", "north"}; -// List tagsList = new ArrayList(Arrays.asList(tags)); -// Metric metric = metricRegistry.getMetric(tagsList); -// metric.setAlertProducer(alertProducer); -// ArrayList sendMetrics = new ArrayList<>(); -// long curMetricValue = 1; -// long curTimestamp = 100; -// long metricsCount = 1000; -// for (int i = 0; i < metricsCount; ++i) { -// metric.addValue(curMetricValue, curTimestamp); -// sendMetrics.add(new MetricValues(curMetricValue++, curTimestamp++)); -// } -// assertEquals(metric.getMetricId(), -1); -// -// ApiBalancer apiBalancer = new ApiBalancer(); -// apiBalancer.setNodeToClient(0); -// -// -// GetMetricId work = new GetMetricId(); -// work.addToMap(tagsList, alertMetricId); -// FragmentHandler handler = (DirectBuffer buffer, int offset, int length, Header header) -> { -// buffer.getInt(offset); // вытаскиваем id инструкции -// offset += MetricConstants.INT_SIZE; -// work.doWork(client, serverProducer, buffer, offset, length, header); -// }; -// int poll = -1; -// while (poll <= 0) { -// poll = serverSubscriber.getSubscription().poll(handler, 1000); -// serverSubscriber.getIdle().idle(); -// } -// Thread.sleep(20); -// MetricRegistry temp = MetricRegistry.getInstance(); -// assertEquals(metric.getMetricId(), alertMetricId); -// -// AtomicInteger curMetricIndex = new AtomicInteger(); -// -// FragmentHandler metricHandler = (DirectBuffer buffer, int offset, int length, Header header) -> { -// int metricId = buffer.getInt(offset); -// offset += MetricConstants.INT_SIZE; -// long value = buffer.getLong(offset); -// offset += MetricConstants.LONG_SIZE; -// long timestamp = buffer.getLong(offset); -// offset += MetricConstants.LONG_SIZE; -// assertEquals(metric.getMetricId(), metricId); -// assertEquals(value, sendMetrics.get(curMetricIndex.get()).getValue()); -// assertEquals(timestamp, sendMetrics.get(curMetricIndex.getAndIncrement()).getTimestamp()); -// }; -// poll = -1; -// metricRegistry.getMetricProducer(); -// while (poll <= 0) { -// poll = metricSubscriber.getSubscription().poll(metricHandler, 1000); -// metricSubscriber.getIdle().idle(); -// } -// assertEquals(curMetricIndex.get(), metricsCount); -// -// } -// -// @Test -// public void testSendAlert() throws InterruptedException { -// int alertMetricId = 12; -// String[] tags = {"ya", "south"}; -// List tagsList = new ArrayList(Arrays.asList(tags)); -// -// GetMetricId work = new GetMetricId(); -// work.addToMap(tagsList, alertMetricId); -// -// FragmentHandler handler = (DirectBuffer buffer, int offset, int length, Header header) -> { -// buffer.getInt(offset); // вытаскиваем id инструкции -// offset += MetricConstants.INT_SIZE; -// work.doWork(client, serverProducer, buffer, offset, length, header); -// }; -// -// new Thread(() -> { -// int poll = -1; -// while (poll <= 0) { -// poll = serverSubscriber.getSubscription().poll(handler, 1000); -// serverSubscriber.getIdle().idle(); -// } -// }).start(); -// -// int metricsCount = 10000; -// // отправили запрос на metricId -// long startRequest = System.nanoTime(); -// ArrayListstartAlert = new ArrayList<>(metricsCount); -// ArrayList endAlert = new ArrayList<>(metricsCount); -// Metric metric = metricRegistry.getMetric(tagsList); -// metric.setAlertProducer(alertProducer); -// metric.addAlertLogic(new GreaterAlert(new AlertInfo(alertId, alertMetricId, threshold))); -// long alertValue1 = 13, alertValue2 = 300; -// long alertTimestamp1 = 100, alertTimestamp2 = 100; -// AtomicInteger curAlert = new AtomicInteger(0); -// new Thread(() -> { -// FragmentHandler alertHandler = (DirectBuffer buffer, int offset, int length, Header header) -> { -// int alertId = buffer.getInt(offset); -// offset += MetricConstants.ID_SIZE; -// int metricId = buffer.getInt(offset); -// offset += MetricConstants.ID_SIZE; -// long value = buffer.getLong(offset); -// offset += MetricConstants.LONG_SIZE; -// long timestamp = buffer.getLong(offset); -// offset += MetricConstants.LONG_SIZE; -// int curAlertId = curAlert.getAndIncrement(); -// assertEquals(metric.getMetricId(), metricId); -//// assertEquals(value, curAlertId + threshold + 1); -//// assertEquals(timestamp, alertTimestamp2 + curAlertId); -// endAlert.add(System.nanoTime()); -// // получили крит алерт -// }; -// int poll = -1; -// while (poll <= 0 || curAlert.get() < metricsCount) { -// poll = alertSubscriber.getSubscription().poll(alertHandler, 100000); -// alertSubscriber.getIdle().idle(); -// } -// }).start(); -// -// for (int i = 0; i < metricsCount; ++i) { -// metric.addValue(i + threshold + 1, alertTimestamp1++); -// startAlert.add(System.nanoTime()); -// } -//// metric.addValue(alertValue1, alertTimestamp1); -// // отправили метрику для крит алерта -//// metric.addValue(alertValue2, alertTimestamp2); -//// assertEquals(metric.getMetricId(), -1); -// Thread.sleep(10); -// MetricRegistry temp = MetricRegistry.getInstance(); -// assertEquals(metric.getMetricId(), alertMetricId); -// long endRequest = System.nanoTime(); -// // Получили ответ на запрос -// ArrayList latencies = new ArrayList<>(metricsCount); -// while (curAlert.get() < metricsCount) { -// Thread.sleep(20); -// } -// long maxtemp = -1; -// for (int i = 0; i < metricsCount; ++i) { -// if (maxtemp < endAlert.get(i) - startAlert.get(i)) { -// maxtemp = endAlert.get(i) - startAlert.get(i); -// } -// latencies.add(endAlert.get(i) - startAlert.get(i)); -// } -// System.out.println("Request response time: " + getMicroLatency(endRequest - startRequest) + " mcs"); -// latencies.sort(Comparator.naturalOrder()); -// System.out.println(String.format("Fastest - %s mcs", getMicroLatency(latencies.getFirst()))); -// System.out.println(String.format("0.5 latency - %s mcs", getLatencyPercentile(latencies, 0.5))); -// System.out.println(String.format("0.9 latency - %s mcs", getLatencyPercentile(latencies, 0.9))); -// System.out.println(String.format("0.95 latency - %s mcs", getLatencyPercentile(latencies, 0.95))); -// System.out.println(String.format("0.99 latency - %s mcs", getLatencyPercentile(latencies, 0.99))); -// System.out.println(String.format("0.9999 latency - %s mcs", getLatencyPercentile(latencies, 0.9999))); -// System.out.println(maxtemp); -//// System.out.println(String.format("1.0 latency - %s mcs", getLatencyPercentile(latencies, 1.0))); -// -// -// } -// -// -// private double getLatencyPercentile(List nanoLatencies, double percentile) { -// var index = (int) (percentile * nanoLatencies.size()); -// var nanoLatency = nanoLatencies.get(index); -// return getMicroLatency(nanoLatency); -// } -// -// private double getMicroLatency(Long nanoLatency) { -// var microLatency = nanoLatency / 1000.0; -// return new BigDecimal(microLatency) -// .setScale(3, RoundingMode.HALF_UP) -// .doubleValue(); -// } -// -//} diff --git a/src/java/metric-client/src/test/java/ClientWithServerTests.java b/src/java/metric-client/src/test/java/ClientWithServerTests.java deleted file mode 100644 index 6375540..0000000 --- a/src/java/metric-client/src/test/java/ClientWithServerTests.java +++ /dev/null @@ -1,117 +0,0 @@ -import io.aeron.logbuffer.FragmentHandler; -import io.aeron.logbuffer.Header; -import io.vertx.sqlclient.SqlClient; -import org.agrona.DirectBuffer; -import org.agrona.concurrent.AgentRunner; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; -import ru.realalerting.alertlogic.AlertInfo; -import ru.realalerting.alertlogic.GreaterAlert; -import ru.realalerting.metrciclient.Metric; -import ru.realalerting.metrciclient.MetricRegistry; -import ru.realalerting.producer.MetricProducer; -import ru.realalerting.producer.Producer; -import ru.realalerting.protocol.DataBaseConnection; -import ru.realalerting.protocol.MetricConstants; -import ru.realalerting.protocol.RealAlertingDriverContext; -import ru.realalerting.protocol.client.GetMetricId; -import ru.realalerting.reader.ConfigReader; -import ru.realalerting.subscriber.Subscriber; - -import java.io.IOException; -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Comparator; -import java.util.List; -import java.util.concurrent.atomic.AtomicInteger; - -import static org.junit.jupiter.api.Assertions.assertEquals; - -public class ClientWithServerTests { - private static MetricRegistry metricRegistry; - private static RealAlertingDriverContext context; - private static int alertId = 0; - private static int threshold = 200; - private static Producer alertProducer; - private SqlClient client = DataBaseConnection.connect(5); - - @BeforeAll - static void run() throws IOException { - context = new RealAlertingDriverContext("/dev/shm/aeron"); - alertProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/WithServer/AlertProducerConfig.yaml")); - Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/WithServer/MetricProducerConfig.yaml")); - - MetricProducer clientMetricProducer = new MetricProducer(metricProducer); - Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/WithServer/ClientProducerConfig.yaml")); - Subscriber clientConsumer = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/WithServer/ClientConsumerConfig.yaml")); - - MetricRegistry.initialize(clientProducer, clientConsumer, clientMetricProducer, context); - metricRegistry = MetricRegistry.getInstance(); - - metricRegistry.getClientProducer().waitUntilConnected(); - metricRegistry.getMetricProducer().waitUntilConnected(); - } - - @Test - public void clientConnectionTest() throws InterruptedException { - int alertMetricId = 12; - String[] tags = {"ya", "south"}; - List tagsList = new ArrayList(Arrays.asList(tags)); - - int metricsCount = 10000; - ArrayList startAlert = new ArrayList<>(metricsCount); - ArrayList endAlert = new ArrayList<>(metricsCount); - // отправили запрос на metricId - long startRequest = System.nanoTime(); - Metric metric = metricRegistry.getMetric(tagsList); - metric.setAlertProducer(alertProducer); - metric.addAlertLogic(new GreaterAlert(new AlertInfo(alertId, alertMetricId, threshold))); - long alertValue1 = 13, alertValue2 = 300; - long alertTimestamp1 = 100, alertTimestamp2 = 100; - AtomicInteger curAlert = new AtomicInteger(0); - Subscriber subscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/WithServer/AlertConsumerConfig.yaml")); - AlertSubscriberTest alertSubscriberTest = new AlertSubscriberTest(subscriber, -1); - final AgentRunner receiveAgentRunner = new AgentRunner(alertSubscriberTest.getConsumer().getIdle(), Throwable::printStackTrace, null, alertSubscriberTest); - AgentRunner.startOnThread(receiveAgentRunner); - - for (int i = 0; i < metricsCount; ++i) { - metric.addValue(i + threshold + 1, alertTimestamp1++); - startAlert.add(System.nanoTime()); - } - Thread.sleep(1000); - assertEquals(metric.getMetricId(), alertMetricId); - long endRequest = System.nanoTime(); - // Получили ответ на запрос - ArrayList latencies = new ArrayList<>(metricsCount); - while (curAlert.get() < metricsCount) { - Thread.sleep(20); - } - for (int i = 0; i < metricsCount; ++i) { - latencies.add(endAlert.get(i) - startAlert.get(i)); - } - System.out.println("Request response time: " + getMicroLatency(endRequest - startRequest) + " mcs"); - latencies.sort(Comparator.naturalOrder()); - System.out.println(String.format("Fastest - %s mcs", getMicroLatency(latencies.getFirst()))); - System.out.println(String.format("0.5 latency - %s mcs", getLatencyPercentile(latencies, 0.5))); - System.out.println(String.format("0.9 latency - %s mcs", getLatencyPercentile(latencies, 0.9))); - System.out.println(String.format("0.95 latency - %s mcs", getLatencyPercentile(latencies, 0.95))); - System.out.println(String.format("0.99 latency - %s mcs", getLatencyPercentile(latencies, 0.99))); -// System.out.println(String.format("1.00 latency - %s mcs", getLatencyPercentile(latencies, 1.0))); - - } - - private double getLatencyPercentile(List nanoLatencies, double percentile) { - var index = (int) (percentile * nanoLatencies.size()); - var nanoLatency = nanoLatencies.get(index); - return getMicroLatency(nanoLatency); - } - - private double getMicroLatency(Long nanoLatency) { - var microLatency = nanoLatency / 1000.0; - return new BigDecimal(microLatency) - .setScale(3, RoundingMode.HALF_UP) - .doubleValue(); - } -} diff --git a/src/java/metric-client/src/test/java/ProtocolTest.java b/src/java/metric-client/src/test/java/ProtocolTest.java index 0d18c1f..50b444a 100644 --- a/src/java/metric-client/src/test/java/ProtocolTest.java +++ b/src/java/metric-client/src/test/java/ProtocolTest.java @@ -53,16 +53,16 @@ public static void setUp() throws IOException { .connectingTo(connectOptions) .build(); apiNode = new ApiNode(client); - Producer protocolServerProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/Protocol/ServerProducerConfig.yaml")); - Subscriber protocolServerSubscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/Protocol/ServerConsumerConfig.yaml")); + Producer protocolServerProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ProtocolTest/ServerProducerConfig.yaml")); + Subscriber protocolServerSubscriber = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/ProtocolTest/ServerSubscriberConfig.yaml")); apiNode.addClient(clientId, protocolServerProducer, protocolServerSubscriber); // Client setup - Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/Protocol/MetricProducerConfig.yaml")); + Producer metricProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ProtocolTest/MetricProducerConfig.yaml")); MetricProducer clientMetricProducer = new MetricProducer(metricProducer); - Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/Protocol/ClientProducerConfig.yaml")); - Subscriber clientConsumer = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/Protocol/ClientConsumerConfig.yaml")); + Producer clientProducer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ProtocolTest/ClientProducerConfig.yaml")); + Subscriber clientConsumer = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/ProtocolTest/ClientSubscriberConfig.yaml")); MetricRegistry.initialize(clientProducer, clientConsumer, clientMetricProducer, context); metricRegistry = MetricRegistry.getInstance(); diff --git a/src/java/metric-client/src/test/resources/AlertConsumerConfig.yaml b/src/java/metric-client/src/test/resources/AlertConsumerConfig.yaml deleted file mode 100644 index d15ab43..0000000 --- a/src/java/metric-client/src/test/resources/AlertConsumerConfig.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6001 - stream-id: 3 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_1.yaml b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig1_1.yaml similarity index 71% rename from src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_1.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig1_1.yaml index 6b80601..2d5b041 100644 --- a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_1.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig1_1.yaml @@ -1,9 +1,9 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost + publication-ip: 10.129.0.33 publication-port: 6010 - ip: localhost + ip: 10.129.0.32 port: 6020 stream-id: 1 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_2.yaml b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig1_2.yaml similarity index 59% rename from src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_2.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig1_2.yaml index 4eb68d3..c94b416 100644 --- a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_2.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig1_2.yaml @@ -1,9 +1,9 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost + publication-ip: 10.129.0.33 + publication-port: 6110 + ip: 10.129.0.32 port: 6120 stream-id: 1 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_1.yaml b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig2_1.yaml similarity index 71% rename from src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_1.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig2_1.yaml index d12fc3e..420a62d 100644 --- a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_1.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig2_1.yaml @@ -1,9 +1,9 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost + publication-ip: 10.129.0.33 publication-port: 6010 - ip: localhost + ip: 10.129.0.32 port: 6020 stream-id: 2 idle-strategy: SleepingIdleStrategy diff --git a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_2.yaml b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig2_2.yaml similarity index 59% rename from src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_2.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig2_2.yaml index df87c04..425f7a2 100644 --- a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_2.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig2_2.yaml @@ -1,9 +1,9 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost + publication-ip: 10.129.0.33 + publication-port: 6110 + ip: 10.129.0.32 port: 6120 stream-id: 2 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_1.yaml b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig3_1.yaml similarity index 71% rename from src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_1.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig3_1.yaml index a851a18..fcd5ed2 100644 --- a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_1.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig3_1.yaml @@ -1,9 +1,9 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost + publication-ip: 10.129.0.33 publication-port: 6010 - ip: localhost + ip: 10.129.0.32 port: 6020 stream-id: 3 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_2.yaml b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig3_2.yaml similarity index 59% rename from src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_2.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig3_2.yaml index e83a9db..21bb515 100644 --- a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_2.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/AlertSubscribers/AlertSubscriberConfig3_2.yaml @@ -1,9 +1,9 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost + publication-ip: 10.129.0.33 + publication-port: 6110 + ip: 10.129.0.32 port: 6120 stream-id: 3 idle-strategy: SleepingIdleStrategy diff --git a/src/java/metric-client/src/test/resources/WithServer/ClientProducerConfig.yaml b/src/java/metric-client/src/test/resources/ClientRunning/ClientProducerConfig.yaml similarity index 87% rename from src/java/metric-client/src/test/resources/WithServer/ClientProducerConfig.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/ClientProducerConfig.yaml index 0fd6195..69b2498 100644 --- a/src/java/metric-client/src/test/resources/WithServer/ClientProducerConfig.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/ClientProducerConfig.yaml @@ -1,6 +1,6 @@ producer: publication-type : udp - ip: localhost + ip: 10.129.0.33 port: 6001 stream-id: 1 idle-strategy: SleepingIdleStrategy diff --git a/src/java/metric-client/src/test/resources/Running/ClientConsumerConfig.yaml b/src/java/metric-client/src/test/resources/ClientRunning/ClientSubscriberConfig.yaml similarity index 55% rename from src/java/metric-client/src/test/resources/Running/ClientConsumerConfig.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/ClientSubscriberConfig.yaml index 57c13cc..070b03d 100644 --- a/src/java/metric-client/src/test/resources/Running/ClientConsumerConfig.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/ClientSubscriberConfig.yaml @@ -1,7 +1,7 @@ -consumer: +subscriber: streams: - - subscription-type: udp - ip: localhost + - subscription-type: udp # // TODO все udp в mdc + ip: 10.129.0.32 port: 6000 stream-id: 2 idle-strategy: SleepingIdleStrategy diff --git a/src/java/metric-client/src/test/resources/Running/MetricProducerConfig.yaml b/src/java/metric-client/src/test/resources/ClientRunning/MetricProducerConfig.yaml similarity index 87% rename from src/java/metric-client/src/test/resources/Running/MetricProducerConfig.yaml rename to src/java/metric-client/src/test/resources/ClientRunning/MetricProducerConfig.yaml index 0c7c9e2..54f2176 100644 --- a/src/java/metric-client/src/test/resources/Running/MetricProducerConfig.yaml +++ b/src/java/metric-client/src/test/resources/ClientRunning/MetricProducerConfig.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.32 port: 6006 stream-id: 4 idle-strategy: SleepingIdleStrategy diff --git a/src/java/metric-client/src/test/resources/Protocol/AlertProducerConfig.yaml b/src/java/metric-client/src/test/resources/Protocol/AlertProducerConfig.yaml deleted file mode 100644 index 2f6bc9d..0000000 --- a/src/java/metric-client/src/test/resources/Protocol/AlertProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6001 - stream-id: 3 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Protocol/ClientProducerConfig.yaml b/src/java/metric-client/src/test/resources/Protocol/ClientProducerConfig.yaml deleted file mode 100644 index 0fd6195..0000000 --- a/src/java/metric-client/src/test/resources/Protocol/ClientProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6001 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Protocol/MetricProducerConfig.yaml b/src/java/metric-client/src/test/resources/Protocol/MetricProducerConfig.yaml deleted file mode 100644 index 8c9d138..0000000 --- a/src/java/metric-client/src/test/resources/Protocol/MetricProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6001 - stream-id: 4 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/AlertProducerConfig.yaml b/src/java/metric-client/src/test/resources/ProtocolTest/AlertProducerConfig.yaml similarity index 100% rename from src/java/metric-client/src/test/resources/AlertProducerConfig.yaml rename to src/java/metric-client/src/test/resources/ProtocolTest/AlertProducerConfig.yaml diff --git a/src/java/metric-client/src/test/resources/ClientProducerConfig.yaml b/src/java/metric-client/src/test/resources/ProtocolTest/ClientProducerConfig.yaml similarity index 100% rename from src/java/metric-client/src/test/resources/ClientProducerConfig.yaml rename to src/java/metric-client/src/test/resources/ProtocolTest/ClientProducerConfig.yaml diff --git a/src/java/metric-client/src/test/resources/ClientConsumerConfig.yaml b/src/java/metric-client/src/test/resources/ProtocolTest/ClientSubscriberConfig.yaml similarity index 93% rename from src/java/metric-client/src/test/resources/ClientConsumerConfig.yaml rename to src/java/metric-client/src/test/resources/ProtocolTest/ClientSubscriberConfig.yaml index 99eefd2..f4be199 100644 --- a/src/java/metric-client/src/test/resources/ClientConsumerConfig.yaml +++ b/src/java/metric-client/src/test/resources/ProtocolTest/ClientSubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/metric-client/src/test/resources/MetricProducerConfig.yaml b/src/java/metric-client/src/test/resources/ProtocolTest/MetricProducerConfig.yaml similarity index 100% rename from src/java/metric-client/src/test/resources/MetricProducerConfig.yaml rename to src/java/metric-client/src/test/resources/ProtocolTest/MetricProducerConfig.yaml diff --git a/src/java/metric-client/src/test/resources/Protocol/ServerProducerConfig.yaml b/src/java/metric-client/src/test/resources/ProtocolTest/ServerProducerConfig.yaml similarity index 100% rename from src/java/metric-client/src/test/resources/Protocol/ServerProducerConfig.yaml rename to src/java/metric-client/src/test/resources/ProtocolTest/ServerProducerConfig.yaml diff --git a/src/java/metric-client/src/test/resources/ServerConsumerConfig.yaml b/src/java/metric-client/src/test/resources/ProtocolTest/ServerSubscriberConfig.yaml similarity index 93% rename from src/java/metric-client/src/test/resources/ServerConsumerConfig.yaml rename to src/java/metric-client/src/test/resources/ProtocolTest/ServerSubscriberConfig.yaml index 6a54d40..a81179d 100644 --- a/src/java/metric-client/src/test/resources/ServerConsumerConfig.yaml +++ b/src/java/metric-client/src/test/resources/ProtocolTest/ServerSubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_2.yaml b/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_2.yaml deleted file mode 100644 index 4eb68d3..0000000 --- a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_2.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost - port: 6120 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_1.yaml b/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_1.yaml deleted file mode 100644 index d12fc3e..0000000 --- a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_1.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost - port: 6020 - stream-id: 2 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_1.yaml b/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_1.yaml deleted file mode 100644 index a851a18..0000000 --- a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_1.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost - port: 6020 - stream-id: 3 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_2.yaml b/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_2.yaml deleted file mode 100644 index e83a9db..0000000 --- a/src/java/metric-client/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig3_2.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost - port: 6120 - stream-id: 3 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Running/ClientProducerConfig.yaml b/src/java/metric-client/src/test/resources/Running/ClientProducerConfig.yaml deleted file mode 100644 index 0fd6195..0000000 --- a/src/java/metric-client/src/test/resources/Running/ClientProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6001 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/ServerProducerConfig.yaml b/src/java/metric-client/src/test/resources/ServerProducerConfig.yaml deleted file mode 100644 index a64c751..0000000 --- a/src/java/metric-client/src/test/resources/ServerProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6001 - stream-id: 2 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/AlertConsumerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/AlertConsumerConfig.yaml deleted file mode 100644 index de6a7fa..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/AlertConsumerConfig.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6005 - ip: localhost - port: 6006 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/AlertProducerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/AlertProducerConfig.yaml deleted file mode 100644 index 2f6bc9d..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/AlertProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6001 - stream-id: 3 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/ClientConsumerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/ClientConsumerConfig.yaml deleted file mode 100644 index 9f2a457..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/ClientConsumerConfig.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6002 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/MetricConsumerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/MetricConsumerConfig.yaml deleted file mode 100644 index d38573e..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/MetricConsumerConfig.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6001 - stream-id: 4 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/MetricProducerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/MetricProducerConfig.yaml deleted file mode 100644 index eab119b..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/MetricProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6003 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/ServerConsumerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/ServerConsumerConfig.yaml deleted file mode 100644 index 6a54d40..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/ServerConsumerConfig.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6001 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/WithServer/ServerProducerConfig.yaml b/src/java/metric-client/src/test/resources/WithServer/ServerProducerConfig.yaml deleted file mode 100644 index 99b40f9..0000000 --- a/src/java/metric-client/src/test/resources/WithServer/ServerProducerConfig.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : udp - ip: localhost - port: 6002 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/main/java/ru/realalerting/producer/AlertProducer.java b/src/java/protocol/src/main/java/ru/realalerting/producer/AlertProducer.java index 888bbef..522a48c 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/producer/AlertProducer.java +++ b/src/java/protocol/src/main/java/ru/realalerting/producer/AlertProducer.java @@ -35,13 +35,14 @@ public boolean sendAlert(AlertLogicBase alertLogic, int metricId, long value, lo return false; } + // пока не поддерживается с double public boolean sendAlert(AlertLogicBase alertLogic, int metricId, double value, long timestamp) { // if (alertLogic.calculateAlert(metricId, value, timestamp)) { return sendSingleMetric(metricId, value, timestamp); // } } - public boolean sendAlert(AlertLogicBase alertLogic, int alertId, int metricId, long value, long timestamp) { + public boolean sendAlertWithAlertId(AlertLogicBase alertLogic, int alertId, int metricId, long value, long timestamp) { if (alertLogic.calculateAlert(metricId, value, timestamp)) { return sendSingleMetricWithAlertId(alertId, metricId, value, timestamp); } @@ -60,9 +61,7 @@ private void sendData(int alertId, int metricId, long value, long timestamp, Mut private boolean sendSingleMetricWithAlertId(int alertId, int metricId, long value, long timestamp) { boolean isSended = false; BufferClaim curBufferClaim = this.bufferClaim.get(); - long temp = producer.getPublication().tryClaim(MetricConstants.ID_SIZE + MetricConstants.METRIC_BYTES, curBufferClaim); -// System.out.println(temp); - if (temp > 0) { + if (producer.getPublication().tryClaim(MetricConstants.ID_SIZE + MetricConstants.METRIC_BYTES, curBufferClaim) > 0) { MutableDirectBuffer buf = curBufferClaim.buffer(); sendData(alertId, metricId, value, timestamp, buf, curBufferClaim.offset()); curBufferClaim.commit(); @@ -73,11 +72,11 @@ private boolean sendSingleMetricWithAlertId(int alertId, int metricId, long valu return isSended; } - public boolean sendAlertWithAlertId(AlertLogicBase alertLogic, int alertId, int metricId, long value, long timestamp) { - if (alertLogic.calculateAlert(metricId, value, timestamp)) { - return sendSingleMetricWithAlertId(alertId, metricId, value, timestamp); - } - return false; - } +// public boolean sendAlertWithAlertId(AlertLogicBase alertLogic, int alertId, int metricId, long value, long timestamp) { +// if (alertLogic.calculateAlert(metricId, value, timestamp)) { +// return sendSingleMetricWithAlertId(alertId, metricId, value, timestamp); +// } +// return false; +// } } \ No newline at end of file diff --git a/src/java/protocol/src/main/java/ru/realalerting/producer/BaseProducer.java b/src/java/protocol/src/main/java/ru/realalerting/producer/BaseProducer.java index d2700fa..08066be 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/producer/BaseProducer.java +++ b/src/java/protocol/src/main/java/ru/realalerting/producer/BaseProducer.java @@ -4,12 +4,11 @@ import ru.realalerting.protocol.RealAlertingDriverContext; import ru.realalerting.reader.RealAlertingConfig; +import java.util.concurrent.atomic.AtomicBoolean; + /** * @author Karbayev Saruar */ -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.atomic.AtomicInteger; - public class BaseProducer implements AutoCloseable { protected final Producer producer; protected final AtomicBoolean isRunning = new AtomicBoolean(false); diff --git a/src/java/protocol/src/main/java/ru/realalerting/producer/MetricBatchThreadProducer.java b/src/java/protocol/src/main/java/ru/realalerting/producer/MetricBatchThreadProducer.java index fe0aef8..7b0f38c 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/producer/MetricBatchThreadProducer.java +++ b/src/java/protocol/src/main/java/ru/realalerting/producer/MetricBatchThreadProducer.java @@ -16,6 +16,10 @@ import java.util.concurrent.Executor; import java.util.concurrent.Executors; +/** + * @author Karbayev Saruar + */ +// Отправляет метрику батчами. Пока нигде не используется public class MetricBatchThreadProducer extends MetricProducer { public MetricBatchThreadProducer(Producer producer) { diff --git a/src/java/protocol/src/main/java/ru/realalerting/producer/TwiceProducer.java b/src/java/protocol/src/main/java/ru/realalerting/producer/TwiceProducer.java index 30ce095..fb2b05b 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/producer/TwiceProducer.java +++ b/src/java/protocol/src/main/java/ru/realalerting/producer/TwiceProducer.java @@ -4,6 +4,7 @@ import ru.realalerting.protocol.RealAlertingDriverContext; import ru.realalerting.reader.RealAlertingConfig; +// для Alert и Api нод, но пока не используется public class TwiceProducer extends BaseProducer{ private Producer secondProducer; private final ThreadLocal secondBufferClaim = ThreadLocal.withInitial(() -> new BufferClaim()); diff --git a/src/java/protocol/src/main/java/ru/realalerting/protocol/Protocol.java b/src/java/protocol/src/main/java/ru/realalerting/protocol/Protocol.java index ff76a68..22d9b86 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/protocol/Protocol.java +++ b/src/java/protocol/src/main/java/ru/realalerting/protocol/Protocol.java @@ -32,8 +32,4 @@ public final class Protocol { public static final int INSTRUCTION_NEW_CRITICAL_ALERT_TYPE_2 = 12; //... - - -// private Protocol() {} - } diff --git a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/ApiBalancer.java b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/ApiBalancer.java index d4b45cc..40c6d04 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/ApiBalancer.java +++ b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/ApiBalancer.java @@ -52,7 +52,4 @@ public class ApiBalancer { // node1.waitUntilConnected(); // node2.waitUntilConnected(); // } - - - } diff --git a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetCriticalAlerts.java b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetCriticalAlerts.java index 4559d88..57893ad 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetCriticalAlerts.java +++ b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetCriticalAlerts.java @@ -12,8 +12,6 @@ import ru.realalerting.protocol.MetricConstants; import ru.realalerting.protocol.Protocol; -import java.nio.charset.StandardCharsets; - public class GetCriticalAlerts implements RequestProcessor { private final BufferClaim bufferClaim = new BufferClaim(); private final String getCriticalAlertProducer = """ @@ -32,19 +30,19 @@ public void doWork(int clientId, SqlClient client, Producer producer, DirectBuff int metricId = directBuffer.getInt(offset); offset += MetricConstants.ID_SIZE; client.preparedQuery(getAlertsConfigsQuery) - .execute(Tuple.of(clientId, metricId)) - .onComplete(rowSetAsyncResult -> { - if (rowSetAsyncResult.succeeded()) { - RowSet rows = rowSetAsyncResult.result(); - if (rows.size() == 0) { - sendNoCriticalAlerts(requestId, producer); - } else { - getMetricCriticalAlertProducer(requestId, clientId, metricId, producer, client, rows); - } + .execute(Tuple.of(clientId, metricId)) + .onComplete(rowSetAsyncResult -> { + if (rowSetAsyncResult.succeeded()) { + RowSet rows = rowSetAsyncResult.result(); + if (rows.size() == 0) { + sendNoCriticalAlerts(requestId, producer); } else { - System.err.println("Failed to get alerts configs: " + rowSetAsyncResult.cause().getMessage()); + getMetricCriticalAlertProducer(requestId, clientId, metricId, producer, client, rows); } - }); + } else { + System.err.println("Failed to get alerts configs: " + rowSetAsyncResult.cause().getMessage()); + } + }); } private boolean sendNoCriticalAlerts(int requestId, Producer producer) { @@ -65,19 +63,19 @@ private boolean sendNoCriticalAlerts(int requestId, Producer producer) { private void getMetricCriticalAlertProducer (int requestId, int clientId, int metricId, Producer producer, SqlClient client, RowSet alertConfigsRows) { client.preparedQuery(getCriticalAlertProducer) - .execute(Tuple.of(clientId, metricId)) - .onComplete(rowSetAsyncResult -> { - if (rowSetAsyncResult.succeeded()) { - RowSet rowsProducer = rowSetAsyncResult.result(); - Row rowProducer = rowsProducer.iterator().next(); - String uri = rowProducer.getString(0); - int streamId = rowProducer.getInteger(1); - RequestConstants.sendGetMetricIdWithCriticalAlert(bufferClaim, - Protocol.INSTRUCTION_SET_METRIC_CRITICAL_ALERTS_BY_METRIC_ID, requestId, metricId, - uri, streamId, producer, alertConfigsRows); - } else { - System.err.println("Failed to get critical alert producer: " + rowSetAsyncResult.cause().getMessage()); - } - }); + .execute(Tuple.of(clientId, metricId)) + .onComplete(rowSetAsyncResult -> { + if (rowSetAsyncResult.succeeded()) { + RowSet rowsProducer = rowSetAsyncResult.result(); + Row rowProducer = rowsProducer.iterator().next(); + String uri = rowProducer.getString(0); + int streamId = rowProducer.getInteger(1); + RequestConstants.sendGetMetricIdWithCriticalAlert(bufferClaim, + Protocol.INSTRUCTION_SET_METRIC_CRITICAL_ALERTS_BY_METRIC_ID, requestId, metricId, + uri, streamId, producer, alertConfigsRows); + } else { + System.err.println("Failed to get critical alert producer: " + rowSetAsyncResult.cause().getMessage()); + } + }); } } diff --git a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetMetricId.java b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetMetricId.java index 240ae82..e1a04cc 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetMetricId.java +++ b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/GetMetricId.java @@ -152,17 +152,17 @@ private void createMetricId(int requestId, int clientId, SqlClient client, Produ private boolean sendGetMetricIdWithoutCriticalAlertsResponse(int requestId, int metricId, Producer producer) { boolean isSended = false; - int allocatedMemory = MetricConstants.INT_SIZE + MetricConstants.ID_SIZE + MetricConstants.ID_SIZE; - // instructionId(int) + requestId(int) + metricId(int) + int allocatedMemory = MetricConstants.ID_SIZE + MetricConstants.ID_SIZE + MetricConstants.ID_SIZE; + // instructionId + requestId + metricId if (producer.getPublication().tryClaim(allocatedMemory, bufferClaim) > 0) { MutableDirectBuffer buf = bufferClaim.buffer(); int offset = bufferClaim.offset(); buf.putInt(offset, Protocol.INSTRUCTION_SET_METRIC_ID_WITHOUT_CRITICAL_ALERTS); offset += MetricConstants.ID_SIZE; buf.putInt(offset, requestId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; buf.putInt(offset, metricId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; bufferClaim.commit(); isSended = true; } diff --git a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/RequestConstants.java b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/RequestConstants.java index 63a79de..feb202a 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/protocol/client/RequestConstants.java +++ b/src/java/protocol/src/main/java/ru/realalerting/protocol/client/RequestConstants.java @@ -20,12 +20,12 @@ public static boolean sendGetMetricIdWithCriticalAlert(BufferClaim bufferClaim, Producer producer, RowSet rows) { boolean isSended = false; byte[] uriBytes = uri.getBytes(StandardCharsets.UTF_8); - int allocatedMemory = MetricConstants.INT_SIZE + MetricConstants.ID_SIZE + MetricConstants.ID_SIZE + - MetricConstants.INT_SIZE + MetricConstants.INT_SIZE + uriBytes.length + MetricConstants.INT_SIZE + - MetricConstants.ID_SIZE * rows.size() + (MetricConstants.INT_SIZE + MetricConstants.INT_SIZE) * rows.size(); - // instructionId(int) + requestId(int) + metricId(int) + critical alert count + длина uri + - // + количество байт в uri + streamId + alertId(int) * critical alert count + - // + (id конфига для просчета алерта + threshold ) * critical alert count + int allocatedMemory = MetricConstants.ID_SIZE + MetricConstants.ID_SIZE + MetricConstants.ID_SIZE + + MetricConstants.INT_SIZE + MetricConstants.INT_SIZE + uriBytes.length + MetricConstants.ID_SIZE + + MetricConstants.ID_SIZE * rows.size() + (MetricConstants.ID_SIZE + MetricConstants.INT_SIZE) * rows.size(); + // instructionId + requestId + metricId + + // critical alert count + длина uri + количество байт в uri + streamId + + // alertId * critical alert count + (id конфига для просчета алерта + threshold ) * critical alert count // TODO нужно переделать систему отправки конфиги алертов if (producer.getPublication().tryClaim(allocatedMemory, bufferClaim) > 0) { MutableDirectBuffer buf = bufferClaim.buffer(); @@ -33,9 +33,9 @@ public static boolean sendGetMetricIdWithCriticalAlert(BufferClaim bufferClaim, buf.putInt(offset, protocolInstruction); offset += MetricConstants.ID_SIZE; buf.putInt(offset, requestId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; buf.putInt(offset, metricId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; buf.putInt(offset, rows.size()); offset += MetricConstants.INT_SIZE; buf.putInt(offset, uriBytes.length); @@ -43,12 +43,12 @@ public static boolean sendGetMetricIdWithCriticalAlert(BufferClaim bufferClaim, buf.putBytes(offset, uriBytes); offset += uriBytes.length; buf.putInt(offset, streamId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; for (Row row : rows) { int alertId = row.getInteger(0); String alertConfig = row.getString(1); buf.putInt(offset, alertId); - offset += MetricConstants.INT_SIZE; + offset += MetricConstants.ID_SIZE; offset = sendAlertConfig(alertConfig, producer, buf, offset); } bufferClaim.commit(); diff --git a/src/java/protocol/src/main/java/ru/realalerting/reader/ConfigReader.java b/src/java/protocol/src/main/java/ru/realalerting/reader/ConfigReader.java index 7e9758a..e8aa425 100644 --- a/src/java/protocol/src/main/java/ru/realalerting/reader/ConfigReader.java +++ b/src/java/protocol/src/main/java/ru/realalerting/reader/ConfigReader.java @@ -3,10 +3,15 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.yaml.YAMLFactory; +import io.aeron.ChannelUriStringBuilder; import java.io.File; import java.io.IOException; +import java.net.Inet4Address; +import java.net.InetAddress; +import java.net.NetworkInterface; import java.util.ArrayList; +import java.util.Enumeration; /** @@ -50,7 +55,7 @@ public static RealAlertingConfig readProducerFromFile(String configPath) { } } - public static RealAlertingConfig readConsumerFromFile(String configPath) { + public static RealAlertingConfig readSubscriberFromFile(String configPath) { final File fileYamlConfiguration = new File(configPath); if (!fileYamlConfiguration.exists() || !fileYamlConfiguration.isFile() @@ -59,7 +64,7 @@ public static RealAlertingConfig readConsumerFromFile(String configPath) { } var objectMapper = new ObjectMapper(new YAMLFactory()); try { - JsonNode consumerYamlSection = objectMapper.readTree(fileYamlConfiguration).get("consumer"); + JsonNode consumerYamlSection = objectMapper.readTree(fileYamlConfiguration).get("subscriber"); JsonNode streams = consumerYamlSection.get("streams").get(0); String consumerType = streams.get("subscription-type").asText(); String streamUri = switch (consumerType) { @@ -85,6 +90,39 @@ public static RealAlertingConfig readConsumerFromFile(String configPath) { } } + // https://github.com/real-logic/aeron-cookbook-code/blob/b77cb301731b29d239e18f2ae226f781b0c0b190/aeron-mdc/aeron-mdc-subscriber/src/main/java/com/aeroncookbook/aeron/mdc/MultiDestinationSubscriberAgent.java#L71 + private static String localHost(final String fallback) + { + try + { + final Enumeration interfaceEnumeration = NetworkInterface.getNetworkInterfaces(); + while (interfaceEnumeration.hasMoreElements()) + { + final var networkInterface = interfaceEnumeration.nextElement(); + + if (networkInterface.getName().startsWith("eth0")) + { + final Enumeration interfaceAddresses = networkInterface.getInetAddresses(); + while (interfaceAddresses.hasMoreElements()) + { + if (interfaceAddresses.nextElement() instanceof Inet4Address inet4Address) + { + System.out.println("detected ip4 address as " + inet4Address.getHostAddress()); + return inet4Address.getHostAddress(); + // ServerRunning вернет 10.129.0.33 + // можно проверить на VM ip запустив команду ip address + } + } + } + } + } + catch (final Exception e) + { + System.out.println("Failed to get address, using " + fallback); + } + return fallback; + } + public static ArrayList readManyConsumerFromFile(String configPath) { final File fileYamlConfiguration = new File(configPath); if (!fileYamlConfiguration.exists() @@ -94,7 +132,7 @@ public static ArrayList readManyConsumerFromFile(String conf } var objectMapper = new ObjectMapper(new YAMLFactory()); try { - JsonNode consumerYamlSection = objectMapper.readTree(fileYamlConfiguration).get("consumer"); + JsonNode consumerYamlSection = objectMapper.readTree(fileYamlConfiguration).get("subscriber"); ArrayList streams = new ArrayList<>(); for (JsonNode node: consumerYamlSection.get("streams")) { String consumerType = node.get("subscription-type").asText(); diff --git a/src/java/alering-node-new/src/test/resources/AlertNodeConsumerConfig1.yaml b/src/java/protocol/src/main/resources/AlertNodes/AlertNodeSubscriberConfig1.yaml similarity index 94% rename from src/java/alering-node-new/src/test/resources/AlertNodeConsumerConfig1.yaml rename to src/java/protocol/src/main/resources/AlertNodes/AlertNodeSubscriberConfig1.yaml index 08b03ee..523220d 100644 --- a/src/java/alering-node-new/src/test/resources/AlertNodeConsumerConfig1.yaml +++ b/src/java/protocol/src/main/resources/AlertNodes/AlertNodeSubscriberConfig1.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: mdc publication-ip: localhost diff --git a/src/java/alering-node-new/src/test/resources/AlertNodeConsumerConfig2.yaml b/src/java/protocol/src/main/resources/AlertNodes/AlertNodeSubscriberConfig2.yaml similarity index 94% rename from src/java/alering-node-new/src/test/resources/AlertNodeConsumerConfig2.yaml rename to src/java/protocol/src/main/resources/AlertNodes/AlertNodeSubscriberConfig2.yaml index 08b03ee..523220d 100644 --- a/src/java/alering-node-new/src/test/resources/AlertNodeConsumerConfig2.yaml +++ b/src/java/protocol/src/main/resources/AlertNodes/AlertNodeSubscriberConfig2.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: mdc publication-ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig1.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig1.yaml deleted file mode 100644 index 99eefd2..0000000 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig1.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6001 - stream-id: 2 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig2.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig2.yaml deleted file mode 100644 index d38573e..0000000 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig2.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6001 - stream-id: 4 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/metric-client/src/test/resources/Protocol/ClientConsumerConfig.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig1.yaml similarity index 93% rename from src/java/metric-client/src/test/resources/Protocol/ClientConsumerConfig.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig1.yaml index 99eefd2..f4be199 100644 --- a/src/java/metric-client/src/test/resources/Protocol/ClientConsumerConfig.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig1.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig10.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig10.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig10.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig10.yaml index 4266d93..05ba643 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig10.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig10.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/metric-client/src/test/resources/MetricConsumerConfig.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig2.yaml similarity index 93% rename from src/java/metric-client/src/test/resources/MetricConsumerConfig.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig2.yaml index d38573e..8a8bb0a 100644 --- a/src/java/metric-client/src/test/resources/MetricConsumerConfig.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig2.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig3.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig3.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig3.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig3.yaml index ad61992..457ea0f 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig3.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig3.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig4.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig4.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig4.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig4.yaml index 3fbda71..5dca531 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig4.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig4.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig5.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig5.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig5.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig5.yaml index de378de..f9ad339 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig5.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig5.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig6.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig6.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig6.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig6.yaml index 45b603e..a025416 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig6.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig6.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig7.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig7.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig7.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig7.yaml index ffff809..6b36c47 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig7.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig7.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig8.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig8.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig8.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig8.yaml index ca7c5ce..d71a54e 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig8.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig8.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig9.yaml b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig9.yaml similarity index 93% rename from src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig9.yaml rename to src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig9.yaml index 53093b3..d35c6bc 100644 --- a/src/java/protocol/src/main/resources/ApiNodes/ClientConsumerConfig9.yaml +++ b/src/java/protocol/src/main/resources/ApiNodes/ClientSubscriberConfig9.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/main/resources/MetricConsumerConfig.yaml b/src/java/protocol/src/main/resources/MetricSubscriberConfig.yaml similarity index 100% rename from src/java/protocol/src/main/resources/MetricConsumerConfig.yaml rename to src/java/protocol/src/main/resources/MetricSubscriberConfig.yaml diff --git a/src/java/protocol/src/test/java/ProducerAndSubscriber.java b/src/java/protocol/src/test/java/ProducerAndSubscriberTest.java similarity index 97% rename from src/java/protocol/src/test/java/ProducerAndSubscriber.java rename to src/java/protocol/src/test/java/ProducerAndSubscriberTest.java index c0f2218..731fd08 100644 --- a/src/java/protocol/src/test/java/ProducerAndSubscriber.java +++ b/src/java/protocol/src/test/java/ProducerAndSubscriberTest.java @@ -26,7 +26,7 @@ /** * @author Karbayev Saruar */ -public class ProducerAndSubscriber { +public class ProducerAndSubscriberTest { private static Producer producer; private static Subscriber subscriber; @@ -35,8 +35,8 @@ public class ProducerAndSubscriber { @BeforeAll static void run() throws IOException { context = new RealAlertingDriverContext("/dev/shm/aeron"); - producer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ProducerConfig.yaml")); - subscriber = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/ConsumerConfig.yaml")); + producer = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/ProducerAndSubscriber/ProducerConfig.yaml")); + subscriber = new Subscriber(context, ConfigReader.readSubscriberFromFile("src/test/resources/ProducerAndSubscriber/SubscriberConfig.yaml")); } @Test diff --git a/src/java/protocol/src/test/java/ServerRunning.java b/src/java/protocol/src/test/java/ServerRunning.java index 9bd5b47..d61307e 100644 --- a/src/java/protocol/src/test/java/ServerRunning.java +++ b/src/java/protocol/src/test/java/ServerRunning.java @@ -1,39 +1,26 @@ -import io.aeron.logbuffer.Header; import io.vertx.pgclient.PgBuilder; import io.vertx.pgclient.PgConnectOptions; import io.vertx.sqlclient.PoolOptions; import io.vertx.sqlclient.SqlClient; -import org.agrona.DirectBuffer; import ru.realalerting.alertlogic.AlertInfo; import ru.realalerting.alertlogic.AlertLogicBase; import ru.realalerting.alertlogic.GreaterAlert; import ru.realalerting.alertnode.AlertNode; -import ru.realalerting.alertsubscriber.AlertSubscriber; -import ru.realalerting.metrciclient.MetricRegistry; import ru.realalerting.producer.Producer; import ru.realalerting.protocol.RealAlertingDriverContext; import ru.realalerting.protocol.client.ApiNode; import ru.realalerting.reader.ConfigReader; -import ru.realalerting.subscriber.MetricSubscriber; import ru.realalerting.subscriber.Subscriber; -import java.io.FileWriter; import java.io.IOException; -import java.util.ArrayList; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.atomic.AtomicInteger; public class ServerRunning { - private static final String AERON_UDP_FORMAT = "aeron:udp?endpoint=%s:%s"; - private static final String AERON_MDC_PUBLICATION = "aeron:udp?control-mode=dynamic|control=%s:%s"; - private static final String AERON_MDC_SUBSCRIPTION = "aeron:udp?endpoint=%s:%s|control=%s:%s|control-mode=dynamic"; + private static RealAlertingDriverContext context; // Protocol data private static final int clientId = 1; private static ApiNode apiNode; - private static RealAlertingDriverContext context; private static SqlClient client; // Alert System data @@ -46,12 +33,9 @@ public class ServerRunning { private static void setupApiNode() throws IOException { context = new RealAlertingDriverContext("/dev/shm/aeron"); - PgConnectOptions connectOptions = new PgConnectOptions() - .setPort(5432) - .setHost("localhost") - .setDatabase("ControlPlane") - .setUser("ControlPlane") - .setPassword("fdsavcxz"); + // вставить нужное подключение + PgConnectOptions connectOptions = new PgConnectOptions(); + PoolOptions poolOptions = new PoolOptions().setMaxSize(10); client = PgBuilder .client() @@ -59,28 +43,29 @@ private static void setupApiNode() throws IOException { .connectingTo(connectOptions) .build(); apiNode = new ApiNode(client); - Producer protocolServerProducer = new Producer(context, String.format(AERON_UDP_FORMAT, "localhost", 6000), 2); // "src/test/resources/Running/ServerProducerConfig.yaml" - Subscriber protocolServerSubscriber = new Subscriber(context, String.format(AERON_UDP_FORMAT, "localhost", 6001), 1); // "src/test/resources/Running/ServerConsumerConfig.yaml" + Producer protocolServerProducer = new Producer(context, ConfigReader.readProducerFromFile("/home/random/protocol (saruar)/src/test/resources/ServerRunning/ServerProducerConfig.yaml")); + Subscriber protocolServerSubscriber = new Subscriber(context, ConfigReader.readSubscriberFromFile("/home/random/protocol (saruar)/src/test/resources/ServerRunning/ServerSubscriberConfig.yaml")); + apiNode.addClient(clientId, protocolServerProducer, protocolServerSubscriber); apiNode.startClient(clientId); } private static void setUpAlertNodes() throws Exception { -// Producer alertNodeProducer1 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/Running/AlertNodeProducer1Config.yaml")); -// Producer alertNodeProducer2 = new Producer(context, ConfigReader.readProducerFromFile("src/test/resources/Running/AlertNodeProducer2Config.yaml")); - Subscriber alertNodeSubsriber1 = new Subscriber(context, String.format(AERON_MDC_SUBSCRIPTION, "localhost", 6007, "localhost", 6006), 4); // "src/test/resources/Running/AlertNodeConsumer1Config.yaml" + Subscriber alertNodeSubscriber1 = new Subscriber(context, ConfigReader.readSubscriberFromFile("/home/random/protocol (saruar)/src/test/resources/ServerRunning/AlertNodeSubscriber1Config.yaml")); // Subscriber alertNodeSubsriber2 = new Subscriber(context, ConfigReader.readConsumerFromFile("src/test/resources/Running/AlertNodeConsumer2Config.yaml")); - alertNode1 = new AlertNode(alertNodeSubsriber1); + alertNode1 = new AlertNode(alertNodeSubscriber1); // alertNode2 = new AlertNode(alertNodeProducer2, alertNodeSubsriber2); for (int i = 1; i <= alertCount; ++i) { - AlertInfo alertInfo = new AlertInfo(100 + i, 100 + i, 0); - AlertLogicBase alertLogicBase = new GreaterAlert(alertInfo); - Producer alertProducer = new Producer(context, String.format(AERON_MDC_PUBLICATION, "localhost", 6010), i); //"src/test/resources/Running/AlertProducer/AlertProducerConfig" + i + "_1" + ".yaml" - alertNode1.addAlert(alertInfo, alertLogicBase); - alertNode1.addAlertProducer(100 + i, alertProducer); -// alertNode2.addAlert(alertInfo, alertLogicBase); + AlertInfo alertInfo = new AlertInfo(100 + i, 100 + i, 0); + AlertLogicBase alertLogicBase = new GreaterAlert(alertInfo); + Producer alertProducer1 = new Producer(context, ConfigReader.readProducerFromFile("/home/random/protocol (saruar)/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig" + i + "_1" + ".yaml")); +// Producer alertProducer2 = new Producer(context, ConfigReader.readProducerFromFile("/home/random/protocol (saruar)/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig" + i + "_2" + ".yaml")); + alertNode1.addAlert(alertInfo, alertLogicBase); + alertNode1.addAlertProducer(100 + i, alertProducer1); +// alertNode2.addAlert(alertInfo, alertLogicBase); +// alertNode2.addAlertProducer(100 + i, alertProducer2); } alertNode1.start(); // alertNode2.start(); diff --git a/src/java/protocol/src/test/resources/ProducerConfig.yaml b/src/java/protocol/src/test/resources/ProducerAndSubscriberTest/ProducerConfig.yaml similarity index 100% rename from src/java/protocol/src/test/resources/ProducerConfig.yaml rename to src/java/protocol/src/test/resources/ProducerAndSubscriberTest/ProducerConfig.yaml diff --git a/src/java/protocol/src/test/resources/ConsumerConfig.yaml b/src/java/protocol/src/test/resources/ProducerAndSubscriberTest/SubscriberConfig.yaml similarity index 97% rename from src/java/protocol/src/test/resources/ConsumerConfig.yaml rename to src/java/protocol/src/test/resources/ProducerAndSubscriberTest/SubscriberConfig.yaml index a925fb2..18189d5 100644 --- a/src/java/protocol/src/test/resources/ConsumerConfig.yaml +++ b/src/java/protocol/src/test/resources/ProducerAndSubscriberTest/SubscriberConfig.yaml @@ -1,4 +1,4 @@ -consumer: +subscriber: streams: - subscription-type: udp ip: localhost diff --git a/src/java/protocol/src/test/resources/Running/AlertNodeConsumer2Config.yaml b/src/java/protocol/src/test/resources/Running/AlertNodeConsumer2Config.yaml deleted file mode 100644 index cfd2ea6..0000000 --- a/src/java/protocol/src/test/resources/Running/AlertNodeConsumer2Config.yaml +++ /dev/null @@ -1,12 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6005 - ip: localhost - port: 6006 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron - - # // TODO зависит от alertProducer в Client \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/Running/AlertNodeProducer1Config.yaml b/src/java/protocol/src/test/resources/Running/AlertNodeProducer1Config.yaml deleted file mode 100644 index 0ef30ba..0000000 --- a/src/java/protocol/src/test/resources/Running/AlertNodeProducer1Config.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : mdc - ip: localhost - port: 6010 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/Running/AlertNodeProducer2Config.yaml b/src/java/protocol/src/test/resources/Running/AlertNodeProducer2Config.yaml deleted file mode 100644 index b89efae..0000000 --- a/src/java/protocol/src/test/resources/Running/AlertNodeProducer2Config.yaml +++ /dev/null @@ -1,7 +0,0 @@ -producer: - publication-type : mdc - ip: localhost - port: 6010 - stream-id: 2 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_1.yaml b/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_1.yaml deleted file mode 100644 index 6b80601..0000000 --- a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig1_1.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost - port: 6020 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_2.yaml b/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_2.yaml deleted file mode 100644 index df87c04..0000000 --- a/src/java/protocol/src/test/resources/Running/AlertSubscribers/AlertConsumerConfig2_2.yaml +++ /dev/null @@ -1,10 +0,0 @@ -consumer: - streams: - - subscription-type: mdc - publication-ip: localhost - publication-port: 6010 - ip: localhost - port: 6120 - stream-id: 2 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/Running/ServerConsumerConfig.yaml b/src/java/protocol/src/test/resources/Running/ServerConsumerConfig.yaml deleted file mode 100644 index 6a54d40..0000000 --- a/src/java/protocol/src/test/resources/Running/ServerConsumerConfig.yaml +++ /dev/null @@ -1,8 +0,0 @@ -consumer: - streams: - - subscription-type: udp - ip: localhost - port: 6001 - stream-id: 1 - idle-strategy: SleepingIdleStrategy - media-path: /dev/shm/aeron \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/Running/AlertNodeConsumer1Config.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertNodeSubscriber1Config.yaml similarity index 58% rename from src/java/protocol/src/test/resources/Running/AlertNodeConsumer1Config.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertNodeSubscriber1Config.yaml index 4d2b4ce..3c70451 100644 --- a/src/java/protocol/src/test/resources/Running/AlertNodeConsumer1Config.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertNodeSubscriber1Config.yaml @@ -1,12 +1,10 @@ -consumer: +subscriber: streams: - subscription-type: mdc - publication-ip: localhost + publication-ip: 10.129.0.32 publication-port: 6006 - ip: localhost + ip: 10.129.0.33 port: 6007 stream-id: 4 idle-strategy: SleepingIdleStrategy media-path: /dev/shm/aeron - - # // TODO зависит от alertProducer в Client \ No newline at end of file diff --git a/src/java/protocol/src/test/resources/ServerRunning/AlertNodeSubscriber2Config.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertNodeSubscriber2Config.yaml new file mode 100644 index 0000000..05f60c8 --- /dev/null +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertNodeSubscriber2Config.yaml @@ -0,0 +1,10 @@ +subscriber: + streams: + - subscription-type: mdc + publication-ip: 10.129.0.32 + publication-port: 6006 + ip: 10.129.0.33 + port: 6006 + stream-id: 4 + idle-strategy: SleepingIdleStrategy + media-path: /dev/shm/aeron diff --git a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig1_1.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig1_1.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig1_1.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig1_1.yaml index 0ef30ba..efc93a1 100644 --- a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig1_1.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig1_1.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.33 port: 6010 stream-id: 1 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig1_2.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig1_2.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig1_2.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig1_2.yaml index 4e01e35..a2687d7 100644 --- a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig1_2.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig1_2.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.33 port: 6110 stream-id: 1 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig2_1.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig2_1.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig2_1.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig2_1.yaml index b89efae..356b5fb 100644 --- a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig2_1.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig2_1.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.33 port: 6010 stream-id: 2 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig2_2.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig2_2.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig2_2.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig2_2.yaml index e1c6c0a..c3607e0 100644 --- a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig2_2.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig2_2.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.33 port: 6110 stream-id: 2 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig3_1.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig3_1.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig3_1.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig3_1.yaml index 736ef1e..b9e3175 100644 --- a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig3_1.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig3_1.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.33 port: 6010 stream-id: 3 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig3_2.yaml b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig3_2.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig3_2.yaml rename to src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig3_2.yaml index d7f77b9..7d98199 100644 --- a/src/java/protocol/src/test/resources/Running/AlertProducer/AlertProducerConfig3_2.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/AlertProducer/AlertProducerConfig3_2.yaml @@ -1,6 +1,6 @@ producer: publication-type : mdc - ip: localhost + ip: 10.129.0.33 port: 6110 stream-id: 3 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/src/test/resources/Running/ServerProducerConfig.yaml b/src/java/protocol/src/test/resources/ServerRunning/ServerProducerConfig.yaml similarity index 87% rename from src/java/protocol/src/test/resources/Running/ServerProducerConfig.yaml rename to src/java/protocol/src/test/resources/ServerRunning/ServerProducerConfig.yaml index 9f6a20a..cb1d12b 100644 --- a/src/java/protocol/src/test/resources/Running/ServerProducerConfig.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/ServerProducerConfig.yaml @@ -1,6 +1,6 @@ producer: publication-type : udp - ip: localhost + ip: 10.129.0.32 port: 6000 stream-id: 2 idle-strategy: SleepingIdleStrategy diff --git a/src/java/alering-node-new/src/test/resources/ServerConsumerConfig.yaml b/src/java/protocol/src/test/resources/ServerRunning/ServerSubscriberConfig.yaml similarity index 80% rename from src/java/alering-node-new/src/test/resources/ServerConsumerConfig.yaml rename to src/java/protocol/src/test/resources/ServerRunning/ServerSubscriberConfig.yaml index 6a54d40..3ad490a 100644 --- a/src/java/alering-node-new/src/test/resources/ServerConsumerConfig.yaml +++ b/src/java/protocol/src/test/resources/ServerRunning/ServerSubscriberConfig.yaml @@ -1,7 +1,7 @@ -consumer: +subscriber: streams: - subscription-type: udp - ip: localhost + ip: 10.129.0.33 port: 6001 stream-id: 1 idle-strategy: SleepingIdleStrategy diff --git a/src/java/protocol/timestampByAlertId-0.txt b/src/java/protocol/timestampByAlertId-0.txt deleted file mode 100644 index 94aba8e..0000000 --- a/src/java/protocol/timestampByAlertId-0.txt +++ /dev/null @@ -1,9999 +0,0 @@ -61064425520046 -61064425704607 -61064426070235 -61064426228962 -61064426961444 -61064427750718 -61064428257297 -61064429130860 -61064429525942 -61064430110142 -61064430531888 -61064431057079 -61064431152121 -61064431272899 -61064431376552 -61064431846029 -61064432488941 -61064433076186 -61064433524013 -61064433990754 -61064434991678 -61064435111919 -61064435238498 -61064435708843 -61064435821459 -61064435922721 -61064436098245 -61064436213423 -61064436744085 -61064436867588 -61064437361344 -61064437824311 -61064438241054 -61064438369683 -61064438817541 -61064439017518 -61064439244367 -61064439805187 -61064439961063 -61064440489712 -61064441274391 -61064441749402 -61064442214541 -61064442697779 -61064443299960 -61064443706115 -61064444415053 -61064445040041 -61064445202354 -61064445660739 -61064446275477 -61064446920605 -61064447594042 -61064448466887 -61064448921838 -61064449585092 -61064450501803 -61064451071534 -61064451204320 -61064451730304 -61064452448923 -61064452954496 -61064453629522 -61064454076036 -61064454533881 -61064455288004 -61064456430382 -61064456912533 -61064457045787 -61064457501140 -61064458076186 -61064458493057 -61064459302452 -61064459434838 -61064459559636 -61064459682510 -61064460259743 -61064460769946 -61064460934107 -61064461553383 -61064462379211 -61064463067301 -61064463399238 -61064463511376 -61064463697248 -61064463811793 -61064463975126 -61064464679150 -61064465176687 -61064465305135 -61064465405815 -61064465831654 -61064465992122 -61064466844819 -61064467383569 -61064467824110 -61064467931041 -61064468057082 -61064468157602 -61064468671450 -61064469317344 -61064469720355 -61064471032708 -61064471925318 -61064472325045 -61064472428188 -61064472523972 -61064473069271 -61064473792864 -61064473914471 -61064474335316 -61064474813039 -61064475273997 -61064475409961 -61064476042581 -61064476648768 -61064477331113 -61064477753043 -61064477847444 -61064478291944 -61064478717172 -61064478817306 -61064478911875 -61064479365147 -61064480209691 -61064480348099 -61064480494074 -61064480933471 -61064481383662 -61064481475455 -61064481563481 -61064481661770 -61064482131542 -61064482818304 -61064482906777 -61064483270405 -61064483632519 -61064483724016 -61064483809916 -61064484427790 -61064484997232 -61064485381707 -61064485728601 -61064485818620 -61064486173824 -61064486261261 -61064486569189 -61064486901732 -61064487414067 -61064487515197 -61064487596511 -61064487672543 -61064488297650 -61064488417312 -61064488563992 -61064488995971 -61064489378007 -61064489738655 -61064490212400 -61064490523759 -61064490999432 -61064491294043 -61064491613471 -61064491729359 -61064492043394 -61064492651222 -61064492952136 -61064493433191 -61064493870850 -61064493945757 -61064494012893 -61064494421446 -61064495015078 -61064495085788 -61064495160854 -61064495257707 -61064495884905 -61064495962536 -61064496047880 -61064496115280 -61064496599729 -61064497079670 -61064497155154 -61064497224908 -61064497562310 -61064497638184 -61064497702157 -61064497989676 -61064498067944 -61064498148715 -61064498454096 -61064498576507 -61064498640097 -61064499018408 -61064499392636 -61064499478804 -61064499831125 -61064499901494 -61064499967939 -61064500379410 -61064500470151 -61064500560801 -61064500846793 -61064501009926 -61064501093757 -61064501159941 -61064501441564 -61064501526730 -61064501618083 -61064501881127 -61064501977829 -61064502260930 -61064502360581 -61064502449674 -61064503092856 -61064503436469 -61064503513107 -61064503588685 -61064503825143 -61064503892768 -61064503962698 -61064504285780 -61064504350314 -61064504413979 -61064504762012 -61064504833567 -61064504907596 -61064504966551 -61064505287119 -61064505540812 -61064505648341 -61064505884623 -61064506115703 -61064506176753 -61064506246107 -61064506591367 -61064506662928 -61064506732804 -61064507219352 -61064507506532 -61064507570795 -61064507629358 -61064507990363 -61064508483449 -61064508786742 -61064509160323 -61064509376565 -61064509732668 -61064509958718 -61064510286931 -61064510632319 -61064510687169 -61064510913311 -61064510959205 -61064511309062 -61064511585510 -61064511928308 -61064512150690 -61064512468759 -61064512544186 -61064512877732 -61064512932072 -61064513172935 -61064513221004 -61064513454393 -61064513786291 -61064513832468 -61064513999218 -61064514327909 -61064514640372 -61064514697528 -61064514740459 -61064514987097 -61064515061739 -61064515129475 -61064515172208 -61064515759739 -61064515816520 -61064515881304 -61064516227140 -61064516327142 -61064516401438 -61064516994365 -61064517357922 -61064517629296 -61064517822680 -61064518221403 -61064518293992 -61064518356025 -61064518591218 -61064518655445 -61064518940923 -61064519006093 -61064519263710 -61064519327384 -61064519404021 -61064519666498 -61064519923630 -61064519994819 -61064520274719 -61064520326568 -61064520530212 -61064520738941 -61064521028659 -61064521222275 -61064521399177 -61064521577840 -61064521791626 -61064522022861 -61064522074675 -61064522412859 -61064522625018 -61064522996731 -61064523390889 -61064523590155 -61064523804489 -61064523902867 -61064523962669 -61064524212352 -61064524437920 -61064524639850 -61064609480514 -61064609509831 -61064609532432 -61064609557075 -61064609600441 -61064609624900 -61064609644891 -61064609670013 -61064609697443 -61064609724700 -61064609769358 -61064609814464 -61064609839314 -61064609865067 -61064609892686 -61064609916615 -61064609943376 -61064609967649 -61064609993537 -61064610016816 -61064610052823 -61064610077120 -61064610105294 -61064610129730 -61064610158073 -61064610181969 -61064610206939 -61064610229074 -61064610257575 -61064610281928 -61064610308200 -61064610330782 -61064610354112 -61064610382962 -61064610411585 -61064610438609 -61064610476723 -61064610503426 -61064610527494 -61064610554160 -61064610581621 -61064610606875 -61064610632959 -61064610655741 -61064610681764 -61064610707626 -61064610746348 -61064610771866 -61064610792229 -61064610817653 -61064610841484 -61064610867540 -61064610894809 -61064610918671 -61064610943060 -61064610971869 -61064610997982 -61064611025783 -61064611050408 -61064611084715 -61064611112192 -61064611150323 -61064611176905 -61064611201759 -61064611227790 -61064611253838 -61064611277979 -61064611304692 -61064611330524 -61064611355754 -61064611382818 -61064611407238 -61064611433327 -61064611460586 -61064611482773 -61064611515856 -61064611543562 -61064611568330 -61064611594289 -61064611618377 -61064611642021 -61064611668838 -61064611691118 -61064611716277 -61064611746281 -61064611772632 -61064611800253 -61064611824932 -61064611849455 -61064611873432 -61064611902816 -61064611935179 -61064611960638 -61064611985319 -61064612032263 -61064612059339 -61064612087844 -61064612126891 -61064612154219 -61064612180583 -61064612203344 -61064612228827 -61064612253271 -61064612279838 -61064612307479 -61064612332189 -61064612357161 -61064612396620 -61064612422828 -61064612450364 -61064612475534 -61064612499655 -61064612523703 -61064612548754 -61064612573222 -61064612598492 -61064612623454 -61064612650040 -61064612677884 -61064612703717 -61064612729506 -61064612751728 -61064612777105 -61064612809891 -61064612835112 -61064612860611 -61064612956066 -61064613048891 -61064613101076 -61064613123342 -61064613239187 -61064613268351 -61064613295460 -61064613313457 -61064613329009 -61064613355124 -61064613426304 -61064613446702 -61064613465425 -61064613548434 -61064613574002 -61064613590495 -61064613612351 -61064613674225 -61064613731906 -61064613759236 -61064613784581 -61064613797706 -61064613856989 -61064613874524 -61064614050913 -61064614068216 -61064614087504 -61064614232830 -61064614269187 -61064614390469 -61064614409827 -61064614427705 -61064614454452 -61064614619555 -61064614641160 -61064614742266 -61064614813776 -61064614830798 -61064614856730 -61064614945229 -61064615009768 -61064615098131 -61064615117382 -61064615157850 -61064615294228 -61064615312278 -61064615415000 -61064615482300 -61064615630342 -61064615649391 -61064615668203 -61064615695028 -61064615840156 -61064615914390 -61064615986415 -61064616092660 -61064616130287 -61064616165084 -61064616343623 -61064616380499 -61064616417367 -61064616564920 -61064616602224 -61064616640276 -61064616670792 -61064616749793 -61064616788220 -61064616825007 -61064616948755 -61064616982724 -61064617125210 -61064617290641 -61064617330003 -61064617366380 -61064617527268 -61064617639165 -61064617671168 -61064617768104 -61064617806933 -61064617842713 -61064617871622 -61064618003081 -61064618037941 -61064618068936 -61064618182490 -61064618219363 -61064618258875 -61064618383889 -61064618418848 -61064618523152 -61064618561793 -61064618598649 -61064618710156 -61064618748055 -61064618786059 -61064618816113 -61064618931517 -61064618970331 -61064619007114 -61064619149772 -61064619184998 -61064619219190 -61064619330987 -61064619422145 -61064619457917 -61064619497765 -61064619585190 -61064619735021 -61064619772607 -61064619808362 -61064619839406 -61064619971755 -61064620026935 -61064620060751 -61064620137955 -61064620173805 -61064620214705 -61064620247924 -61064620473493 -61064620507799 -61064620633085 -61064620667882 -61064620708693 -61064620842183 -61064620982584 -61064621016805 -61064621047022 -61064621200425 -61064621239316 -61064621272105 -61064621305000 -61064621380395 -61064621490459 -61064621525581 -61064621555350 -61064621676004 -61064621710017 -61064621915447 -61064622064468 -61064622099729 -61064622128694 -61064622225396 -61064622260064 -61064622289917 -61064622440687 -61064622479651 -61064622514585 -61064622629063 -61064622667416 -61064622696776 -61064622725734 -61064622834604 -61064622872774 -61064622921467 -61064623010855 -61064623051391 -61064623088188 -61064623122297 -61064623258773 -61064623297505 -61064623333930 -61064623363413 -61064623480003 -61064623516674 -61064623552890 -61064623681390 -61064623780677 -61064623816161 -61064623906686 -61064623944550 -61064624065064 -61064624090509 -61064624179189 -61064624276587 -61064624295117 -61064624318582 -61064624387325 -61064624424075 -61064624455555 -61064624533351 -61064624616653 -61064624652389 -61064624686747 -61064624770968 -61064624873839 -61064624907834 -61064624932129 -61064625024038 -61064625057405 -61064625080609 -61064625160084 -61064625190218 -61064625206742 -61064625300361 -61064625335273 -61064625374291 -61064625403737 -61064625484000 -61064625515861 -61064625642259 -61064625676559 -61064625712960 -61064625747909 -61064625850945 -61064625887161 -61064625925145 -61064625954421 -61064626063422 -61064626106527 -61064626210532 -61064626250213 -61064626280907 -61064626426248 -61064626462185 -61064626598369 -61064626638784 -61064626676591 -61064626706202 -61064626737524 -61064626864421 -61064626901083 -61064626935691 -61064626966216 -61064627097439 -61064627134381 -61064627170919 -61064627245000 -61064627282152 -61064627316369 -61064627346915 -61064627403842 -61064627439336 -61064627478719 -61064627614556 -61064627651587 -61064627687241 -61064627717186 -61064627788746 -61064627824781 -61064627867952 -61064627898370 -61064628065478 -61064628103905 -61064628139831 -61064628170317 -61064628292692 -61064628332723 -61064628366811 -61064628497395 -61064628531936 -61064628568146 -61064628599053 -61064628719951 -61064628758911 -61064628796340 -61064628828267 -61064628903727 -61064628942032 -61064628979188 -61064629011012 -61064629110643 -61064629237813 -61064629275664 -61064629311977 -61064629449662 -61064629484099 -61064629519855 -61064629551430 -61064629666397 -61064629703802 -61064629738941 -61064629770938 -61064629906622 -61064629944882 -61064630154142 -61064630188457 -61064630244672 -61064630362980 -61064630400077 -61064630437897 -61064630467502 -61064630568883 -61064630598494 -61064630757009 -61064630794062 -61064630826419 -61064630928176 -61064630962603 -61064630992161 -61064631116463 -61064631154511 -61064631200515 -61064631277536 -61064631314987 -61064631344867 -61064631454398 -61064631488365 -61064631589049 -61064631670339 -61064631707359 -61064631742729 -61064631864317 -61064631900043 -61064631937809 -61064632066191 -61064632105134 -61064632152688 -61064632267482 -61064632305709 -61064632343013 -61064632438957 -61064632476910 -61064632512347 -61064632547724 -61064632648090 -61064632682584 -61064632826266 -61064632865897 -61064632901421 -61064633003779 -61064633043235 -61064633075915 -61064633186372 -61064633224671 -61064633262194 -61064633304130 -61064633471035 -61064633511689 -61064633545395 -61064633575305 -61064633698753 -61064633728784 -61064633832114 -61064633862450 -61064633993116 -61064634032437 -61064634065566 -61064634248637 -61064634370734 -61064634401188 -61064634472289 -61064634553255 -61064634589109 -61064634627042 -61064634653765 -61064634689214 -61064634715454 -61064634741690 -61064634770751 -61064634941534 -61064634990469 -61064635070449 -61064635113439 -61064635334969 -61064635374917 -61064635415217 -61064635449658 -61064635650991 -61064635815933 -61064635858728 -61064635895947 -61064635939380 -61064636079098 -61064636303642 -61064636342430 -61064636379391 -61064636414360 -61064636727583 -61064636770752 -61064636803552 -61064637045445 -61064637080768 -61064637322975 -61064637355868 -61064637622256 -61064637665036 -61064637861182 -61064638135707 -61064638156605 -61064638179037 -61064638205602 -61064638390605 -61064638414994 -61064638435272 -61064638667887 -61064638688432 -61064638714541 -61064638737095 -61064638921369 -61064638960232 -61064638993722 -61064639201299 -61064639360120 -61064639539959 -61064639687612 -61064639853255 -61064639873008 -61064639894773 -61064639911875 -61064639929592 -61064639948876 -61064639962898 -61064640222278 -61064640249273 -61064640414425 -61064640598035 -61064640620334 -61064640637339 -61064640653240 -61064640670612 -61064640687745 -61064640925444 -61064640943670 -61064640960934 -61064640977835 -61064641170803 -61064641191629 -61064641209343 -61064641226357 -61064641259362 -61064641463155 -61064641482076 -61064641499877 -61064641516926 -61064641530715 -61064641725130 -61064641845299 -61064641862874 -61064641880105 -61064641896696 -61064642042503 -61064642074997 -61064642106205 -61064642143477 -61064642340425 -61064642377025 -61064642413843 -61064642456312 -61064642594557 -61064642632352 -61064642667375 -61064642699326 -61064642868300 -61064642903159 -61064642940365 -61064643085892 -61064643121456 -61064643160526 -61064643190517 -61064643371003 -61064643416381 -61064643452746 -61064643485477 -61064643718597 -61064643754995 -61064643791225 -61064643908592 -61064643947889 -61064643983166 -61064644035387 -61064644264483 -61064644303746 -61064644338833 -61064644374199 -61064644532013 -61064644580061 -61064644617544 -61064644754013 -61064644791233 -61064644826379 -61064644855972 -61064644998789 -61064645033314 -61064645063464 -61064645190747 -61064645236255 -61064645272197 -61064645438031 -61064645474703 -61064645508855 -61064645546286 -61064645606864 -61064645644055 -61064645675297 -61064645813417 -61064645850602 -61064645886362 -61064646033245 -61064646069698 -61064646107399 -61064646264763 -61064646303059 -61064646340539 -61064646374025 -61064646538759 -61064646574094 -61064646810826 -61064646847961 -61064647105643 -61064647133667 -61064647297655 -61064647333773 -61064647367832 -61064647398651 -61064647625654 -61064647660444 -61064647694236 -61064647724721 -61064647882080 -61064647920213 -61064647955274 -61064647987939 -61064648130302 -61064648165386 -61064648202385 -61064648390033 -61064648424632 -61064648583852 -61064648765984 -61064648797472 -61064648981091 -61064649012289 -61064649046065 -61064649079678 -61064649332181 -61064649370097 -61064649405684 -61064649447958 -61064649621015 -61064649657886 -61064649697892 -61064649963774 -61064649999657 -61064650028717 -61064650132879 -61064650167735 -61064650354241 -61064650490223 -61064650638806 -61064650808338 -61064650913774 -61064650933672 -61064650979644 -61064651252697 -61064651282271 -61064651309290 -61064651480447 -61064651755359 -61064651975865 -61064652021545 -61064652145633 -61064652269875 -61064652500008 -61064652714304 -61064652743073 -61064652767031 -61064652782420 -61064652903780 -61064652922395 -61064653183106 -61064653214535 -61064653449721 -61064653660252 -61064653829999 -61064653860366 -61064653884511 -61064654043919 -61064654071816 -61064654099263 -61064654345763 -61064654380210 -61064654408531 -61064654445844 -61064654618897 -61064654648096 -61064654674936 -61064654790866 -61064654823752 -61064654852717 -61064655044514 -61064655073169 -61064655100614 -61064655370184 -61064655402997 -61064655427004 -61064655451942 -61064655605598 -61064655643897 -61064655669202 -61064655915299 -61064655943485 -61064655968811 -61064656167618 -61064656197735 -61064656223197 -61064656364070 -61064656584407 -61064656604765 -61064656637638 -61064656662633 -61064656682219 -61064656862714 -61064657013969 -61064657067302 -61064657225015 -61064657246151 -61064657276237 -61064657307255 -61064675758535 -61064675867853 -61064675893398 -61064675984653 -61064676124006 -61064676155416 -61064676184072 -61064676247169 -61064676271908 -61064676394448 -61064676444868 -61064676473820 -61064676498377 -61064676569644 -61064676652021 -61064676678658 -61064676795637 -61064676822426 -61064676987170 -61064677014468 -61064677181875 -61064677248899 -61064677310037 -61064677420422 -61064677491605 -61064677564762 -61064677634438 -61064677699931 -61064677724905 -61064677793422 -61064677858442 -61064677965129 -61064677989439 -61064678082453 -61064678208110 -61064678228996 -61064678335233 -61064678354014 -61064678381785 -61064678498504 -61064678537384 -61064678601053 -61064678621156 -61064678641241 -61064678670697 -61064678735395 -61064678758953 -61064678786178 -61064678811724 -61064678866323 -61064678920053 -61064678974468 -61064679062966 -61064679086083 -61064679102528 -61064679206424 -61064679236018 -61064679301815 -61064679320069 -61064679377542 -61064679443718 -61064679463145 -61064679490676 -61064679514187 -61064679628045 -61064679724689 -61064679759831 -61064679787536 -61064679860181 -61064679892039 -61064680060668 -61064680081845 -61064680255852 -61064680277298 -61064680294594 -61064680312177 -61064680338754 -61064680426555 -61064680454480 -61064680573215 -61064680705745 -61064680737241 -61064680756100 -61064680774021 -61064680791772 -61064680830919 -61064680855275 -61064680882504 -61064680992502 -61064681029455 -61064681053548 -61064681173697 -61064681354880 -61064681430212 -61064681490419 -61064681550617 -61064681609877 -61064681668734 -61064681728134 -61064681788080 -61064681845481 -61064681905750 -61064682010481 -61064682070358 -61064682135151 -61064682195380 -61064682335578 -61064682371297 -61064682570424 -61064682710268 -61064682887110 -61064683075559 -61064683095232 -61064683128262 -61064683328339 -61064683431792 -61064683464531 -61064683489179 -61064683668678 -61064683791410 -61064683811291 -61064683843092 -61064683959416 -61064684081322 -61064684102398 -61064684119983 -61064684148138 -61064684164113 -61064684310459 -61064684339219 -61064684485569 -61064684510090 -61064684528653 -61064684554885 -61064684790509 -61064685082455 -61064685108442 -61064685131828 -61064685151629 -61064685297353 -61064685413056 -61064685432247 -61064685569722 -61064685592090 -61064685788713 -61064685993888 -61064686023714 -61064686222618 -61064686246914 -61064686265292 -61064686283210 -61064686492754 -61064686589451 -61064686619492 -61064686761085 -61064686780803 -61064686797754 -61064686816733 -61064686949116 -61064686966977 -61064686993480 -61064687010846 -61064687149924 -61064687168394 -61064687185397 -61064687202764 -61064687301998 -61064687317480 -61064687332355 -61064687348950 -61064687363307 -61064687470122 -61064687578431 -61064687608344 -61064687632989 -61064687812309 -61064688094411 -61064688134589 -61064688161930 -61064688187545 -61064688241885 -61064688475390 -61064688499877 -61064688517192 -61064688538531 -61064688674016 -61064688695248 -61064688724125 -61064689023719 -61064689059204 -61064689179380 -61064689396697 -61064689416273 -61064689623397 -61064689732231 -61064689990545 -61064690058041 -61064690083440 -61064690361075 -61064690392841 -61064690583878 -61064690709244 -61064690919464 -61064691135731 -61064691271424 -61064691409422 -61064691543568 -61064691572676 -61064691928887 -61064691957478 -61064692544323 -61064692571553 -61064692604138 -61064692742129 -61064692763890 -61064692782350 -61064692813624 -61064692836465 -61064693150509 -61064693169813 -61064693197590 -61064693449878 -61064693485711 -61064693525637 -61064693562436 -61064693722930 -61064693752351 -61064693776772 -61064693981027 -61064694175051 -61064694204714 -61064694276492 -61064694536223 -61064694565506 -61064694589842 -61064694806605 -61064694832895 -61064694964558 -61064694988278 -61064695154272 -61064695356454 -61064695393445 -61064695426895 -61064695458784 -61064695648030 -61064695687338 -61064695719641 -61064695836680 -61064696161081 -61064696184627 -61064696204130 -61064696222385 -61064696241559 -61064696260270 -61064696303174 -61064696516447 -61064696699054 -61064696719515 -61064696899074 -61064696911270 -61064696926666 -61064696941738 -61064696957560 -61064697150548 -61064697173393 -61064697192033 -61064697204881 -61064697430023 -61064697449724 -61064697482341 -61064697653872 -61064697675848 -61064697950014 -61064697974221 -61064698228382 -61064698376806 -61064698396475 -61064698491698 -61064698510813 -61064698602560 -61064698622056 -61064698715690 -61064698734627 -61064698829544 -61064698857574 -61064698959209 -61064698979389 -61064699185356 -61064699214946 -61064699241743 -61064699363156 -61064699386015 -61064699568253 -61064699775167 -61064699794104 -61064699817420 -61064699845151 -61064699879221 -61064700187774 -61064700398636 -61064700536745 -61064700677558 -61064700821194 -61064700850987 -61064700957023 -61064700984990 -61064701130437 -61064701248284 -61064701399499 -61064701628912 -61064701878297 -61064702071545 -61064702108657 -61064702152574 -61064702207988 -61064702606820 -61064702642449 -61064702680373 -61064702956717 -61064702984750 -61064703011492 -61064703037992 -61064703153961 -61064703305692 -61064703469770 -61064703635928 -61064703774571 -61064703880567 -61064704098480 -61064704133741 -61064704435064 -61064704454776 -61064704468690 -61064704485424 -61064704502264 -61064704519432 -61064704536451 -61064704551702 -61064704697593 -61064704724870 -61064704749210 -61064705012945 -61064705197691 -61064705215388 -61064705489925 -61064705686360 -61064705909994 -61064706163028 -61064706181967 -61064706205688 -61064706231003 -61064706251046 -61064706277178 -61064706408965 -61064706437191 -61064706553701 -61064706588733 -61064706620576 -61064706645121 -61064706761681 -61064706802208 -61064706926129 -61064706957210 -61064707109655 -61064707257468 -61064707286694 -61064707311779 -61064707451779 -61064707481271 -61064707506202 -61064707746788 -61064707770249 -61064707922892 -61064707949532 -61064708130289 -61064708167177 -61064708193148 -61064708438295 -61064708655237 -61064708853928 -61064709071978 -61064709102964 -61064709356887 -61064709606164 -61064709735044 -61064709767894 -61064709962172 -61064710261422 -61064710442677 -61064710638691 -61064710754395 -61064710784106 -61064710899810 -61064710966048 -61064710989485 -61064711003401 -61064711208377 -61064711239022 -61064711385451 -61064711408716 -61064711508213 -61064711604924 -61064711702463 -61064711725641 -61064711746966 -61064711779514 -61064711801980 -61064711920052 -61064712040111 -61064712183391 -61064712222098 -61064712261869 -61064712493317 -61064712535737 -61064712568712 -61064712886048 -61064713121025 -61064713156242 -61064713195496 -61064713236321 -61064713501287 -61064713541482 -61064713585445 -61064713621048 -61064713814646 -61064713938819 -61064714165119 -61064714208965 -61064714250733 -61064714497112 -61064714670230 -61064714712629 -61064714749024 -61064714781268 -61064714968149 -61064715176067 -61064715208395 -61064715990758 -61064716049396 -61064716066526 -61064716097996 -61064716319225 -61064716340642 -61064716367392 -61064716517116 -61064716544264 -61064716562860 -61064716588088 -61064716822470 -61064716844029 -61064717061629 -61064717331854 -61064717355420 -61064717372811 -61064717494213 -61064717637224 -61064717660006 -61064717683913 -61064717903770 -61064718093294 -61064718128639 -61064718155611 -61064718339942 -61064718375703 -61064718404369 -61064718598451 -61064718729371 -61064718914388 -61064718951171 -61064718972550 -61064718990205 -61064719097810 -61064719287543 -61064719318054 -61064719345241 -61064719558678 -61064719688931 -61064719722333 -61064719747527 -61064719995036 -61064720042870 -61064720276237 -61064720306593 -61064720549624 -61064720577836 -61064720604055 -61064720919173 -61064721111074 -61064721135499 -61064721160420 -61064721341258 -61064721362158 -61064721594957 -61064721813730 -61064721843310 -61064722050368 -61064722074523 -61064722136914 -61064722258760 -61064722299315 -61064722423131 -61064722443649 -61064722463581 -61064722492906 -61064722511166 -61064722546470 -61064722673840 -61064722837951 -61064722972500 -61064722991238 -61064723010549 -61064723136637 -61064723164586 -61064723342674 -61064723667584 -61064723826647 -61064723951839 -61064723976829 -61064724123171 -61064724259128 -61064724403814 -61064724585198 -61064724676145 -61064724812809 -61064724991176 -61064725014713 -61064725204128 -61064725394618 -61064725425396 -61064725629620 -61064725660211 -61064725700199 -61064725831135 -61064725862756 -61064726093782 -61064726238859 -61064726276326 -61064726302292 -61064726432866 -61064726471338 -61064726502798 -61064726685419 -61064726704758 -61064726722444 -61064726883217 -61064726919393 -61064726939288 -61064727031878 -61064727059248 -61064727080808 -61064727325913 -61064727361911 -61064727609643 -61064727920232 -61064727972348 -61064728242375 -61064728265339 -61064728284565 -61064742441401 -61064742517125 -61064742597771 -61064742728106 -61064742762477 -61064742787813 -61064743579046 -61064743657090 -61064743729988 -61064743817465 -61064743880477 -61064743944239 -61064744035818 -61064744068227 -61064744135198 -61064744214140 -61064744248630 -61064744383338 -61064744509804 -61064744549981 -61064744721250 -61064744767581 -61064744796409 -61064745022152 -61064745122638 -61064745139356 -61064745155420 -61064745188107 -61064745211265 -61064745231265 -61064745258029 -61064745279747 -61064745302675 -61064745329324 -61064745352211 -61064745370427 -61064745393199 -61064745430498 -61064745448145 -61064745470944 -61064745493940 -61064745508393 -61064745531260 -61064745553678 -61064745567723 -61064745581454 -61064745603709 -61064745623981 -61064745637729 -61064745652195 -61064745675743 -61064745699994 -61064745730658 -61064745770425 -61064745804146 -61064745873188 -61064745937390 -61064746001222 -61064746081192 -61064746145084 -61064746208151 -61064746271178 -61064746334901 -61064746432012 -61064746492108 -61064746552192 -61064746613000 -61064746694995 -61064746759176 -61064746819379 -61064746879885 -61064746939701 -61064747044405 -61064747104353 -61064747163966 -61064747223142 -61064747312609 -61064747352860 -61064747377763 -61064747477962 -61064747506351 -61064747610341 -61064747777736 -61064747963913 -61064748053975 -61064748079375 -61064748228814 -61064748252697 -61064748383954 -61064748409057 -61064748433601 -61064748458972 -61064748579046 -61064748605269 -61064748629507 -61064748704894 -61064748725871 -61064748755247 -61064748785335 -61064748811019 -61064748978156 -61064749278278 -61064749408904 -61064749680750 -61064749714954 -61064749739944 -61064749764572 -61064749881616 -61064749942688 -61064749967614 -61064750125724 -61064750147727 -61064750354318 -61064750379669 -61064750555101 -61064750719421 -61064750839199 -61064750862867 -61064751051563 -61064751237542 -61064751274134 -61064751306527 -61064751485333 -61064751522646 -61064751553973 -61064751740360 -61064751789782 -61064751835931 -61064751962911 -61064751994873 -61064752040808 -61064752067241 -61064752092278 -61064752119142 -61064752144322 -61064752173137 -61064752203679 -61064752239342 -61064752523093 -61064752886910 -61064752904804 -61064752922260 -61064753248641 -61064753293923 -61064753509594 -61064753545804 -61064753567761 -61064753585776 -61064753728016 -61064753747077 -61064753770538 -61064753799428 -61064753998436 -61064754096277 -61064754115566 -61064754134175 -61064754153328 -61064754172244 -61064754204073 -61064754300985 -61064754319741 -61064754337676 -61064754355767 -61064754373578 -61064754492353 -61064754689033 -61064754707119 -61064754725233 -61064754738915 -61064755063489 -61064755262421 -61064755284273 -61064755301867 -61064755326731 -61064755361960 -61064755618028 -61064755637263 -61064755654062 -61064755670854 -61064755688062 -61064755870888 -61064755891266 -61064755921653 -61064755939301 -61064755953110 -61064756118221 -61064756227276 -61064756254309 -61064756271546 -61064756316833 -61064756359092 -61064756380091 -61064756682756 -61064756705931 -61064756720344 -61064756887850 -61064757086335 -61064757105137 -61064757228824 -61064757439889 -61064757660473 -61064757780932 -61064757996568 -61064758030290 -61064758254896 -61064758284654 -61064758315829 -61064758459244 -61064758693593 -61064758908813 -61064759079712 -61064759225633 -61064759256329 -61064759452451 -61064759487310 -61064759744060 -61064759777327 -61064760056542 -61064760090667 -61064760342426 -61064760375680 -61064760412294 -61064760447277 -61064760664812 -61064760870431 -61064761046984 -61064761172468 -61064761207804 -61064761261910 -61064761383653 -61064761517716 -61064761631774 -61064761668019 -61064761858016 -61064761919303 -61064761950866 -61064762151124 -61064762190441 -61064762227721 -61064762425406 -61064762464210 -61064762496225 -61064762730118 -61064762956691 -61064762994177 -61064763025749 -61064763365646 -61064763600966 -61064763738510 -61064763966073 -61064763993496 -61064764047344 -61064764074668 -61064764483120 -61064764501140 -61064764521382 -61064764538776 -61064764552674 -61064764724200 -61064764917306 -61064764954604 -61064764989937 -61064765136098 -61064765333644 -61064765352091 -61064765370753 -61064765400551 -61064765421529 -61064765698203 -61064765898000 -61064765919970 -61064766109451 -61064766140746 -61064766281329 -61064766505868 -61064766530564 -61064766558124 -61064766577064 -61064766600194 -61064766733165 -61064766777093 -61064766814455 -61064766845890 -61064767090672 -61064767332029 -61064767374463 -61064767413318 -61064767445137 -61064767602336 -61064767640255 -61064767669951 -61064767919910 -61064767958439 -61064767988739 -61064768225215 -61064768256159 -61064768493774 -61064768534517 -61064768571302 -61064768768272 -61064768803072 -61064768821133 -61064769063905 -61064769096282 -61064769116538 -61064769340906 -61064769371204 -61064769395412 -61064769593627 -61064769633179 -61064769741606 -61064769771307 -61064769791425 -61064769833388 -61064769851648 -61064770064770 -61064770092392 -61064770114869 -61064770135514 -61064770337418 -61064770619745 -61064770641765 -61064770656323 -61064770944357 -61064770983867 -61064771273732 -61064771291677 -61064771313704 -61064771341886 -61064771357999 -61064771509088 -61064771537523 -61064771554985 -61064771573584 -61064771782629 -61064771813160 -61064771829994 -61064772017169 -61064772049778 -61064772068158 -61064772082111 -61064772202810 -61064772226905 -61064772258013 -61064772275624 -61064772293008 -61064772493413 -61064772511495 -61064772528383 -61064772545528 -61064772756505 -61064772773767 -61064772795549 -61064772821817 -61064773022276 -61064773055423 -61064773146201 -61064773305705 -61064773323274 -61064773340292 -61064773356979 -61064773458703 -61064773486944 -61064773583570 -61064773601179 -61064773618509 -61064773770934 -61064773800096 -61064773829442 -61064773955223 -61064773972946 -61064773991078 -61064774038567 -61064774186991 -61064774217643 -61064774245702 -61064774480535 -61064774505208 -61064774669567 -61064774824852 -61064774927036 -61064774946001 -61064774963847 -61064774981874 -61064775000388 -61064775104268 -61064775132281 -61064775153247 -61064775174170 -61064775304745 -61064775332963 -61064775358551 -61064775613583 -61064775676135 -61064775895263 -61064775912625 -61064775938094 -61064775966001 -61064776082915 -61064776107594 -61064776297732 -61064776469667 -61064776693723 -61064776951644 -61064777084223 -61064777102218 -61064777118946 -61064777210985 -61064777228368 -61064777249381 -61064777418069 -61064777439647 -61064777473209 -61064777499480 -61064777522396 -61064777657132 -61064777877400 -61064778108273 -61064778136640 -61064778160018 -61064778190557 -61064778361422 -61064778505785 -61064778531949 -61064778730260 -61064778757306 -61064778933493 -61064778968147 -61064779079150 -61064779104888 -61064779133446 -61064779159015 -61064779282474 -61064779455920 -61064779482460 -61064781643047 -61064781857256 -61064781898216 -61064781920009 -61064782026060 -61064782283089 -61064782323433 -61064782342709 -61064782360959 -61064782383618 -61064782403447 -61064782422390 -61064782442462 -61064782468048 -61064782487621 -61064782507321 -61064782526735 -61064782546107 -61064782581784 -61064782604951 -61064782649869 -61064782674201 -61064782698280 -61064782722052 -61064782964889 -61064783205671 -61064783346016 -61064783553018 -61064783590053 -61064783814374 -61064783840198 -61064783867477 -61064783975426 -61064784029435 -61064784051588 -61064784068773 -61064784334378 -61064784348771 -61064784365852 -61064784388536 -61064784412148 -61064784430356 -61064784456441 -61064784583049 -61064784600503 -61064784617453 -61064784635336 -61064784653083 -61064784740421 -61064784838636 -61064784855833 -61064784877022 -61064784987194 -61064785078662 -61064785180108 -61064785352508 -61064785459241 -61064785477951 -61064785495908 -61064785524129 -61064785621523 -61064785763162 -61064785781602 -61064785799553 -61064785891731 -61064786041083 -61064786059597 -61064786077556 -61064786171187 -61064786276011 -61064786419811 -61064786438199 -61064786564997 -61064786589380 -61064786649893 -61064786798435 -61064786815983 -61064786833020 -61064786925153 -61064787034062 -61064787126293 -61064787226291 -61064787362888 -61064787380447 -61064787544461 -61064787562285 -61064787578794 -61064787673180 -61064787696508 -61064787796664 -61064787814451 -61064787831211 -61064787851730 -61064787943089 -61064788055386 -61064788181526 -61064788275501 -61064788376572 -61064788394504 -61064788519603 -61064788662595 -61064788800362 -61064788925360 -61064788942895 -61064788959733 -61064788976703 -61064788992374 -61064789133901 -61064789239687 -61064789257832 -61064789347787 -61064789368412 -61064789385168 -61064789401857 -61064789543952 -61064789630947 -61064789746818 -61064789836086 -61064789956096 -61064790046114 -61064790063524 -61064790080710 -61064790097117 -61064790124155 -61064790137914 -61064790288466 -61064790305932 -61064790322675 -61064790339391 -61064790356343 -61064790373433 -61064790504045 -61064790684362 -61064790702255 -61064790719041 -61064790906732 -61064791032743 -61064791145311 -61064791168700 -61064791261907 -61064791358051 -61064791487425 -61064791643654 -61064791770603 -61064791964412 -61064791981909 -61064792216395 -61064792435201 -61064792461707 -61064792487708 -61064792659645 -61064792686499 -61064792704202 -61064792923832 -61064792954977 -61064793091561 -61064793117219 -61064793146069 -61064793160078 -61064793301846 -61064793325958 -61064793348331 -61064793365036 -61064793379742 -61064793555678 -61064793574849 -61064793599235 -61064793619025 -61064793773293 -61064793806285 -61064793967561 -61064793986705 -61064794006342 -61064794032801 -61064794046864 -61064794361556 -61064794389028 -61064794405436 -61064794421006 -61064794649534 -61064794674126 -61064794696878 -61064794932603 -61064794951741 -61064794986015 -61064795001237 -61064795225198 -61064795250824 -61064795271895 -61064795290336 -61064795557484 -61064795582268 -61064795603018 -61064795632455 -61064795650533 -61064795880755 -61064795905469 -61064796140886 -61064796165906 -61064796338656 -61064796553029 -61064796579573 -61064796603495 -61064796627104 -61064796651087 -61064796680494 -61064796920368 -61064796944080 -61064796963200 -61064796981024 -61064796995750 -61064797230073 -61064797259229 -61064797292719 -61064797323578 -61064797365356 -61064797673529 -61064797703541 -61064797940982 -61064797974742 -61064798292788 -61064798327994 -61064798357487 -61064798683516 -61064798977488 -61064799011438 -61064799205966 -61064799428206 -61064799458084 -61064799485328 -61064799662406 -61064799728309 -61064799753136 -61064799884817 -61064799912027 -61064800066284 -61064800168126 -61064800194354 -61064800388257 -61064800415769 -61064800443526 -61064800611165 -61064800638842 -61064800803810 -61064800835885 -61064800929974 -61064800970010 -61064800993663 -61064801154860 -61064801185259 -61064801314665 -61064801343287 -61064801373477 -61064801398588 -61064801520016 -61064801543958 -61064801749413 -61064801777576 -61064801802370 -61064802010005 -61064802204717 -61064802487358 -61064802510425 -61064802688924 -61064802927902 -61064802959958 -61064802986056 -61064803187533 -61064803215137 -61064803249376 -61064803277459 -61064803469584 -61064803497469 -61064803530314 -61064803708217 -61064803737633 -61064803833955 -61064803864272 -61064803987889 -61064804111332 -61064804264684 -61064804354584 -61064804536768 -61064804567285 -61064804684495 -61064804820646 -61064804923196 -61064805022907 -61064805126812 -61064805154988 -61064805238144 -61064805356860 -61064805454616 -61064805607864 -61064805726582 -61064805852337 -61064805954631 -61064806050594 -61064806193723 -61064806224273 -61064806345726 -61064806444083 -61064806545042 -61064806670655 -61064806772826 -61064806911643 -61064806946622 -61064807074264 -61064807204579 -61064807302107 -61064807419695 -61064807545518 -61064807644051 -61064807805877 -61064807964746 -61064808121678 -61064808221104 -61064808250123 -61064808432007 -61064808541826 -61064808645895 -61064808831875 -61064809048736 -61064809077660 -61064809254028 -61064809435740 -61064809569744 -61064809756682 -61064809782359 -61064809916470 -61064809944318 -61064810184318 -61064810335295 -61064810480474 -61064810509279 -61064810532468 -61064810654702 -61064810792511 -61064810914808 -61064811014641 -61064811206440 -61064811304894 -61064811339157 -61064811484730 -61064811583864 -61064811693009 -61064811795054 -61064811824335 -61064811849358 -61064811983905 -61064812098266 -61064812383714 -61064812407887 -61064812673982 -61064812862771 -61064813048119 -61064813258488 -61064813286380 -61064813529140 -61064813546451 -61064813666674 -61064813688224 -61064813716725 -61064813943267 -61064813960135 -61064814087155 -61064814114963 -61064814137682 -61064814154524 -61064814171527 -61064814197398 -61064814356036 -61064814386939 -61064814485836 -61064814503819 -61064814528805 -61064814631926 -61064814656991 -61064814686859 -61064814707002 -61064814743957 -61064815017259 -61064815036151 -61064815207096 -61064815228184 -61064815250856 -61064815520256 -61064815694857 -61064815721437 -61064815743943 -61064815757736 -61064815872373 -61064815890117 -61064816130173 -61064816323360 -61064816349896 -61064816380149 -61064816624748 -61064816645068 -61064816661936 -61064816834920 -61064816863802 -61064816889468 -61064816914814 -61064817023833 -61064817292348 -61064817313255 -61064817339117 -61064817574316 -61064817873897 -61064817899181 -61064818100644 -61064818118348 -61064818297001 -61064818314628 -61064818491695 -61064818513245 -61064818536345 -61064818771021 -61064818789893 -61064819002828 -61064819237138 -61064819255385 -61064819483041 -61064819502134 -61064819520160 -61064819546399 -61064819745244 -61064819764357 -61064819782971 -61064819809507 -61064819827218 -61064819843555 -61064820057114 -61064820075442 -61064820218642 -61064820246150 -61064820388355 -61064820573094 -61064820595484 -61064820851189 -61064820869180 -61064820892010 -61064820914963 -61064821113476 -61064821378789 -61064821513639 -61064821702957 -61064821810128 -61064821830910 -61064821975639 -61064822103854 -61064822197759 -61064822293476 -61064822435312 -61064822529079 -61064822546627 -61064822563521 -61064822650319 -61064822833156 -61064822941533 -61064823068968 -61064823226668 -61064823246806 -61064823260988 -61064823458418 -61064823483830 -61064823501754 -61064823521082 -61064823539609 -61064823726811 -61064823756264 -61064823782273 -61064824019086 -61064824223267 -61064824248003 -61064824600679 -61064824874370 -61064825039926 -61064825259885 -61064825278496 -61064825300755 -61064825505595 -61064825534388 -61064825554943 -61064825699222 -61064825722295 -61064825739916 -61064825831311 -61064825855053 -61064825872852 -61064825890988 -61064825911383 -61064825948797 -61064826182925 -61064826216178 -61064826243426 -61064826263072 -61064826521563 -61064826763921 -61064826799130 -61064826902976 -61064827080440 -61064827306413 -61064827444761 -61064827594709 -61064827767275 -61064827912215 -61064828087236 -61064828266765 -61064828443463 -61064828474160 -61064828673619 -61064828841535 -61064828874299 -61064828909996 -61064829199211 -61064829231737 -61064829393867 -61064829425711 -61064829521599 -61064829719199 -61064829889871 -61064829982800 -61064830155442 -61064830181988 -61064830389734 -61064830607987 -61064830757248 -61064830878806 -61064831024194 -61064831052870 -61064831196193 -61064831298598 -61064831394176 -61064831504663 -61064831523104 -61064831616983 -61064831724212 -61064831847188 -61064832130423 -61064832151458 -61064832258088 -61064832446041 -61064832652677 -61064832667863 -61064832951034 -61064832983083 -61064833242227 -61064833264056 -61064833575173 -61064833597571 -61064833624287 -61064833678870 -61064833701449 -61064833821187 -61064834009220 -61064834032142 -61064834197512 -61064834229354 -61064834410889 -61064834435068 -61064834582487 -61064834721333 -61064834848056 -61064835021736 -61064835138285 -61064835298344 -61064835325792 -61064835501303 -61064835717624 -61064835859631 -61064835884909 -61064836014422 -61064836116724 -61064836251313 -61064836269326 -61064836417680 -61064836435577 -61064836452822 -61064836539805 -61064836557723 -61064836673512 -61064836722843 -61064836742603 -61064836866459 -61064836999398 -61064837205968 -61064837223100 -61064837245515 -61064837379241 -61064837504285 -61064837670119 -61064837701135 -61064837721705 -61064837872126 -61064837975835 -61064838100364 -61064838118932 -61064838132877 -61064838232602 -61064838255705 -61064838274338 -61064838300596 -61064838501164 -61064838638757 -61064838767702 -61064838786042 -61064838935721 -61064839030492 -61064839122847 -61064839154553 -61064839246636 -61064839385736 -61064839412847 -61064839436280 -61064839557192 -61064839576480 -61064839680639 -61064839806337 -61064839932258 -61064840047225 -61064840066206 -61064840168624 -61064840195992 -61064840286628 -61064840327582 -61064840472587 -61064840506616 -61064840525547 -61064840697056 -61064840845796 -61064840864648 -61064840894737 -61064840913852 -61064841007878 -61064841036104 -61064841120954 -61064841147833 -61064841320073 -61064841345077 -61064841369782 -61064841458502 -61064841491369 -61064841510545 -61064841601257 -61064841733041 -61064841829167 -61064841972639 -61064842147277 -61064842284356 -61064842376153 -61064842474091 -61064842613380 -61064842758431 -61064842889680 -61064842997908 -61064843028401 -61064843148962 -61064843241957 -61064843339890 -61064843480166 -61064843575121 -61064843743484 -61064843870115 -61064844081994 -61064844142109 -61064844316398 -61064844480216 -61064844510641 -61064844536802 -61064844650947 -61064844746907 -61064844839461 -61064844860952 -61064844993742 -61064845080527 -61064845292386 -61064845416712 -61064845583844 -61064845668834 -61064845699975 -61064845724917 -61064845742281 -61064845855691 -61064845887781 -61064845916056 -61064846106719 -61064846125874 -61064846143893 -61064846297556 -61064846328041 -61064846346612 -61064846499908 -61064846594721 -61064846683001 -61064846786745 -61064846805612 -61064846903910 -61064846927343 -61064847029743 -61064847058981 -61064847076664 -61064847094616 -61064847378272 -61064847397561 -61064847416296 -61064847443305 -61064847613938 -61064847914136 -61064848068605 -61064848097147 -61064848119857 -61064848274464 -61064848377507 -61064848395455 -61064848513244 -61064848531533 -61064848669372 -61064848699506 -61064848721339 -61064848738812 -61064848868187 -61064848905242 -61064848925479 -61064849076979 -61064849236661 -61064849255965 -61064849380732 -61064849541960 -61064849652539 -61064849767684 -61064849787813 -61064849921377 -61064849940271 -61064850038973 -61064850146966 -61064850165085 -61064850265877 -61064850376647 -61064850468201 -61064850614375 -61064850632719 -61064850652071 -61064850763049 -61064850785329 -61064850905936 -61064850997697 -61064851018322 -61064851183158 -61064851272616 -61064851408059 -61064851578242 -61064851703114 -61064851840885 -61064851937092 -61064852061411 -61064852244009 -61064852383640 -61064852480857 -61064852583177 -61064852781016 -61064852910292 -61064853027195 -61064853295041 -61064853402862 -61064853654529 -61064853920129 -61064854126820 -61064854397304 -61064854430777 -61064854607175 -61064854876675 -61064855131814 -61064855161328 -61064855327162 -61064855554105 -61064855752230 -61064855781427 -61064855808878 -61064855937255 -61064856111946 -61064856336529 -61064856525672 -61064856626647 -61064856750169 -61064856884673 -61064857004356 -61064857200582 -61064857287613 -61064857417492 -61064857506703 -61064857610364 -61064857779187 -61064857876348 -61064858026414 -61064858129575 -61064858305040 -61064858411894 -61064858514545 -61064858642000 -61064858743961 -61064858896566 -61064859055523 -61064859158670 -61064859262157 -61064859394691 -61064859514319 -61064859617412 -61064859734296 -61064859883786 -61064860097395 -61064860130098 -61064860220333 -61064860374502 -61064860403668 -61064860515853 -61064860670311 -61064860793064 -61064860893306 -61064861007676 -61064861126474 -61064861270484 -61064861375956 -61064861491606 -61064861717109 -61064861854610 -61064862002867 -61064862189332 -61064862331968 -61064862467651 -61064862582805 -61064862725372 -61064862818424 -61064862913105 -61064863029369 -61064863136703 -61064863261858 -61064863359177 -61064863378667 -61064863489461 -61064863512475 -61064863599362 -61064863750103 -61064863771855 -61064863992572 -61064864040286 -61064864059561 -61064864172419 -61064864306372 -61064864444131 -61064864575786 -61064864696726 -61064864846988 -61064864878046 -61064864965418 -61064865083303 -61064865175080 -61064865271230 -61064865423271 -61064865586583 -61064865697337 -61064865790616 -61064865934469 -61064866069305 -61064866100570 -61064866125889 -61064866299591 -61064866319846 -61064866436466 -61064866530903 -61064866627030 -61064866717802 -61064866819205 -61064866977734 -61064866996972 -61064867124907 -61064867237972 -61064867267672 -61064867285975 -61064867429871 -61064867575902 -61064867608118 -61064867641437 -61064867795847 -61064867815181 -61064867946070 -61064868154455 -61064868248074 -61064868363558 -61064868385574 -61064868402546 -61064868425549 -61064868557605 -61064868581836 -61064868760341 -61064868900446 -61064868924358 -61064868944289 -61064869086724 -61064869225316 -61064869363900 -61064869531147 -61064869654183 -61064869689386 -61064869718592 -61064869746898 -61064869761784 -61064869936868 -61064869954717 -61064869979120 -61064870124553 -61064870323851 -61064870492670 -61064870703394 -61064870727616 -61064870747810 -61064870867127 -61064870886207 -61064871028763 -61064871060326 -61064871077980 -61064871232962 -61064871259287 -61064871279193 -61064871418975 -61064871448410 -61064871618761 -61064871645590 -61064871839774 -61064871868875 -61064872043160 -61064872061657 -61064872079672 -61064872106874 -61064872241823 -61064872403908 -61064872435931 -61064872644239 -61064872663330 -61064872685783 -61064872710743 -61064872724914 -61064872822698 -61064872959696 -61064872986470 -61064873132751 -61064873152462 -61064873173409 -61064873190995 -61064873216706 -61064873326014 -61064873344386 -61064873431920 -61064873527863 -61064873545973 -61064873633315 -61064873651171 -61064873668488 -61064873762978 -61064873883324 -61064873915653 -61064873944045 -61064874048465 -61064874176707 -61064874332191 -61064874488571 -61064874625676 -61064874741283 -61064874823622 -61064874928089 -61064875049111 -61064875149641 -61064875319305 -61064875441925 -61064875529775 -61064875631995 -61064875736362 -61064875839194 -61064875952203 -61064876054373 -61064876072430 -61064876089439 -61064876184037 -61064876202595 -61064876399097 -61064876489656 -61064876508160 -61064876641553 -61064876659637 -61064876749343 -61064876767324 -61064876858154 -61064876876856 -61064876966802 -61064876991052 -61064877092502 -61064877111533 -61064877195260 -61064877213290 -61064877302508 -61064877320321 -61064877467257 -61064877485316 -61064877501949 -61064877518710 -61064877608480 -61064877626327 -61064877717964 -61064877805777 -61064877823949 -61064877908964 -61064877939041 -61064878013547 -61064878031592 -61064878116325 -61064878134388 -61064878230961 -61064878249650 -61064878334034 -61064878351859 -61064878437688 -61064878456177 -61064878561875 -61064878649779 -61064878667789 -61064878685396 -61064878795286 -61064878813310 -61064878918875 -61064878936177 -61064879082886 -61064879107686 -61064879188276 -61064879205826 -61064879222426 -61064879341706 -61064879359459 -61064879376226 -61064879504011 -61064879521743 -61064879661920 -61064879680717 -61064879695614 -61064879710898 -61064879726058 -61064879876889 -61064879892473 -61064879917618 -61064880065436 -61064880089073 -61064880107064 -61064880223470 -61064880241494 -61064880258457 -61064880276582 -61064880365329 -61064880383694 -61064880469986 -61064880488354 -61064880573838 -61064880591646 -61064880744937 -61064880882318 -61064880898599 -61064880912821 -61064880927341 -61064880943886 -61064881173581 -61064881196586 -61064881355755 -61064881448867 -61064881531903 -61064881544656 -61064881666947 -61064881682486 -61064881696791 -61064881791025 -61064881906801 -61064881990773 -61064882009089 -61064882126801 -61064882145183 -61064882162694 -61064882329617 -61064882346573 -61064882429767 -61064882445581 -61064882548617 -61064882655616 -61064882670858 -61064882755301 -61064882771723 -61064882862345 -61064883006179 -61064883022760 -61064883037591 -61064883054203 -61064883138822 -61064883154524 -61064883168859 -61064883185199 -61064883199535 -61064883210903 -61064883225132 -61064883315204 -61064883399088 -61064883414185 -61064883427963 -61064883511060 -61064883526216 -61064883540602 -61064883554302 -61064883634560 -61064883649670 -61064883663916 -61064883677911 -61064883766185 -61064883783487 -61064883876807 -61064883893208 -61064883906917 -61064883921102 -61064883935388 -61064884119190 -61064884135126 -61064884149500 -61064884163564 -61064884178524 -61064884334691 -61064884350104 -61064884365082 -61064884381506 -61064884477644 -61064884564289 -61064884579592 -61064884594003 -61064884609038 -61064884717855 -61064884807880 -61064884894419 -61064884910598 -61064884927676 -61064885011284 -61064885027095 -61064885109953 -61064885125342 -61064885152539 -61064885189051 -61064885281411 -61064885299137 -61064885313679 -61064885395134 -61064885412473 -61064885427578 -61064885554064 -61064885570218 -61064885659965 -61064885677146 -61064885691846 -61064885795831 -61064885811295 -61064885906898 -61064885924864 -61064885939846 -61064886057283 -61064886072679 -61064886087033 -61064886101376 -61064886180848 -61064886201481 -61064886215663 -61064886310883 -61064886331574 -61064886345441 -61064886429110 -61064886445252 -61064886525782 -61064886541141 -61064886555224 -61064886569232 -61064886580452 -61064886664369 -61064886679674 -61064886758869 -61064886783968 -61064886798362 -61064886879593 -61064886896325 -61064886997050 -61064887013216 -61064887028247 -61064887042596 -61064887057921 -61064887141275 -61064887156310 -61064887169904 -61064887183824 -61064887199607 -61064887280116 -61064887296814 -61064887318691 -61064887336282 -61064887439938 -61064887455441 -61064887470055 -61064887558158 -61064887572919 -61064887586925 -61064887600524 -61064887681369 -61064887696759 -61064887776834 -61064887792110 -61064887874592 -61064887971101 -61064888095444 -61064888114604 -61064888130992 -61064888244626 -61064888265281 -61064888351589 -61064888372118 -61064888570481 -61064888587281 -61064888603559 -61064888619918 -61064888636904 -61064888653543 -61064888810026 -61064888826870 -61064888853660 -61064888958802 -61064888980767 -61064888994800 -61064889009151 -61064889129463 -61064889149776 -61064889272846 -61064889293062 -61064889495383 -61064889513281 -61064889529990 -61064889657409 -61064889796421 -61064889813108 -61064890159342 -61064890189825 -61064890347584 -61064890439108 -61064890619408 -61064890824506 -61064890962647 -61064890989775 -61064891080756 -61064891114112 -61064891142303 -61064891278347 -61064891312494 -61064891340312 -61064891455111 -61064891596015 -61064891623889 -61064891727067 -61064891848560 -61064891944657 -61064891974846 -61064892145546 -61064892177717 -61064892206029 -61064892331794 -61064892424307 -61064892529680 -61064892618769 -61064892777706 -61064892896861 -61064893055605 -61064893087253 -61064893114752 -61064893226264 -61064893410595 -61064893497580 -61064893529900 -61064893556629 -61064893581938 -61064893746476 -61064893936663 -61064894094725 -61064894220684 -61064894250679 -61064894372626 -61064894546239 -61064894681235 -61064894805720 -61064894952701 -61064895094231 -61064895230755 -61064895372774 -61064895465004 -61064895583240 -61064895724632 -61064895837951 -61064895962149 -61064896117714 -61064896248724 -61064896586916 -61064896625931 -61064896657398 -61064896687400 -61064896831481 -61064896864517 -61064896893944 -61064897019567 -61064897055379 -61064897084347 -61064897189603 -61064897220989 -61064897343448 -61064897383416 -61064897412590 -61064897450142 -61064897496447 -61064897530881 -61064897561898 -61064897785735 -61064897819565 -61064897860132 -61064898018941 -61064898059257 -61064898093668 -61064898124152 -61064898263684 -61064898305774 -61064898346277 -61064898505431 -61064898543754 -61064898590043 -61064898691034 -61064898713555 -61064898979386 -61064899106248 -61064899269824 -61064899294019 -61064899440644 -61064899459261 -61064899592736 -61064899609974 -61064899735830 -61064899887989 -61064899911173 -61064900046306 -61064900069247 -61064900083402 -61064900097116 -61064900111728 -61064900262909 -61064900278570 -61064900297464 -61064900406336 -61064900421479 -61064900437764 -61064900459039 -61064900695701 -61064900920325 -61064900937476 -61064900953796 -61064900978552 -61064901069410 -61064901086265 -61064901102435 -61064901118469 -61064901134873 -61064901224959 -61064901243299 -61064901259751 -61064901273154 -61064901362563 -61064901379547 -61064901395635 -61064901411789 -61064901428480 -61064901521155 -61064901553148 -61064901568537 -61064901582962 -61064901788909 -61064901806264 -61064901820013 -61064901830527 -61064902031683 -61064902046111 -61064902062247 -61064902078021 -61064902097712 -61064902192349 -61064902210160 -61064902224004 -61064902241349 -61064902407513 -61064902424586 -61064902440832 -61064902457083 -61064902476853 -61064902609395 -61064902627555 -61064902644285 -61064902658033 -61064902676425 -61064902695220 -61064902708570 -61064902730994 -61064902888583 -61064902908658 -61064902935681 -61064902952762 -61064902966344 -61064903109253 -61064903126136 -61064903142340 -61064903159309 -61064903174557 -61064903263261 -61064903280250 -61064903300084 -61064903317576 -61064903334434 -61064903351208 -61064903364464 -61064903453751 -61064903613407 -61064903765724 -61064903786489 -61064903813833 -61064903836900 -61064904076287 -61064904094250 -61064904110537 -61064904287990 -61064904304974 -61064904321312 -61064904337691 -61064904353920 -61064904454295 -61064904479988 -61064904680077 -61064904704190 -61064904892713 -61064904909850 -61064904928334 -61064905141996 -61064905173994 -61064905360169 -61064905571069 -61064905606025 -61064905693438 -61064905722033 -61064905747366 -61064905896262 -61064906073483 -61064906307319 -61064906333093 -61064906467132 -61064906487669 -61064906513578 -61064906534450 -61064906693332 -61064906905704 -61064906929344 -61064907074966 -61064907192524 -61064907383224 -61064907515673 -61064907688866 -61064907710381 -61064907739866 -61064907852774 -61064907879918 -61064907901326 -61064907922277 -61064908041389 -61064908179603 -61064908417047 -61064908438114 -61064908620655 -61064908865589 -61064908892623 -61064908912114 -61064909014711 -61064909034034 -61064909224147 -61064909248776 -61064909272443 -61064909288801 -61064909308140 -61064909540120 -61064909557848 -61064909582362 -61064909829001 -61064909951229 -61064910094085 -61064910195660 -61064910214510 -61064910250063 -61064910264055 -61064910541291 -61064910571358 -61064910590139 -61064910604418 -61064910763616 -61064910780649 -61064910798396 -61064910925458 -61064910957106 -61064910974433 -61064911116246 -61064911150885 -61064911292013 -61064911310366 -61064911333378 -61064911492622 -61064911680195 -61064911707624 -61064911731393 -61064911748229 -61064911765799 -61064911883490 -61064911910370 -61064911934135 -61064911951172 -61064912134094 -61064912167011 -61064912185565 -61064912198959 -61064912302331 -61064912319908 -61064912414139 -61064912441329 -61064912457950 -61064912479700 -61064912611905 -61064912717581 -61064912734653 -61064912756890 -61064912895773 -61064912919095 -61064912935582 -61064912960820 -61064913058524 -61064913075574 -61064913101673 -61064913315952 -61064913333121 -61064913488802 -61064913642199 -61064913660060 -61064913800221 -61064913832090 -61064913850176 -61064914032458 -61064914051549 -61064914080174 -61064914291489 -61064914308807 -61064914334692 -61064914438796 -61064914588614 -61064914744226 -61064914761388 -61064914780494 -61064914904575 -61064914933713 -61064915037609 -61064915070574 -61064915088667 -61064915102893 -61064915203562 -61064915312728 -61064915423621 -61064915445084 -61064915541217 -61064915559063 -61064915675604 -61064915693107 -61064915719948 -61064915922284 -61064915942787 -61064915960198 -61064916126952 -61064916231871 -61064916256382 -61064916276116 -61064916298647 -61064916444076 -61064916550321 -61064916578304 -61064916599926 -61064916624302 -61064916650172 -61064916736621 -61064916753814 -61064916779536 -61064916800969 -61064916899971 -61064916929429 -61064916955602 -61064917060963 -61064917079330 -61064917095780 -61064917112213 -61064917125642 -61064917247429 -61064917277599 -61064917309277 -61064917523045 -61064917540980 -61064917558924 -61064917585296 -61064917689566 -61064917720897 -61064917738908 -61064917859270 -61064917943580 -61064918151544 -61064918277670 -61064918466784 -61064918492806 -61064918521970 -61064918658621 -61064918809081 -61064918828546 -61064918857827 -61064918986164 -61064919004154 -61064919020895 -61064919046395 -61064919261990 -61064919397398 -61064919416717 -61064919442982 -61064919535065 -61064919673182 -61064919851765 -61064920018193 -61064920133007 -61064920155705 -61064920183274 -61064920353443 -61064920507471 -61064920530011 -61064920546395 -61064920571527 -61064920745925 -61064920775799 -61064920799928 -61064920992916 -61064921188342 -61064921205659 -61064921442537 -61064921462800 -61064921646972 -61064921858381 -61064921970748 -61064921989663 -61064922115254 -61064922233367 -61064922433080 -61064922594473 -61064922803616 -61064922827523 -61064922981721 -61064923202082 -61064923238066 -61064923470288 -61064923490775 -61064923515697 -61064923681810 -61064923829076 -61064923852221 -61064923875783 -61064924036559 -61064924054303 -61064924244079 -61064924259014 -61064924280975 -61064924299744 -61064924429601 -61064924570757 -61064924589431 -61064924784770 -61064924977838 -61064925022435 -61064925042910 -61064925059079 -61064925231084 -61064925434563 -61064925452802 -61064925553196 -61064925731499 -61064925755624 -61064925846846 -61064925963501 -61064926164484 -61064926187191 -61064926355136 -61064926372544 -61064926542103 -61064926559194 -61064926646672 -61064926666664 -61064926683112 -61064926699655 -61064926868845 -61064926886050 -61064926973367 -61064927127650 -61064927145042 -61064927168626 -61064927283897 -61064927427137 -61064927519215 -61064927536308 -61064927552843 -61064927566495 -61064927579207 -61064927592011 -61064927604478 -61064927616910 -61064927633850 -61064927647644 -61064936117554 -61064936145026 -61064936341711 -61064936582666 -61064936743562 -61064936891648 -61064937125584 -61064937317115 -61064937342669 -61064937369335 -61064937523363 -61064937675118 -61064937779890 -61064937968591 -61064938131883 -61064938151483 -61064938291394 -61064938443566 -61064938539708 -61064938556826 -61064938574361 -61064938591064 -61064938607681 -61064938704869 -61064938836036 -61064938858911 -61064939011239 -61064939028380 -61064939052543 -61064939225371 -61064939242741 -61064939450184 -61064939467931 -61064939484589 -61064939603676 -61064939621111 -61064939640256 -61064939656858 -61064939673100 -61064939790720 -61064939808444 -61064939824747 -61064939841319 -61064939977742 -61064940125601 -61064940344879 -61064940537771 -61064940573872 -61064940807335 -61064940833632 -61064940851582 -61064940878996 -61064941044153 -61064941217325 -61064941308840 -61064941495529 -61064941670156 -61064941689620 -61064941730156 -61064941769738 -61064941919473 -61064941939008 -61064941965088 -61064942171483 -61064942336351 -61064942354207 -61064942372074 -61064942389605 -61064942403535 -61064942421456 -61064942544411 -61064942561309 -61064942578128 -61064942594266 -61064942618769 -61064942857283 -61064942883675 -61064942902643 -61064942927810 -61064943088749 -61064943202477 -61064943219716 -61064943248596 -61064943401966 -61064943425324 -61064943455765 -61064943622777 -61064943655808 -61064943752305 -61064943875099 -61064943979132 -61064944018385 -61064944123186 -61064944141777 -61064944355369 -61064944610900 -61064944631780 -61064944717388 -61064944743384 -61064944764817 -61064944781066 -61064945006914 -61064945036322 -61064945171911 -61064945203595 -61064945236480 -61064945254542 -61064945446017 -61064945602504 -61064945738865 -61064945757134 -61064945963726 -61064946064065 -61064946081643 -61064946102284 -61064946119070 -61064946135857 -61064946254787 -61064946269707 -61064946351823 -61064946475979 -61064946492992 -61064946612707 -61064946629545 -61064946649087 -61064946805224 -61064946821740 -61064946837915 -61064946854044 -61064946876534 -61064947070071 -61064947248618 -61064947276989 -61064947301395 -61064947318288 -61064947404805 -61064947429883 -61064947598138 -61064947627077 -61064947653430 -61064947887072 -61064948133286 -61064948162773 -61064948180702 -61064948314916 -61064948332440 -61064948355600 -61064948376833 -61064948392331 -61064948565248 -61064948595714 -61064948620073 -61064948786929 -61064948806664 -61064948836607 -61064948998468 -61064949034607 -61064949169574 -61064949265648 -61064949298464 -61064949332432 -61064949357025 -61064949512718 -61064949681308 -61064949699932 -61064949715747 -61064949813468 -61064949832669 -61064949991734 -61064950021342 -61064950129251 -61064950158239 -61064950175043 -61064950198337 -61064950371533 -61064950388969 -61064950518944 -61064950690450 -61064950834066 -61064950955534 -61064951221945 -61064951360970 -61064951552802 -61064951578807 -61064951603540 -61064951622023 -61064951820021 -61064951852909 -61064951870501 -61064951883562 -61064951975800 -61064951999589 -61064952229436 -61064952249485 -61064952265910 -61064952420042 -61064952560659 -61064952592609 -61064952621996 -61064952741639 -61064952889557 -61064953024716 -61064953234797 -61064953258478 -61064953274790 -61064953483993 -61064953514219 -61064953714335 -61064953734147 -61064953884205 -61064953914735 -61064954117122 -61064954261695 -61064954386568 -61064954513737 -61064954655696 -61064954672789 -61064954694550 -61064954711181 -61064954885932 -61064954994179 -61064955020392 -61064955045037 -61064955062009 -61064955080095 -61064955208771 -61064955334483 -61064955500580 -61064955632158 -61064955654217 -61064955679685 -61064955769016 -61064955786051 -61064955803764 -61064956118504 -61064956138921 -61064956290479 -61064956304869 -61064956432713 -61064956452588 -61064956468593 -61064956621929 -61064956637641 -61064956652027 -61064956665008 -61064956758230 -61064956774991 -61064956790058 -61064956804002 -61064956814675 -61064956903300 -61064956918252 -61064956932089 -61064957009997 -61064957025200 -61064957036017 -61064957128309 -61064957144175 -61064957158692 -61064957299722 -61064957315022 -61064957328870 -61064957340184 -61064957435897 -61064957451204 -61064957558292 -61064957573539 -61064957682062 -61064957696962 -61064957710989 -61064957725250 -61064957803465 -61064957830164 -61064957844282 -61064957858825 -61064958003962 -61064958020139 -61064958034238 -61064958048845 -61064958154485 -61064958169943 -61064958183785 -61064958197024 -61064958279810 -61064958295461 -61064958507826 -61064958523893 -61064958727437 -61064958746049 -61064958771891 -61064958978615 -61064959127611 -61064959146440 -61064959315153 -61064959332427 -61064959358522 -61064959486649 -61064959510471 -61064959527330 -61064959676908 -61064959703397 -61064959720416 -61064959752004 -61064959778793 -61064959861132 -61064959894124 -61064959990325 -61064960027392 -61064960051083 -61064960072755 -61064960095342 -61064960243507 -61064960454537 -61064960491824 -61064960674222 -61064960711123 -61064960850615 -61064960980290 -61064961111078 -61064961319401 -61064961347579 -61064961372918 -61064961463188 -61064961493573 -61064961633662 -61064961770926 -61064961788147 -61064961810862 -61064961977948 -61064961999993 -61064962056465 -61064962112595 -61064962131566 -61064962246354 -61064962287449 -61064962310032 -61064962333044 -61064962437588 -61064962463750 -61064962613924 -61064962751632 -61064962852950 -61064962993432 -61064963168991 -61064963299167 -61064963317661 -61064963532706 -61064963667950 -61064963689044 -61064963792536 -61064963811305 -61064963827956 -61064963947328 -61064964041683 -61064964058899 -61064964075165 -61064964091695 -61064964106797 -61064964279048 -61064964296035 -61064964318481 -61064964335368 -61064964351976 -61064964365921 -61064964493160 -61064964510037 -61064964528331 -61064964649028 -61064964789707 -61064964925946 -61064964943752 -61064964962595 -61064964978658 -61064965060673 -61064965087585 -61064965104325 -61064965123854 -61064965204575 -61064965221555 -61064965242444 -61064965366407 -61064965383544 -61064965532574 -61064965558119 -61064965574937 -61064965686841 -61064965704235 -61064965804158 -61064965918810 -61064966060705 -61064966084904 -61064966101353 -61064966121275 -61064966248359 -61064966408695 -61064966445729 -61064966470602 -61064966585607 -61064966614017 -61064966640834 -61064966743651 -61064966861859 -61064966960917 -61064967053906 -61064967175562 -61064967298126 -61064967433240 -61064967460277 -61064967590798 -61064967696351 -61064967799463 -61064967903374 -61064968070922 -61064968163898 -61064968268332 -61064968408255 -61064968569562 -61064968597089 -61064968799922 -61064968987839 -61064969143525 -61064969325472 -61064969485216 -61064969514572 -61064969539418 -61064969642562 -61064969668657 -61064969794300 -61064969822064 -61064969978712 -61064970101686 -61064970231400 -61064970346592 -61064970377244 -61064970410409 -61064970612708 -61064970749326 -61064970901460 -61064971049554 -61064971089453 -61064971238536 -61064971274379 -61064971303578 -61064971474483 -61064971584839 -61064971613655 -61064971857641 -61064972031897 -61064972260928 -61064972413769 -61064972444870 -61064972602361 -61064972639363 -61064972756056 -61064972967585 -61064973106517 -61064973243843 -61064973273527 -61064973435371 -61064973587405 -61064973762253 -61064973860872 -61064974040766 -61064974165945 -61064974320237 -61064974453816 -61064974563063 -61064974803808 -61064974823478 -61064975042553 -61064975071748 -61064975245720 -61064975445729 -61064975475845 -61064975644556 -61064975781014 -61064975901483 -61064976179608 -61064976315335 -61064976332362 -61064976347503 -61064976362579 -61064976462441 -61064976501872 -61064976622006 -61064976641703 -61064976658995 -61064976852184 -61064976871186 -61064976888569 -61064976906484 -61064976922932 -61064976940601 -61064977102883 -61064977311735 -61064977326522 -61064977337768 -61064977495555 -61064977674272 -61064977693411 -61064977871107 -61064978010068 -61064978220886 -61064978353920 -61064978367894 -61064978387798 -61064978414473 -61064978561375 -61064978692405 -61064978710698 -61064978809822 -61064979015086 -61064979130679 -61064979149841 -61064979168366 -61064979316560 -61064979338776 -61064979355531 -61064979559850 -61064979764385 -61064979947194 -61064980134959 -61064980172112 -61064980355810 -61064980491087 -61064980528143 -61064980559656 -61064980830360 -61064980869406 -61064980900757 -61064981022876 -61064981199211 -61064981398661 -61064981506231 -61064981660635 -61064981687835 -61064981843701 -61064982025775 -61064982060805 -61064982170728 -61064982351378 -61064982533476 -61064982567194 -61064982716333 -61064982813761 -61064982946908 -61064983056332 -61064983259171 -61064983361398 -61064983578778 -61064983700564 -61064983879636 -61064984082289 -61064984114049 -61064984293095 -61064984462216 -61064984643155 -61064984822700 -61064985022318 -61064985040927 -61064985058512 -61064985291586 -61064985312920 -61064985332726 -61064985496041 -61064985690273 -61064985823047 -61064985899762 -61064985920865 -61064985947063 -61064986045591 -61064986069757 -61064986207449 -61064986468477 -61064986487072 -61064986734433 -61064986946569 -61064987003399 -61064987285464 -61064987607392 -61064987636680 -61064987662099 -61064987870775 -61064988084433 -61064988122617 -61064988330330 -61064988352318 -61064988382291 -61064988536699 -61064988572744 -61064988825274 -61064988930068 -61064989063086 -61064989169060 -61064989198905 -61064989228480 -61064989387017 -61064989625910 -61064989803736 -61064989832834 -61064989859131 -61064990017533 -61064990179422 -61064990206828 -61064990400811 -61064990427648 -61064990452965 -61064990600845 -61064990626226 -61064990787078 -61064990903876 -61064991062375 -61064991183173 -61064991206776 -61064991375718 -61064991576617 -61064991600548 -61064991794162 -61064991815977 -61064991984377 -61064992172023 -61064992202338 -61064992317520 -61064992338225 -61064992434949 -61064992466289 -61064992484506 -61064992736910 -61064992755278 -61064992772747 -61064992910944 -61064992936600 -61064993100906 -61064993228345 -61064993384471 -61064993411418 -61064993594340 -61064993816081 -61064993934294 -61064993966492 -61064993992268 -61064994128273 -61064994332853 -61064994360420 -61064994385137 -61064994556315 -61064994698415 -61064994735039 -61064994757923 -61064994919515 -61064995103701 -61064995267870 -61064995298888 -61064995328537 -61064995525175 -61064995702815 -61064995810965 -61064995833077 -61064995854376 -61064995984002 -61064996042091 -61064996070472 -61064996206957 -61064996429864 -61064996455370 -61064996486912 -61064996729188 -61064996776671 -61064996990090 -61064997011269 -61064997044475 -61064997231092 -61064997256977 -61064997281743 -61064997299583 -61064997318974 -61064997549291 -61064997581569 -61064997606110 -61064997836995 -61064997946265 -61064997979245 -61064998005219 -61064998150708 -61064998188217 -61064998210640 -61064998340821 -61064998373866 -61064998400122 -61064998633856 -61064998665478 -61064998909474 -61064998944595 -61064998982834 -61064999217203 -61064999245700 -61064999276085 -61064999302015 -61064999432259 -61064999460449 -61064999642867 -61064999805356 -61064999837001 -61064999862267 -61065000065062 -61065000091912 -61065000116333 -61065000318823 -61065000346154 -61065000462137 -61065000563810 -61065000597071 -61065000621961 -61065000648789 -61065000765234 -61065000789303 -61065000908628 -61065001137069 -61065001162152 -61065001381954 -61065001414469 -61065001438340 -61065001617155 -61065001645527 -61065001672423 -61065001885105 -61065001908405 -61065002058128 -61065002085029 -61065002280969 -61065002547061 -61065002698745 -61065002731302 -61065002750664 -61065002899054 -61065002928505 -61065002954321 -61065003139409 -61065003314790 -61065003496005 -61065003526909 -61065003551927 -61065003758033 -61065003957130 -61065003993999 -61065004035360 -61065004059155 -61065004082942 -61065004102839 -61065004246768 -61065004271670 -61065004295136 -61065004319587 -61065004577643 -61065004788314 -61065004818449 -61065004843830 -61065004868146 -61065005036598 -61065005065883 -61065005089297 -61065005190843 -61065005214258 -61065005375359 -61065005609603 -61065005635686 -61065005736900 -61065005862928 -61065005887453 -61065006016915 -61065006218103 -61065006244259 -61065006272660 -61065006296465 -61065006451332 -61065006474432 -61065006499313 -61065006731607 -61065006761423 -61065006789525 -61065006996941 -61065007022517 -61065007172843 -61065007200554 -61065007344602 -61065007367238 -61065007535661 -61065007784089 -61065007831377 -61065007866056 -61065008123385 -61065008144338 -61065008168724 -61065008317228 -61065008363221 -61065008544047 -61065008588828 -61065008641432 -61065008672711 -61065008998672 -61065009208026 -61065009242563 -61065009419319 -61065009480593 -61065009508473 -61065009649810 -61065009680713 -61065009730335 -61065009864918 -61065009890456 -61065009915592 -61065010107978 -61065010135976 -61065010160434 -61065010281976 -61065010307216 -61065010330660 -61065010465231 -61065010599429 -61065010623336 -61065010650067 -61065010755516 -61065010785588 -61065010881325 -61065010906221 -61065010932825 -61065010958175 -61065011134039 -61065011159432 -61065011268642 -61065011291828 -61065011401398 -61065011609958 -61065011803940 -61065011828410 -61065011975600 -61065012049495 -61065012079093 -61065012281090 -61065012305550 -61065012509915 -61065012707394 -61065012906495 -61065013119671 -61065013148331 -61065013173213 -61065013198624 -61065013393906 -61065013425904 -61065013457917 -61065013482299 -61065013643067 -61065013669872 -61065013696223 -61065013723097 -61065013837316 -61065013862869 -61065013891106 -61065014112339 -61065014137713 -61065014166246 -61065014190054 -61065014325931 -61065014511950 -61065014545108 -61065014575819 -61065014703239 -61065014737280 -61065014765298 -61065014869906 -61065014901364 -61065015078675 -61065015114812 -61065015140369 -61065015332146 -61065015364877 -61065015393291 -61065015584327 -61065015610106 -61065015634585 -61065015816546 -61065015945644 -61065015984392 -61065016026962 -61065016290044 -61065016316497 -61065016341482 -61065016625031 -61065016785873 -61065016873195 -61065017004341 -61065017030231 -61065017229136 -61065017441250 -61065017593266 -61065017628155 -61065017888930 -61065018068930 -61065018340663 -61065018474950 -61065018512249 -61065018540889 -61065018714681 -61065018925798 -61065018952879 -61065018977547 -61065019003047 -61065019207884 -61065019232591 -61065019442737 -61065019473282 -61065019637114 -61065019664260 -61065019689333 -61065019712346 -61065019865257 -61065020057683 -61065020269351 -61065020295511 -61065020319276 -61065020498378 -61065020522215 -61065020649251 -61065020667934 -61065020694611 -61065020717857 -61065020811646 -61065020844511 -61065020939114 -61065020976713 -61065020996112 -61065021118306 -61065021252171 -61065021270558 -61065021297595 -61065021321103 -61065021413210 -61065021445865 -61065021605369 -61065021790134 -61065021823590 -61065021840251 -61065021939248 -61065021960737 -61065022110501 -61065022137470 -61065022158881 -61065022286690 -61065022354040 -61065022442023 -61065022469730 -61065022489294 -61065022587062 -61065022704371 -61065022732323 -61065022753927 -61065022845235 -61065022877472 -61065022968285 -61065023060872 -61065023084264 -61065023256090 -61065023370441 -61065023398542 -61065023422435 -61065023439611 -61065023540566 -61065023562691 -61065023579923 -61065023800475 -61065023942415 -61065023960523 -61065024098155 -61065024118108 -61065024229020 -61065024254901 -61065024356913 -61065024503617 -61065024659561 -61065024683109 -61065024772916 -61065024803415 -61065024821440 -61065025006294 -61065025025077 -61065025206162 -61065025236766 -61065025417375 -61065025531641 -61065025553610 -61065025639585 -61065025741958 -61065025760357 -61065025857255 -61065025874150 -61065026044074 -61065026061328 -61065026077493 -61065026093611 -61065026109775 -61065026130711 -61065026304989 -61065026332841 -61065026440239 -61065026463142 -61065026622962 -61065026717497 -61065026735053 -61065026846914 -61065026866430 -61065026883003 -61065026976547 -61065026993917 -61065027177172 -61065027202297 -61065027318673 -61065027424411 -61065027620393 -61065027653546 -61065027846971 -61065027950763 -61065027986070 -61065028122487 -61065028161572 -61065028189425 -61065028351025 -61065028391837 -61065028422800 -61065028613973 -61065028901919 -61065029064951 -61065029089238 -61065029108278 -61065029225759 -61065029266987 -61065029452172 -61065029755238 -61065029978596 -61065030124749 -61065030292677 -61065030462896 -61065030495074 -61065030642986 -61065030820916 -61065030961948 -61065031141453 -61065031326763 -61065031354701 -61065031489943 -61065031726504 -61065031889364 -61065032014333 -61065032180834 -61065032401755 -61065032561925 -61065032678758 -61065032854656 -61065033021406 -61065033187267 -61065033348177 -61065033493001 -61065033671289 -61065033853719 -61065034016344 -61065034185823 -61065034372127 -61065034565330 -61065034730227 -61065034877110 -61065034910133 -61065035051214 -61065035266730 -61065035445010 -61065035571974 -61065035718837 -61065035878970 -61065036063088 -61065036097017 -61065036360139 -61065036387664 -61065036417431 -61065036581175 -61065036750500 -61065036915940 -61065037086091 -61065037249005 -61065037422765 -61065037458922 -61065037487424 -61065037632694 -61065037803380 -61065037971535 -61065038004606 -61065038183194 -61065038215488 -61065038343778 -61065038376462 -61065038402611 -61065038545703 -61065038743947 -61065038770236 -61065039004742 -61065039188745 -61065039327754 -61065039431392 -61065039613195 -61065039755759 -61065039785514 -61065039969975 -61065039998459 -61065040169738 -61065040271073 -61065040308371 -61065040334722 -61065040459172 -61065040604819 -61065040750471 -61065040919491 -61065041163232 -61065041299083 -61065041329721 -61065041508913 -61065041539375 -61065041669660 -61065041858887 -61065041889552 -61065042120637 -61065042316919 -61065042608596 -61065042848901 -61065042994388 -61065043169542 -61065043363881 -61065043465058 -61065043675852 -61065043698541 -61065043887264 -61065043905576 -61065043924094 -61065044126836 -61065044150038 -61065044173902 -61065044376103 -61065044528905 -61065044636258 -61065044653966 -61065044681619 -61065044814263 -61065044838131 -61065045000762 -61065045025490 -61065045042322 -61065045067587 -61065045090462 -61065045184392 -61065045219123 -61065045236664 -61065045416568 -61065045435344 -61065045460429 -61065045483008 -61065045695871 -61065045877812 -61065045895456 -61065045922635 -61065045950129 -61065046092024 -61065046123589 -61065046142198 -61065046155485 -61065046327509 -61065046548330 -61065046685897 -61065046904978 -61065047037369 -61065047052244 -61065047174499 -61065047191650 -61065047215921 -61065047374528 -61065047473700 -61065047617968 -61065047636841 -61065047863139 -61065047887555 -61065048115435 -61065048209664 -61065048240761 -61065048258812 -61065048375724 -61065048395034 -61065048412940 -61065048592031 -61065048614415 -61065048640420 -61065048773845 -61065048864401 -61065048993721 -61065049200532 -61065049233043 -61065049385413 -61065049572473 -61065049723191 -61065049873549 -61065049898474 -61065050081017 -61065050099525 -61065050116300 -61065050132813 -61065050149216 -61065050164994 -61065050257234 -61065050276253 -61065050293058 -61065050310344 -61065050455484 -61065050472442 -61065050489362 -61065050505599 -61065050621450 -61065050752125 -61065050769117 -61065050785849 -61065050801367 -61065050929982 -61065050947700 -61065051029225 -61065051046232 -61065051065190 -61065051097226 -61065051227894 -61065051316865 -61065051350631 -61065051459401 -61065051479267 -61065051611762 -61065051632605 -61065051649557 -61065051781154 -61065051801910 -61065051919967 -61065051946329 -61065051963457 -61065052129023 -61065052262918 -61065052285893 -61065052305121 -61065052466798 -61065052484255 -61065052498624 -61065052582775 -61065052699946 -61065052715727 -61065052879005 -61065052895189 -61065052909747 -61065052928507 -61065052943686 -61065053151231 -61065053329786 -61065053362645 -61065053390074 -61065053599901 -61065053648645 -61065053682766 -61065053874750 -61065054075013 -61065054099334 -61065054120303 -61065054133997 -61065054319751 -61065054337648 -61065054353945 -61065054370641 -61065054556919 -61065054574996 -61065054591009 -61065054618352 -61065054805007 -61065054824196 -61065054837651 -61065054967097 -61065054992359 -61065055011531 -61065055135682 -61065055288278 -61065055308735 -61065055329387 -61065055447176 -61065055464699 -61065055641685 -61065055656694 -61065055670381 -61065055684556 -61065055698613 -61065055709708 -61065055892627 -61065055907735 -61065055921601 -61065055935749 -61065055949132 -61065056137018 -61065056152454 -61065056170640 -61065056184856 -61065056201169 -61065056488765 -61065056510220 -61065056526245 -61065056547419 -61065056698410 -61065056717831 -61065056748648 -61065056772236 -61065056915703 -61065056932370 -61065056950739 -61065056965759 -61065056980653 -61065057191857 -61065057215587 -61065057463962 -61065057769812 -61065057798354 -61065057819401 -61065058087416 -61065058105816 -61065058127392 -61065058329121 -61065058511475 -61065058710017 -61065058963525 -61065059007755 -61065059190497 -61065059416313 -61065059664941 -61065059786692 -61065059954478 -61065059989996 -61065060035459 -61065060262082 -61065060277361 -61065060291211 -61065060306558 -61065060322513 -61065060461649 -61065060477075 -61065060494859 -61065060509691 -61065060522688 -61065060648726 -61065060664590 -61065060679344 -61065060693773 -61065060704915 -61065060788242 -61065060803292 -61065060816220 -61065060830470 -61065060842986 -61065060988157 -61065061166238 -61065061181099 -61065061195114 -61065061209194 -61065061223340 -61065061304187 -61065061319616 -61065061333623 -61065061415562 -61065061431085 -61065061444951 -61065061611291 -61065061626609 -61065061640624 -61065061654738 -61065061750370 -61065061765591 -61065061871999 -61065061887468 -61065061898414 -61065061912661 -61065061923043 -61065062069555 -61065062173357 -61065062193127 -61065062207350 -61065062221096 -61065062232082 -61065062318414 -61065062333452 -61065062347677 -61065062460503 -61065062590568 -61065062605885 -61065062620186 -61065062634811 -61065062798885 -61065062813511 -61065062827350 -61065062841857 -61065062856445 -61065062983625 -61065062995990 -61065063012151 -61065063025024 -61065063038953 -61065063061712 -61065063171936 -61065063188694 -61065063214975 -61065063241529 -61065063357912 -61065063372681 -61065063386558 -61065063400585 -61065063503214 -61065063518790 -61065063532775 -61065063678873 -61065063694465 -61065063708861 -61065063722721 -61065063803590 -61065063819089 -61065063833395 -61065063847635 -61065063960729 -61065063976939 -61065063990964 -61065064021296 -61065064189868 -61065064280419 -61065064318045 -61065064350378 -61065064540982 -61065064740865 -61065064755713 -61065064882880 -61065064897925 -61065064912007 -61065064926205 -61065064940367 -61065065041215 -61065065059667 -61065065194522 -61065065209694 -61065065233505 -61065065265514 -61065065448940 -61065065579028 -61065065592623 -61065065711420 -61065065832503 -61065065845428 -61065065860448 -61065065875483 -61065065889925 -61065065909339 -61065065921137 -61065066037619 -61065066164156 -61065066176678 -61065066191753 -61065066202645 -61065066314264 -61065066566871 -61065066582683 -61065066594617 -61065066614490 -61065066629554 -61065066642597 -61065066950711 -61065066968479 -61065066984479 -61065066995984 -61065067010963 -61065067027901 -61065067251802 -61065067269588 -61065067289649 -61065067451059 -61065067559083 -61065067600171 -61065067624404 -61065067763958 -61065067779796 -61065067796944 -61065068038417 -61065068055360 -61065068066171 -61065068270069 -61065068286163 -61065068300747 -61065068458807 -61065068487821 -61065068518599 -61065068667485 -61065068702811 -61065068721420 -61065068910070 -61065068924860 -61065068938508 -61065068952894 -61065069124840 -61065069139679 -61065069153698 -61065069167995 -61065069247640 -61065069261822 -61065069377598 -61065069393070 -61065069406741 -61065069424037 -61065069435632 -61065069606087 -61065069624072 -61065069772966 -61065069793692 -61065069810371 -61065069824676 -61065069950307 -61065069965068 -61065069979510 -61065069993950 -61065070008229 -61065070134929 -61065070150077 -61065070164292 -61065070178750 -61065070343449 -61065070357874 -61065070374737 -61065070388559 -61065070402759 -61065070480460 -61065070532896 -61065070547414 -61065070561221 -61065070726043 -61065070872647 -61065071007285 -61065071022960 -61065071036429 -61065071172576 -61065071316155 -61065071346139 -61065071360290 -61065071451494 -61065071580233 -61065071595469 -61065071716903 -61065071746313 -61065071764407 -61065071780950 -61065071794192 -61065071964141 -61065072281295 -61065072447020 -61065072663801 -61065072686221 -61065072862559 -61065072883700 -61065072999541 -61065073034290 -61065073058926 -61065073186955 -61065073199916 -61065073329180 -61065073344298 -61065073358890 -61065073469145 -61065073481548 -61065073594991 -61065073609664 -61065073623560 -61065073637344 -61065073651685 -61065073662401 -61065073742599 -61065073757649 -61065073843051 -61065073858152 -61065073884943 -61065073910705 -61065074048005 -61065074144099 -61065074159282 -61065074175414 -61065074189529 -61065074203691 -61065074362420 -61065074379446 -61065074393130 -61065074407507 -61065074418371 -61065074536321 -61065074551364 -61065074703831 -61065074827290 -61065074844755 -61065074858742 -61065074875633 -61065074890460 -61065074901355 -61065075020850 -61065075037667 -61065075157470 -61065075182333 -61065075212270 -61065075389927 -61065075405087 -61065075424353 -61065075438797 -61065075453603 -61065075659668 -61065075816601 -61065075832457 -61065075846973 -61065075966951 -61065075983392 -61065076037973 -61065076077054 -61065076094051 -61065076319763 -61065076336898 -61065076348137 -61065076448887 -61065076463821 -61065076477563 -61065076491583 -61065076506026 -61065076666432 -61065076689518 -61065076820996 -61065077030774 -61065077195013 -61065077214855 -61065077228053 -61065077244380 -61065077260889 -61065077409491 -61065077427236 -61065077443655 -61065077460294 -61065077476807 -61065077574714 -61065077593189 -61065077612054 -61065077628615 -61065077646930 -61065077747238 -61065077765955 -61065077782511 -61065077798722 -61065077891652 -61065077913126 -61065077929488 -61065077945709 -61065077962541 -61065077975642 -61065078077542 -61065078094902 -61065078111513 -61065078207999 -61065078225300 -61065078241559 -61065078257636 -61065078274683 -61065078287745 -61065078420106 -61065078437583 -61065078454353 -61065078470536 -61065078487175 -61065078506981 -61065078602708 -61065078621801 -61065078720347 -61065078745651 -61065078762190 -61065078778940 -61065078791925 -61065078894695 -61065078911914 -61065078928409 -61065078944940 -61065078964311 -61065078982818 -61065078995837 -61065079085057 -61065079102075 -61065079118281 -61065079134370 -61065079150884 -61065079309459 -61065079331791 -61065079348289 -61065079367643 -61065079383093 -61065079476302 -61065079493309 -61065079509699 -61065079525835 -61065079542035 -61065079558406 -61065079571043 -61065079664894 -61065079682040 -61065079698433 -61065079714688 -61065079731253 -61065079747352 -61065079760630 -61065079853133 -61065079870271 -61065079886542 -61065079902837 -61065079919435 -61065080028171 -61065080065936 -61065080080644 -61065080093983 -61065080107893 -61065080118546 -61065080286210 -61065080301650 -61065080312752 -61065080429516 -61065080444441 -61065080460925 -61065080471595 -61065080619036 -61065080637478 -61065080659640 -61065080675915 -61065080689847 -61065080828419 -61065080845887 -61065080861827 -61065080877967 -61065080891306 -61065080981042 -61065080998197 -61065081014617 -61065081030678 -61065081046916 -61065081144791 -61065081160752 -61065081173861 -61065081187715 -61065081324837 -61065081342286 -61065081358925 -61065081371881 -61065081384866 -61065081502872 -61065081517500 -61065081530261 -61065081546058 -61065081560159 -61065081573977 -61065081710492 -61065081727639 -61065081743944 -61065081760252 -61065081780153 -61065081868193 -61065081888119 -61065081904637 -61065081920690 -61065081938787 -61065082033796 -61065082147426 -61065082239142 -61065082256037 -61065082272748 -61065082289014 -61065082306751 -61065082401437 -61065082422196 -61065082438540 -61065082540605 -61065082559468 -61065082575760 -61065082596667 -61065082613226 -61065082737302 -61065082755459 -61065082771829 -61065082787768 -61065082803865 -61065082817696 -61065082907813 -61065082927916 -61065082944471 -61065082960696 -61065082977013 -61065083068810 -61065083088053 -61065083103587 -61065083119841 -61065083136535 -61065083229017 -61065083325108 -61065083344319 -61065083366232 -61065083450385 -61065083468821 -61065083485009 -61065083501121 -61065083517761 -61065083530877 -61065083618548 -61065083636129 -61065083654809 -61065083671217 -61065083762519 -61065083785449 -61065083802066 -61065083818494 -61065083834869 -61065083921561 -61065083940353 -61065083956642 -61065083973435 -61065083986281 -61065084178055 -61065084195064 -61065084205882 -61065084302209 -61065084317007 -61065084328320 -61065084460631 -61065084478039 -61065084496718 -61065084726681 -61065084760140 -61065084956950 -61065084995302 -61065085022844 -61065085222623 -61065085255373 -61065085280836 -61065085567542 -61065085833318 -61065086010901 -61065086036616 -61065086227052 -61065086256408 -61065086412864 -61065086438751 -61065086599500 -61065086625402 -61065086798223 -61065086957477 -61065087113047 -61065087291049 -61065087452018 -61065087639093 -61065087794556 -61065087950712 -61065088114104 -61065088204539 -61065088397588 -61065088425057 -61065088541001 -61065088765579 -61065088993930 -61065089106704 -61065089191900 -61065089245100 -61065089262357 -61065089278343 -61065089290847 -61065089405536 -61065089421903 -61065089437544 -61065089456145 -61065089547226 -61065089566177 -61065089581941 -61065089604664 -61065089746470 -61065089766059 -61065089780597 -61065089796689 -61065089809494 -61065089936111 -61065089952228 -61065089967758 -61065089983133 -61065089997206 -61065090181470 -61065090197314 -61065090213064 -61065090231039 -61065090246902 -61065090262471 -61065090274789 -61065090385131 -61065090405670 -61065090537482 -61065090557310 -61065090573754 -61065090586501 -61065090604056 -61065090733226 -61065090749543 -61065090853642 -61065090877756 -61065090893642 -61065090908586 -61065091022520 -61065091039626 -61065091054545 -61065091069690 -61065091149365 -61065091166092 -61065091181548 -61065091197023 -61065091212342 -61065091370905 -61065091395288 -61065091492551 -61065091508626 -61065091524638 -61065091542374 -61065091664121 -61065091867725 -61065091885944 -61065091990883 -61065092028030 -61065092045249 -61065092059402 -61065092211899 -61065092245411 -61065092263876 -61065092405796 -61065092423619 -61065092439519 -61065092530561 -61065092547367 -61065092559252 -61065092574964 -61065092733268 -61065092756468 -61065092774270 -61065092790186 -61065092805927 -61065092885372 -61065092906672 -61065093026921 -61065093108228 -61065093234760 -61065093252490 -61065093267963 -61065093289654 -61065093314325 -61065093503501 -61065093519417 -61065093534753 -61065093550403 -61065093566214 -61065093726407 -61065093743059 -61065093758793 -61065093906303 -61065094108876 -61065094327097 -61065094696591 -61065094922193 -61065094956999 -61065095106393 -61065095139088 -61065095153387 -61065095172675 -61065095187469 -61065095361205 -61065095394634 -61065095409606 -61065095423501 -61065095437405 -61065095684460 -61065095701189 -61065095727258 -61065095893533 -61065095907886 -61065095921341 -61065096073294 -61065096101414 -61065096117674 -61065096129871 -61065096331286 -61065096348472 -61065096364336 -61065096390528 -61065096416086 -61065096533877 -61065096556158 -61065096572228 -61065096582448 -61065096740604 -61065096755172 -61065096768964 -61065096781954 -61065096868017 -61065096950695 -61065096962107 -61065096975669 -61065096990995 -61065097001434 -61065097134534 -61065097252696 -61065097398859 -61065097428742 -61065097455702 -61065097582110 -61065097680791 -61065097809337 -61065098019277 -61065098196988 -61065098327310 -61065098461176 -61065098609783 -61065098639435 -61065098777363 -61065098920733 -61065099154445 -61065099386039 -61065099603870 -61065099710909 -61065099728170 -61065099747446 -61065099776192 -61065099887348 -61065099925870 -61065099953059 -61065100082688 -61065100111438 -61065100136640 -61065100259652 -61065100378715 -61065100587380 -61065100681965 -61065100818915 -61065101016665 -61065101045191 -61065101251424 -61065101400647 -61065101570644 -61065101605658 -61065101634234 -61065101795554 -61065101943575 -61065102132314 -61065102267006 -61065102406717 -61065102425732 -61065102451747 -61065102665076 -61065102895409 -61065102916347 -61065103106210 -61065103130323 -61065103238324 -61065103356826 -61065103377684 -61065103393316 -61065103410953 -61065103426499 -61065103560298 -61065103584874 -61065103608145 -61065103748454 -61065103856180 -61065103884382 -61065104044924 -61065104204414 -61065104335880 -61065104355089 -61065104382312 -61065104510232 -61065104530206 -61065104545685 -61065104668980 -61065104697538 -61065104797464 -61065104916992 -61065104941635 -61065104957144 -61065104971412 -61065105077178 -61065105100451 -61065105115816 -61065105130270 -61065105223665 -61065105241834 -61065105257817 -61065105388644 -61065105405901 -61065105421481 -61065105436591 -61065105520947 -61065105536605 -61065105551942 -61065105567340 -61065105581662 -61065105707837 -61065105849112 -61065105860374 -61065105873904 -61065105892605 -61065105902298 -61065105985375 -61065105999582 -61065106015309 -61065106026522 -61065106040030 -61065106050800 -61065106129156 -61065106143592 -61065106156209 -61065106168840 -61065106181142 -61065106287081 -61065106305952 -61065106321481 -61065106336503 -61065106351088 -61065106363033 -61065106512868 -61065106528888 -61065106629333 -61065106644985 -61065106660277 -61065106675487 -61065106690523 -61065106702468 -61065106861921 -61065106878471 -61065106893732 -61065106909318 -61065106924798 -61065106940542 -61065106954783 -61065107056593 -61065107073568 -61065107088877 -61065107106241 -61065107121903 -61065107134441 -61065107288619 -61065107307883 -61065107475420 -61065107486385 -61065107590925 -61065107603606 -61065107617569 -61065107626632 -61065107727883 -61065107740536 -61065107754440 -61065107763618 -61065107861822 -61065107877721 -61065107890018 -61065107903220 -61065107912719 -61065107985528 -61065107999217 -61065108053389 -61065108071139 -61065108081165 -61065108342917 -61065108355923 -61065108368905 -61065108563016 -61065108576003 -61065108590280 -61065108599726 -61065108676557 -61065108690718 -61065108700521 -61065108712482 -61065108721794 -61065108820487 -61065108833444 -61065108842413 -61065108945997 -61065108959229 -61065108968217 -61065109072073 -61065109085354 -61065109099493 -61065109108396 -61065109265236 -61065109279084 -61065109292346 -61065109302284 -61065109393345 -61065109406325 -61065109421131 -61065109433822 -61065109443746 -61065109617690 -61065109631337 -61065109660887 -61065109671940 -61065109686212 -61065109699149 -61065109708204 -61065109801326 -61065109814237 -61065109824080 -61065109928293 -61065109940760 -61065109949790 -61065110051713 -61065110064650 -61065110074403 -61065110146475 -61065110158996 -61065110168189 -61065110242443 -61065110254761 -61065110265886 -61065110278188 -61065110290459 -61065110299453 -61065110394091 -61065110422925 -61065110435781 -61065110444742 -61065110514391 -61065110527386 -61065110690154 -61065110705116 -61065110717791 -61065110731599 -61065110741123 -61065110957488 -61065110972220 -61065110986014 -61065110998803 -61065111155108 -61065111169361 -61065111180407 -61065111193305 -61065111205044 -61065111219023 -61065111426481 -61065111447470 -61065111645883 -61065111852406 -61065111870722 -61065111885079 -61065111896537 -61065112133517 -61065112153228 -61065112166831 -61065112177035 -61065112190471 -61065112201228 -61065112390552 -61065112718901 -61065112910033 -61065112943395 -61065112965409 -61065113132161 -61065113151827 -61065113166640 -61065113181321 -61065113294765 -61065113427025 -61065113451332 -61065113476139 -61065113497224 -61065113619534 -61065113636057 -61065113651408 -61065113749315 -61065113855809 -61065113871094 -61065113885632 -61065113900580 -61065114078422 -61065114094684 -61065114108826 -61065114123578 -61065114134672 -61065114291130 -61065114306775 -61065114454600 -61065114469168 -61065114484783 -61065114499658 -61065114514469 -61065114530521 -61065114541755 -61065114670515 -61065114688001 -61065114723861 -61065114739422 -61065114751795 -61065114763933 -61065114862300 -61065114874032 -61065114886883 -61065114900041 -61065114912469 -61065114924600 -61065114934297 -61065115080746 -61065115094124 -61065115107085 -61065115122201 -61065115131822 -61065115319866 -61065115333548 -61065115346339 -61065115359670 -61065115491225 -61065115524344 -61065115549568 -61065115677483 -61065115696245 -61065115871035 -61065115885827 -61065115899829 -61065115910434 -61065115923857 -61065116067338 -61065116080874 -61065116208176 -61065116240307 -61065116252599 -61065116264563 -61065116277406 -61065116286424 -61065116298752 -61065116307922 -61065116316953 -61065116455283 -61065116468567 -61065116481292 -61065116493791 -61065116506551 -61065116516075 -61065116528145 -61065116537394 -61065116548926 -61065116695611 -61065116710509 -61065116724882 -61065116738021 -61065116751075 -61065116760424 -61065116920705 -61065116933766 -61065116968189 -61065116981239 -61065116993193 -61065117006478 -61065117016297 -61065117180359 -61065117193436 -61065117206619 -61065117219424 -61065117233953 -61065117243820 -61065117455750 -61065117470897 -61065117484350 -61065117498070 -61065117508340 -61065117645272 -61065117659400 -61065117674686 -61065117702845 -61065117728592 -61065118009883 -61065118129589 -61065118162025 -61065118193142 -61065118421538 -61065118518592 -61065118684528 -61065118714450 -61065118727856 -61065118868838 -61065119038384 -61065119055027 -61065119067302 -61065119203023 -61065119364287 -61065119579563 -61065119595607 -61065119613612 -61065119742383 -61065119905417 -61065119920287 -61065119933441 -61065119947271 -61065119957663 -61065120058319 -61065120075634 -61065120085958 -61065120284220 -61065120377735 -61065120397730 -61065120560562 -61065120575548 -61065120588498 -61065120601062 -61065120613770 -61065120829567 -61065120845871 -61065120860695 -61065120874336 -61065120888454 -61065120898800 -61065121020335 -61065121034366 -61065121049111 -61065121167484 -61065121184430 -61065121198185 -61065121212218 -61065121222479 -61065121303745 -61065121317802 -61065121327807 -61065121340967 -61065121354357 -61065121367821 -61065121380832 -61065121390776 -61065121525268 -61065121539390 -61065121552302 -61065121562063 -61065121574612 -61065121587678 -61065121597271 -61065121696142 -61065121710274 -61065121720404 -61065121732402 -61065121745823 -61065121759029 -61065121772010 -61065121782018 -61065121922902 -61065121937656 -61065121948038 -61065122056407 -61065122070157 -61065122083523 -61065122096412 -61065122106305 -61065122220676 -61065122234726 -61065122247838 -61065122260858 -61065122274635 -61065122284625 -61065122383540 -61065122398465 -61065122408755 -61065122532857 -61065122560506 -61065122579717 -61065122593008 -61065122606337 -61065122779767 -61065122794672 -61065122808286 -61065122821336 -61065122831383 -61065122971694 -61065122985871 -61065122999914 -61065123010267 -61065123098930 -61065123113439 -61065123126983 -61065123140920 -61065123150866 -61065123236374 -61065123249899 -61065123262581 -61065123275433 -61065123288306 -61065123298581 -61065123430281 -61065123446859 -61065123460500 -61065123473756 -61065123566297 -61065123577239 -61065123590051 -61065123603465 -61065123625690 -61065123739692 -61065123754228 -61065123766901 -61065123776793 -61065123872251 -61065123886075 -61065123899034 -61065123908557 -61065124074592 -61065124178325 -61065124194404 -61065124209809 -61065124304626 -61065124322021 -61065124337081 -61065124352829 -61065124370515 -61065124494215 -61065124518103 -61065124541657 -61065124566919 -61065124709586 -61065124830289 -61065124856882 -61065125029001 -61065125181230 -61065125372628 -61065125455711 -61065125481079 -61065125504969 -61065125678661 -61065125702961 -61065125796572 -61065125988249 -61065126013858 -61065126037720 -61065126246770 -61065126395225 -61065126507692 -61065126627626 -61065126666461 -61065126694906 -61065126828778 -61065126935675 -61065126967223 -61065127174279 -61065127309570 -61065127467880 -61065127600110 -61065127629591 -61065127656750 -61065127759412 -61065127785141 -61065127942946 -61065128044535 -61065128085280 -61065128284177 -61065128308034 -61065128458702 -61065128627666 -61065128651194 -61065128845136 -61065128872350 -61065128896405 -61065129011375 -61065129036392 -61065129066600 -61065129093553 -61065129216805 -61065129236163 -61065129253133 -61065129270258 -61065129285737 -61065129301181 -61065129312905 -61065129453576 -61065129469595 -61065129484775 -61065129605422 -61065129621197 -61065129636495 -61065129654158 -61065129666104 -61065129788817 -61065129968232 -61065130159679 -61065130176674 -61065130192076 -61065130320943 -61065130337027 -61065130419482 -61065130435738 -61065130451409 -61065130466607 -61065130556587 -61065130584854 -61065130601368 -61065130618943 -61065130707177 -61065130725590 -61065130738937 -61065130751988 -61065130763983 -61065130904059 -61065130937563 -61065131077840 -61065131090631 -61065131102949 -61065131115258 -61065131124363 -61065131266217 -61065131281783 -61065131295922 -61065131310330 -61065131346990 -61065131358885 -61065131485287 -61065131500816 -61065131515260 -61065131647597 -61065131697369 -61065131712119 -61065131726920 -61065131741169 -61065131755675 -61065131766569 -61065131856854 -61065131872039 -61065131886184 -61065131994424 -61065132052533 -61065132063164 -61065132230776 -61065132248410 -61065132262939 -61065132274425 -61065132406204 -61065132421759 -61065132458741 -61065132473931 -61065132491734 -61065132504916 -61065132623619 -61065132637804 -61065132724384 -61065132740350 -61065132753859 -61065132858831 -61065132951440 -61065132976985 -61065132992435 -61065133007526 -61065133021965 -61065133117720 -61065133131648 -61065133144931 -61065133158182 -61065133259904 -61065133351220 -61065133368446 -61065133497460 -61065133514345 -61065133529417 -61065133544803 -61065133556729 -61065133649876 -61065133666192 -61065133758476 -61065133774415 -61065133890933 -61065133906928 -61065134029465 -61065134045454 -61065134061594 -61065134076699 -61065134091975 -61065134103957 -61065134231055 -61065134246822 -61065134261919 -61065134276737 -61065134370507 -61065134387433 -61065134402730 -61065134414491 -61065134563298 -61065134579100 -61065134594391 -61065134609518 -61065134627724 -61065134640611 -61065134786278 -61065134909550 -61065134925327 -61065134940627 -61065134956845 -61065134971367 -61065135074316 -61065135090388 -61065135105809 -61065135121088 -61065135134187 -61065135237502 -61065135253100 -61065135349102 -61065135364892 -61065135446731 -61065135462502 -61065135479997 -61065135495132 -61065135579731 -61065135595819 -61065135611058 -61065135628281 -61065135760614 -61065135777711 -61065135797177 -61065135921209 -61065136041466 -61065136057556 -61065136192922 -61065136208490 -61065136224179 -61065136242196 -61065136254420 -61065136377006 -61065136393529 -61065136505596 -61065136521285 -61065136537079 -61065136552743 -61065136568276 -61065136693731 -61065136713910 -61065136730566 -61065136743417 -61065136841295 -61065136857009 -61065136964895 -61065136980762 -61065136996040 -61065137011312 -61065137112551 -61065137129837 -61065137144185 -61065137159765 -61065137175424 -61065137262087 -61065137280718 -61065137296391 -61065137311840 -61065137329241 -61065137427580 -61065137444857 -61065137463545 -61065137478986 -61065137593343 -61065137611354 -61065137626463 -61065137711472 -61065137731869 -61065137750240 -61065137831318 -61065137848197 -61065137959496 -61065137980726 -61065138079824 -61065138272731 -61065138303025 -61065138322167 -61065138504156 -61065138521675 -61065138537139 -61065138558517 -61065138710381 -61065138907500 -61065138923039 -61065139098745 -61065139115848 -61065139235901 -61065139387893 -61065139557028 -61065139575935 -61065139738048 -61065139758973 -61065139867605 -61065139887444 -61065139903218 -61065139922465 -61065140038870 -61065140178502 -61065140409327 -61065140446971 -61065140638074 -61065140655509 -61065140854058 -61065141064110 -61065141294195 -61065141311849 -61065141327414 -61065141349636 -61065141500221 -61065141787042 -61065141898389 -61065141914516 -61065141929975 -61065142115516 -61065142132300 -61065142147723 -61065142281514 -61065142297889 -61065142313840 -61065142331582 -61065142460738 -61065142598290 -61065142746107 -61065142826634 -61065142842764 -61065142858735 -61065142874254 -61065143026832 -61065143178655 -61065143292124 -61065143318440 -61065143334275 -61065143358162 -61065143379864 -61065143569666 -61065143660958 -61065143769411 -61065143900661 -61065143974644 -61065144098710 -61065144118844 -61065144225425 -61065144242239 -61065144260347 -61065144345786 -61065144368142 -61065144558616 -61065144692981 -61065144822052 -61065144936806 -61065144954754 -61065145086995 -61065145103806 -61065145224421 -61065145356656 -61065145493202 -61065145580673 -61065145603152 -61065145773188 -61065145800777 -61065145964926 -61065145994900 -61065146126988 -61065146144524 -61065146259701 -61065146394946 -61065146522864 -61065146667000 -61065146836374 -61065146973388 -61065147156099 -61065147174057 -61065147322883 -61065147352815 -61065147369541 -61065147386050 -61065147498388 -61065147514406 -61065147638083 -61065147719648 -61065147747242 -61065147767972 -61065147784723 -61065147897062 -61065148204933 -61065148385710 -61065148565203 -61065148755267 -61065148775780 -61065148918733 -61065148957835 -61065148980598 -61065149127471 -61065149167387 -61065149191861 -61065149207863 -61065149223244 -61065149244224 -61065149268848 -61065149283950 -61065149471413 -61065149499720 -61065149539029 -61065149551231 -61065149565998 -61065149583847 -61065149606258 -61065149818733 -61065149999427 -61065150133779 -61065150261844 -61065150278219 -61065150302945 -61065150325186 -61065150534939 -61065150659853 -61065150736246 -61065150908967 -61065151009931 -61065151040001 -61065151058504 -61065151208066 -61065151231037 -61065151386326 -61065151527097 -61065151554585 -61065151738761 -61065151757053 -61065151952290 -61065152173677 -61065152192093 -61065152207580 -61065152229099 -61065152395390 -61065152413827 -61065152441799 -61065152684669 -61065152710730 -61065152746135 -61065152877657 -61065153051851 -61065153067958 -61065153141607 -61065153168580 -61065153189793 -61065153397105 -61065153413761 -61065153429573 -61065153451891 -61065153628438 -61065153658064 -61065153827961 -61065153927522 -61065153945230 -61065153966751 -61065154164668 -61065154198081 -61065154345764 -61065154380301 -61065154408159 -61065154563939 -61065154845031 -61065154863265 -61065155006244 -61065155096210 -61065155179197 -61065155435754 -61065155644544 -61065155813488 -61065155941532 -61065156041304 -61065156160572 -61065156221589 -61065156238514 -61065156254169 -61065156388780 -61065156496538 -61065156576652 -61065156592881 -61065156608169 -61065156623787 -61065156775750 -61065156792053 -61065156804933 -61065156940592 -61065157019522 -61065157034152 -61065157047403 -61065157057300 -61065157158390 -61065157309520 -61065157324042 -61065157339387 -61065157352731 -61065157514465 -61065157530976 -61065157639710 -61065157656920 -61065157671917 -61065157858293 -61065157885393 -61065158031848 -61065158057234 -61065158087337 -61065158193993 -61065158217252 -61065158373652 -61065158566820 -61065158686420 -61065158849133 -61065158868506 -61065159036555 -61065159058628 -61065159202146 -61065159349865 -61065159374133 -61065159636791 -61065159653547 -61065159775028 -61065159792494 -61065159900019 -61065160174834 -61065160311515 -61065160355570 -61065160443243 -61065160488760 -61065160524192 -61065160547740 -61065160780073 -61065160804987 -61065160996845 -61065161013899 -61065161032580 -61065161049750 -61065161064228 -61065161223909 -61065161474744 -61065161491524 -61065161506665 -61065161732833 -61065161753771 -61065161768944 -61065161784211 -61065161799975 -61065161984841 -61065162004049 -61065162212035 -61065162315100 -61065162335493 -61065162491664 -61065162508119 -61065162523489 -61065162548634 -61065162744199 -61065162768226 -61065162790697 -61065162974423 -61065163130769 -61065163150495 -61065163174434 -61065163379226 -61065163398728 -61065163421203 -61065163576877 -61065163596968 -61065163620666 -61065163822140 -61065163855728 -61065163885938 -61065163914124 -61065164068462 -61065164220304 -61065164358888 -61065164505952 -61065164531522 -61065164558955 -61065164693827 -61065164721266 -61065164866905 -61065164975712 -61065164992089 -61065165006616 -61065165022050 -61065165036874 -61065165159858 -61065165176368 -61065165194181 -61065165210051 -61065165379828 -61065165393829 -61065165403425 -61065165522858 -61065165536402 -61065165548603 -61065165560860 -61065165573446 -61065165586708 -61065165596078 -61065165727200 -61065165741194 -61065165754898 -61065165769534 -61065165778952 -61065165909373 -61065165923843 -61065165937129 -61065165949754 -61065165959171 -61065166102589 -61065166116729 -61065166190223 -61065166203882 -61065166216753 -61065166229299 -61065166240693 -61065166253418 -61065166263275 -61065166362898 -61065166377234 -61065166392973 -61065166405917 -61065166415562 -61065166495572 -61065166508756 -61065166630284 -61065166645056 -61065166659304 -61065166668940 -61065166681837 -61065166694716 -61065166707354 -61065166717015 -61065166848271 -61065166861219 -61065166874164 -61065166886440 -61065166899551 -61065167031288 -61065167044774 -61065167058298 -61065167073221 -61065167085963 -61065167099085 -61065167108438 -61065167209052 -61065167223965 -61065167236433 -61065167249183 -61065167261838 -61065167273944 -61065167404523 -61065167418609 -61065167428213 -61065167440613 -61065167453180 -61065167466307 -61065167602440 -61065167616760 -61065167627790 -61065167738074 -61065167751488 -61065167855252 -61065167868719 -61065167881429 -61065167890611 -61065167903135 -61065167916350 -61065167930845 -61065167943100 -61065167953110 -61065168106907 -61065168312582 -61065168483802 -61065168498475 -61065168511711 -61065168525111 -61065168538348 -61065168548206 -61065168629793 -61065168643920 -61065168657640 -61065168670211 -61065168684184 -61065168952066 -61065168972462 -61065168986478 -61065169081584 -61065169095292 -61065169119884 -61065169150779 -61065169229501 -61065169243835 -61065169256995 -61065169269942 -61065169279681 -61065169352651 -61065169366239 -61065169378603 -61065169391279 -61065169536984 -61065169550681 -61065169563489 -61065169576007 -61065169586395 -61065169716490 -61065169730217 -61065169742551 -61065169755795 -61065169767610 -61065169856812 -61065169870720 -61065169880368 -61065169892868 -61065169905399 -61065169918565 -61065169997371 -61065170104659 -61065170118882 -61065170133490 -61065170145954 -61065170159566 -61065170169008 -61065170284487 -61065170300882 -61065170313422 -61065170329222 -61065170340904 -61065170423654 -61065170438871 -61065170449219 -61065170565313 -61065170579042 -61065170591839 -61065170604261 -61065170617628 -61065170631077 -61065170716204 -61065170729493 -61065170742558 -61065170755777 -61065170894118 -61065170908858 -61065170922092 -61065170935835 -61065170949026 -61065170961027 -61065171079686 -61065171095619 -61065171109017 -61065171121998 -61065171131649 -61065171282432 -61065171296108 -61065171311907 -61065171335385 -61065171428705 -61065171442283 -61065171455058 -61065171471386 -61065171484683 -61065171495167 -61065171599059 -61065171613319 -61065171626059 -61065171793700 -61065171805374 -61065172035717 -61065172049109 -61065172059085 -61065172071530 -61065172085339 -61065172204492 -61065172219184 -61065172231634 -61065172244700 -61065172258144 -61065172269944 -61065172391537 -61065172507186 -61065172521734 -61065172534081 -61065172545450 -61065172560548 -61065172576553 -61065172650570 -61065172664357 -61065172676756 -61065172686912 -61065172788420 -61065172802132 -61065172817454 -61065172826750 -61065172993635 -61065173007060 -61065173019454 -61065173031887 -61065173044560 -61065173057512 -61065173066888 -61065173188785 -61065173202510 -61065173214735 -61065173227020 -61065173239540 -61065173251495 -61065173381433 -61065173392320 -61065173407048 -61065173419321 -61065173433980 -61065173444151 -61065173456735 -61065173466376 -61065173651210 -61065173664710 -61065173673982 -61065173838879 -61065173852207 -61065173861897 -61065173980507 -61065173996983 -61065174010402 -61065174022969 -61065174036657 -61065174045883 -61065174167344 -61065174180665 -61065174193095 -61065174205619 -61065174218287 -61065174234933 -61065174244778 -61065174315936 -61065174329410 -61065174342263 -61065174354608 -61065174364100 -61065174500819 -61065174514327 -61065174528460 -61065174541199 -61065174553875 -61065174564278 -61065174757435 -61065174880226 -61065174896202 -61065174908997 -61065174921306 -61065174937273 -61065174947464 -61065175161131 -61065175236874 -61065175249604 -61065175262189 -61065175276378 -61065175426376 -61065175439873 -61065175610058 -61065175624095 -61065175636640 -61065175649167 -61065175661917 -61065175671423 -61065175697345 -61065175817126 -61065175830479 -61065175842909 -61065175855434 -61065175867998 -61065175877387 -61065175948709 -61065175962107 -61065175977059 -61065175989901 -61065176013421 -61065176158451 -61065176172623 -61065176185422 -61065176198462 -61065176211836 -61065176221646 -61065176334643 -61065176348214 -61065176360512 -61065176372746 -61065176385431 -61065176398387 -61065176407615 -61065176526063 -61065176539476 -61065176552748 -61065176565274 -61065176578340 -61065176662852 -61065176676865 -61065176686099 -61065176699173 -61065176803677 -61065176834574 -61065176856572 -61065176869537 -61065176882021 -61065176891303 -61065177049622 -61065177063364 -61065177076707 -61065177089928 -61065177168861 -61065177182754 -61065177196372 -61065177206183 -61065177365322 -61065177378637 -61065177391739 -61065177404460 -61065177416822 -61065177426060 -61065177625838 -61065177643389 -61065177821148 -61065177835152 -61065177848429 -61065177860972 -61065177873880 -61065177894430 -61065178012217 -61065178026406 -61065178039653 -61065178052268 -61065178061625 -61065178212922 -61065178226406 -61065178239049 -61065178252150 -61065178263721 -61065178421622 -61065178434841 -61065178447592 -61065178460403 -61065178655756 -61065178669372 -61065178681693 -61065178694665 -61065178707337 -61065178719550 -61065178791573 -61065178805307 -61065178814562 -61065178827392 -61065178915449 -61065178929547 -61065178941951 -61065178951831 -61065179098087 -61065179112240 -61065179124526 -61065179136801 -61065179244318 -61065179258394 -61065179270787 -61065179280723 -61065179443852 -61065179457648 -61065179470261 -61065179483245 -61065179492876 -61065179607357 -61065179623224 -61065179636018 -61065179649087 -61065179723404 -61065179736587 -61065179748941 -61065179761830 -61065179774649 -61065179784343 -61065179925579 -61065179939244 -61065179952173 -61065179965090 -61065179975228 -61065180134813 -61065180151285 -61065180163986 -61065180177161 -61065180188885 -61065180263266 -61065180278273 -61065180291222 -61065180304385 -61065180318480 -61065180393263 -61065180409492 -61065180421847 -61065180434946 -61065180447543 -61065180460578 -61065180470255 -61065180548839 -61065180562355 -61065180575621 -61065180588772 -61065180599236 -61065180676823 -61065180689823 -61065180704328 -61065180718497 -61065180731758 -61065180741005 -61065180754085 -61065180763367 -61065180841228 -61065180857374 -61065180870467 -61065180989791 -61065181000167 -61065181012836 -61065181027818 -61065181040394 -61065181053166 -61065181232596 -61065181248291 -61065181257989 -61065181374820 -61065181389341 -61065181398685 -61065181518096 -61065181593306 -61065181606679 -61065181619065 -61065181631368 -61065181640918 -61065181716865 -61065181733200 -61065181748142 -61065181854228 -61065181868220 -61065181880557 -61065181896771 -61065181910145 -61065181919413 -61065182086308 -61065182099515 -61065182112577 -61065182121827 -61065182134290 -61065182147155 -61065182160963 -61065182343905 -61065182358237 -61065182373163 -61065182385706 -61065182397996 -61065182409391 -61065182541855 -61065182556150 -61065182565341 -61065182673935 -61065182687248 -61065182696235 -61065182769796 -61065182783004 -61065182795768 -61065182808452 -61065182821604 -61065182831007 -61065182901806 -61065182915165 -61065182927577 -61065182942421 -61065182959269 -61065182967772 -61065183066666 -61065183080311 -61065183152227 -61065183165724 -61065183178972 -61065183191457 -61065183200442 -61065183213309 -61065183222411 -61065183305205 -61065183327566 -61065183339270 -61065183353687 -61065183370707 -61065183459053 -61065183472586 -61065183485320 -61065183497904 -61065183509956 -61065183519142 -61065183649598 -61065183662885 -61065183677914 -61065183687159 -61065183796191 -61065183809153 -61065183821440 -61065183833814 -61065183846150 -61065183855134 -61065183975639 -61065183989039 -61065184014523 -61065184034393 -61065184044417 -61065184139089 -61065184151115 -61065184163891 -61065184176201 -61065184188972 -61065184197945 -61065184212412 -61065184222226 -61065184325798 -61065184340464 -61065184362631 -61065184513012 -61065184535312 -61065184547678 -61065184564996 -61065184574211 -61065184716607 -61065184729912 -61065184742612 -61065184755074 -61065184767268 -61065184776801 -61065184911490 -61065184930477 -61065184944029 -61065184954212 -61065185102393 -61065185249515 -61065185262876 -61065185275321 -61065185284351 -61065185445891 -61065185462760 -61065185621855 -61065185784696 -61065185800814 -61065185810432 -61065185822846 -61065185834514 -61065185974192 -61065185987408 -61065185996950 -61065186009971 -61065186156557 -61065186170157 -61065186182952 -61065186195667 -61065186208130 -61065186217636 -61065186343692 -61065186357028 -61065186369813 -61065186382156 -61065186394734 -61065186406255 -61065186527549 -61065186543703 -61065186719233 -61065186734187 -61065186747018 -61065186759711 -61065186771408 -61065186784983 -61065186989310 -61065187000525 -61065187074408 -61065187088298 -61065187100734 -61065187112408 -61065187263735 -61065187279006 -61065187290980 -61065187303200 -61065187315245 -61065187324642 -61065187414368 -61065187428093 -61065187444949 -61065187454468 -61065187467014 -61065187479339 -61065187598441 -61065187737932 -61065187874937 -61065187888485 -61065187900676 -61065187915134 -61065187926535 -61065187938982 -61065187948088 -61065188124440 -61065188137588 -61065188150423 -61065188159306 -61065188367727 -61065188381044 -61065188393137 -61065188405491 -61065188580934 -61065188594622 -61065188603618 -61065188616360 -61065188637708 -61065188662355 -61065188787197 -61065188802739 -61065188818069 -61065188833144 -61065188928421 -61065188942166 -61065188954846 -61065188967410 -61065188980566 -61065188993601 -61065189002816 -61065189101942 -61065189115919 -61065189125175 -61065189137421 -61065189149768 -61065189162964 -61065189296477 -61065189310603 -61065189319788 -61065189392230 -61065189497179 -61065189509596 -61065189522388 -61065189538589 -61065189547872 -61065189635815 -61065189649283 -61065189658190 -61065189806922 -61065189827881 -61065189920459 -61065190046224 -61065190069989 -61065190090384 -61065190272830 -61065190292699 -61065190307649 -61065190325829 -61065190446014 -61065190470425 -61065190492914 -61065190632059 -61065190647097 -61065190812781 -61065190970697 -61065191118816 -61065191143136 -61065191154896 -61065191266595 -61065191414032 -61065191437910 -61065191458236 -61065191607326 -61065191630765 -61065191650991 -61065191670976 -61065191796610 -61065191813379 -61065191954624 -61065191973685 -61065192205154 -61065192219966 -61065192239213 -61065192359640 -61065192375505 -61065192413541 -61065192569558 -61065192586268 -61065192745183 -61065192845719 -61065192863518 -61065192959649 -61065193068643 -61065193106963 -61065193299135 -61065193314267 -61065193328006 -61065193478424 -61065193495868 -61065193508802 -61065193518482 -61065193615541 -61065193691774 -61065193706156 -61065193720281 -61065193872269 -61065194070905 -61065194091486 -61065194104097 -61065194115271 -61065194208729 -61065194221912 -61065194234724 -61065194250923 -61065194494013 -61065194559082 -61065194573274 -61065194585213 -61065194593857 -61065194756988 -61065194968999 -61065194984776 -61065194993775 -61065195124033 -61065195137916 -61065195149825 -61065195161765 -61065195173635 -61065195182242 -61065195401667 -61065195422677 -61065195436394 -61065195476025 -61065195488614 -61065195587544 -61065195613674 -61065195761472 -61065195777200 -61065195800405 -61065195818115 -61065195963392 -61065195977756 -61065196014510 -61065196095446 -61065196305486 -61065196403301 -61065196417118 -61065196604199 -61065196624121 -61065196640507 -61065196744423 -61065196758389 -61065196772312 -61065196786085 -61065196800053 -61065196924459 -61065196939811 -61065196954079 -61065196964834 -61065196979223 -61065196992761 -61065197060025 -61065197074167 -61065197279157 -61065197380170 -61065197511265 -61065197643137 -61065197658306 -61065197670981 -61065197685236 -61065197840363 -61065197855743 -61065197960508 -61065197987097 -61065198001992 -61065198014435 -61065198127786 -61065198142557 -61065198155510 -61065198169044 -61065198182955 -61065198341937 -61065198354925 -61065198366861 -61065198378487 -61065198390092 -61065198572389 -61065198585758 -61065198597375 -61065198610919 -61065198619717 -61065198631753 -61065198696236 -61065198709342 -61065198720903 -61065198732498 -61065198741107 -61065198822451 -61065198834800 -61065198846302 -61065198857870 -61065198869336 -61065198877452 -61065198944828 -61065198958083 -61065198970185 -61065198981856 -61065198992620 -61065199004837 -61065199013209 -61065199077524 -61065199086442 -61065199189138 -61065199203397 -61065199214900 -61065199226709 -61065199238289 -61065199252942 -61065199262045 -61065199424123 -61065199436409 -61065199447851 -61065199456031 -61065199537098 -61065199548917 -61065199561116 -61065199572410 -61065199583368 -61065199595415 -61065199603671 -61065199612296 -61065199707903 -61065199720350 -61065199731562 -61065199740256 -61065199752257 -61065199764192 -61065199772365 -61065199915392 -61065199930704 -61065199941874 -61065200118232 -61065200131734 -61065200143138 -61065200151143 -61065200163221 -61065200173685 -61065200259296 -61065200273979 -61065200294445 -61065200310861 -61065200477626 -61065200677891 -61065200708682 -61065200729366 -61065200864044 -61065200877422 -61065200889418 -61065200901601 -61065200910035 -61065200922344 -61065200930704 -61065201088109 -61065201101341 -61065201113421 -61065201125049 -61065201133437 -61065201300921 -61065201324633 -61065201351536 -61065201481114 -61065201494200 -61065201505777 -61065201517873 -61065201529656 -61065201538377 -61065201804259 -61065201965206 -61065202099892 -61065202113067 -61065202125102 -61065202224288 -61065202237353 -61065202249856 -61065202262027 -61065202270209 -61065202280773 -61065202395731 -61065202423190 -61065202535384 -61065202548593 -61065202560576 -61065202572162 -61065202583586 -61065202688644 -61065202704937 -61065202716718 -61065202728446 -61065202737510 -61065202862684 -61065202877293 -61065202885694 -61065202979495 -61065202992122 -61065203000301 -61065203011751 -61065203023364 -61065203031965 -61065203162231 -61065203175134 -61065203187265 -61065203198979 -61065203209432 -61065203221231 -61065203230513 -61065203360138 -61065203374477 -61065203387759 -61065203402123 -61065203414276 -61065203491036 -61065203515712 -61065203537976 -61065203656796 -61065203669116 -61065203680458 -61065203688991 -61065203810944 -61065203823816 -61065203832187 -61065203917402 -61065203929865 -61065203943341 -61065203954091 -61065204041044 -61065204165294 -61065204177831 -61065204189285 -61065204200546 -61065204214393 -61065204222714 -61065204352080 -61065204364786 -61065204376453 -61065204387892 -61065204396847 -61065204470088 -61065204481997 -61065204490892 -61065204586764 -61065204606325 -61065204736636 -61065205032706 -61065205061094 -61065205229151 -61065205252534 -61065205274747 -61065205460163 -61065205606686 -61065205780448 -61065205799015 -61065205887932 -61065205980254 -61065206088323 -61065206171281 -61065206190497 -61065206208046 -61065206335237 -61065206516416 -61065206534719 -61065206699641 -61065206847528 -61065206958658 -61065206971884 -61065206987695 -61065207008374 -61065207030371 -61065207050212 -61065207153498 -61065207168374 -61065207179084 -61065207197044 -61065207211502 -61065207222321 -61065207240321 -61065207250883 -61065207391894 -61065207510585 -61065207534808 -61065207579997 -61065207595031 -61065207617752 -61065207737510 -61065207762908 -61065207778291 -61065207788921 -61065207799747 -61065207823071 -61065207834323 -61065207854341 -61065207981012 -61065208014532 -61065208200324 -61065208215785 -61065208357684 -61065208383729 -61065208592004 -61065208609498 -61065208620312 -61065208754418 -61065208787740 -61065208802643 -61065208813260 -61065208885915 -61065208906423 -61065208924700 -61065208938541 -61065208955787 -61065208977862 -61065209055490 -61065209069982 -61065209083774 -61065209102746 -61065209182501 -61065209197721 -61065209212340 -61065209228073 -61065209249008 -61065209260026 -61065209364931 -61065209456820 -61065209480016 -61065209838110 -61065209862839 -61065209888651 -61065210080604 -61065210102399 -61065210126073 -61065210291705 -61065210316247 -61065210423849 -61065210621446 -61065210637490 -61065210659378 -61065210683887 -61065210888491 -61065210920175 -61065210931769 -61065210945665 -61065211083194 -61065211101553 -61065211245165 -61065211263631 -61065211276566 -61065211286114 -61065211438097 -61065211455283 -61065211468093 -61065211479970 -61065211496420 -61065211617284 -61065211637906 -61065211801257 -61065211819001 -61065212029334 -61065212297413 -61065212313778 -61065212330202 -61065212348724 -61065212366573 -61065212384623 -61065212571234 -61065212603379 -61065212625210 -61065212644767 -61065212658661 -61065212672648 -61065212693547 -61065212884607 -61065212908693 -61065213035174 -61065213059195 -61065213076695 -61065213095792 -61065213387499 -61065213409651 -61065213605480 -61065213628500 -61065213837664 -61065213873436 -61065213899238 -61065213921456 -61065214121669 -61065214154013 -61065214177358 -61065214391515 -61065214415083 -61065214445322 -61065214470221 -61065214636956 -61065214808721 -61065214840752 -61065214868131 -61065215080736 -61065215101482 -61065215274917 -61065215291549 -61065215462238 -61065215667743 -61065215783038 -61065215964754 -61065216133818 -61065216166216 -61065216186722 -61065216380205 -61065216492652 -61065216527688 -61065216555503 -61065216762163 -61065216792712 -61065216919911 -61065217096655 -61065217242960 -61065217432614 -61065217574392 -61065217598154 -61065217739916 -61065217901640 -61065217928806 -61065217951625 -61065217974787 -61065218162445 -61065218176268 -61065218190729 -61065218203598 -61065218215360 -61065218227904 -61065218243912 -61065218257692 -61065218270393 -61065218282181 -61065218293910 -61065218306974 -61065218319338 -61065218331068 -61065218343052 -61065218354532 -61065218466002 -61065218479918 -61065218489456 -61065218648636 -61065218668039 -61065218686296 -61065218710498 -61065218868955 -61065218891044 -61065218906052 -61065219093236 -61065219117121 -61065219135688 -61065219157683 -61065219176059 -61065219192819 -61065219402856 -61065219425275 -61065219443714 -61065219462197 -61065219475826 -61065219600982 -61065219751214 -61065219921656 -61065219947596 -61065220068551 -61065220084024 -61065220099741 -61065220121871 -61065220239399 -61065220253908 -61065220267715 -61065220287682 -61065220437404 -61065220529702 -61065220544570 -61065220561838 -61065220661999 -61065220676458 -61065220693496 -61065220772296 -61065220859073 -61065220873756 -61065220887702 -61065220908495 -61065221066792 -61065221081519 -61065221135143 -61065221170946 -61065221336568 -61065221351466 -61065221371230 -61065221530026 -61065221544262 -61065221560268 -61065221683373 -61065221702966 -61065221807198 -61065221822454 -61065221841674 -61065221856273 -61065221975862 -61065221990340 -61065222001933 -61065222016079 -61065222035962 -61065222127082 -61065222141025 -61065222237782 -61065222252688 -61065222265467 -61065222282989 -61065222420485 -61065222440548 -61065222453122 -61065222468059 -61065222478393 -61065222582166 -61065222595720 -61065222608618 -61065222628118 -61065222751475 -61065222959306 -61065223042384 -61065223056247 -61065223072306 -61065223213823 -61065223313958 -61065223331080 -61065223470062 -61065223490721 -61065223501414 -61065223622060 -61065223692778 -61065223708673 -61065223718677 -61065223899271 -61065224121932 -61065224141134 -61065224154337 -61065224382397 -61065224561535 -61065224684398 -61065224848794 -61065224881682 -61065224900434 -61065225041915 -61065225170743 -61065225304560 -61065225446344 -61065225658761 -61065225677619 -61065225695195 -61065225857487 -61065225878001 -61065226098288 -61065226122884 -61065226139784 -61065226316725 -61065226498437 -61065226517226 -61065226695028 -61065226712340 -61065226893214 -61065226913776 -61065227034179 -61065227057998 -61065227076089 -61065227094595 -61065227229690 -61065227442719 -61065227580000 -61065227717967 -61065227733731 -61065227749116 -61065227895930 -61065227971697 -61065228114426 -61065228131682 -61065228148157 -61065228226049 -61065228243786 -61065228260071 -61065228277207 -61065228451800 -61065228468780 -61065228485085 -61065228501527 -61065228517268 -61065228533632 -61065228678258 -61065228838463 -61065228857120 -61065228873917 -61065228890530 -61065228906514 -61065228923131 -61065228935559 -61065229231630 -61065229248365 -61065229403181 -61065229424699 -61065229643182 -61065229663418 -61065229682708 -61065229874707 -61065229906772 -61065229923852 -61065230192912 -61065230216206 -61065230235880 -61065230248535 -61065230373972 -61065230392739 -61065230405991 -61065230423131 -61065230440284 -61065230458387 -61065230609922 -61065230628983 -61065230646315 -61065230659212 -61065230838992 -61065230856357 -61065230872624 -61065230889217 -61065230905381 -61065230920856 -61065231081452 -61065231101444 -61065231121942 -61065231141623 -61065231161363 -61065231181856 -61065231481705 -61065231500070 -61065231517558 -61065231535742 -61065231549153 -61065231839619 -61065231854277 -61065231870738 -61065231993880 -61065232043016 -61065232314656 -61065232526326 -61065232680342 -61065232848128 -61065232998917 -61065233099508 -61065233255576 -61065233284248 -61065233313540 -61065233494968 -61065233668060 -61065233807526 -61065233923397 -61065234027561 -61065234139605 -61065234275687 -61065234468994 -61065234598630 -61065234619919 -61065234724616 -61065234743258 -61065234756386 -61065234887747 -61065234901847 -61065235039338 -61065235061992 -61065235191467 -61065235368853 -61065235451269 -61065235609784 -61065235624039 -61065235711032 -61065235729859 -61065235745354 -61065235758153 -61065235885928 -61065235910193 -61065235925891 -61065235938986 -61065236095644 -61065236111921 -61065236123466 -61065236135626 -61065236209878 -61065236229554 -61065236393407 -61065236416393 -61065236434559 -61065236451562 -61065236463636 -61065236602404 -61065236719973 -61065236812196 -61065236912267 -61065236926285 -61065236945718 -61065237082150 -61065237101305 -61065237121864 -61065237141603 -61065237238493 -61065237252504 -61065237279391 -61065237291752 -61065237417360 -61065237434742 -61065237580820 -61065237747552 -61065237760903 -61065237773646 -61065237797429 -61065237811469 -61065237971370 -61065238066239 -61065238080211 -61065238092557 -61065238105787 -61065238125833 -61065238163244 -61065238301866 -61065238489832 -61065238507107 -61065238524868 -61065238538062 -61065238549417 -61065238717951 -61065238828920 -61065238960791 -61065238980833 -61065238997087 -61065239012962 -61065239025115 -61065239040823 -61065239218762 -61065239316406 -61065239488754 -61065239617642 -61065239630296 -61065239773035 -61065239792570 -61065239806776 -61065239838371 -61065239975868 -61065240064134 -61065240137179 -61065240253575 -61065240388203 -61065240402894 -61065240538600 -61065240653019 -61065240823888 -61065240857041 -61065240880402 -61065240891541 -61065241044342 -61065241187262 -61065241273396 -61065241286880 -61065241299098 -61065241344189 -61065241361978 -61065241372478 -61065241392770 -61065241557564 -61065241572953 -61065241597438 -61065241611623 -61065241744189 -61065241758872 -61065241781150 -61065241796016 -61065241948503 -61065242114212 -61065242131446 -61065242143585 -61065242157710 -61065242320493 -61065242334099 -61065242348857 -61065242368397 -61065242497468 -61065242611570 -61065242625255 -61065242637877 -61065242650801 -61065242777863 -61065242793021 -61065242805498 -61065242817959 -61065242831460 -61065242841374 -61065242938301 -61065242957966 -61065243028887 -61065243097785 -61065243111040 -61065243195976 -61065243217432 -61065243236268 -61065243249635 -61065243263193 -61065243272987 -61065243429883 -61065243504344 -61065243518732 -61065243528327 -61065243620263 -61065243633938 -61065243646686 -61065243658102 -61065243764805 -61065243782130 -61065243794440 -61065243803286 -61065243939961 -61065243953730 -61065243966539 -61065243979250 -61065243993619 -61065244025645 -61065244040558 -61065244150942 -61065244164873 -61065244180455 -61065244263548 -61065244284147 -61065244297288 -61065244310772 -61065244320197 -61065244502837 -61065244675698 -61065244813468 -61065244837187 -61065244962784 -61065244989925 -61065245019472 -61065245131603 -61065245157734 -61065245301128 -61065245479322 -61065245502440 -61065245528273 -61065245614610 -61065245646159 -61065245668469 -61065245881843 -61065246093887 -61065246269910 -61065246478968 -61065246515738 -61065246541372 -61065246732335 -61065246895164 -61065246925463 -61065246949274 -61065247114414 -61065247132443 -61065247319301 -61065247481693 -61065247514804 -61065247539747 -61065247711321 -61065247957606 -61065247979757 -61065248015117 -61065248145810 -61065248174252 -61065248196984 -61065248329463 -61065248348849 -61065248398948 -61065248435049 -61065248513965 -61065248606060 -61065248619016 -61065248636445 -61065248653708 -61065248672416 -61065248701321 -61065248724274 -61065248743825 -61065248756238 -61065248860047 -61065248894223 -61065248910068 -61065248931016 -61065249016544 -61065249042580 -61065249059742 -61065249183524 -61065249208168 -61065249231560 -61065249255157 -61065249391180 -61065249407343 -61065249493699 -61065249518772 -61065249602961 -61065249643589 -61065249667988 -61065249763682 -61065249788100 -61065249811361 -61065249902913 -61065249933286 -61065250154681 -61065250179811 -61065250293113 -61065250308747 -61065250467059 -61065250485809 -61065250510437 -61065250534549 -61065250550228 -61065250627009 -61065250720036 -61065250743958 -61065250767969 -61065250814261 -61065250877126 -61065250901183 -61065251013242 -61065251071890 -61065251150456 -61065251174070 -61065251275790 -61065251360637 -61065251379819 -61065251482731 -61065251553543 -61065251579637 -61065251638365 -61065251661260 -61065251683565 -61065251706324 -61065251723779 -61065251787240 -61065251862927 -61065251923372 -61065251986250 -61065252069176 -61065252115372 -61065252177318 -61065252199995 -61065252287836 -61065252311127 -61065252335827 -61065252385039 -61065252471211 -61065252549519 -61065252639032 -61065252723608 -61065252823075 -61065252847451 -61065252935130 -61065252990139 -61065253037407 -61065253129494 -61065253205669 -61065253230819 -61065253300714 -61065253425864 -61065253508066 -61065253523520 -61065253571284 -61065253590245 -61065253711533 -61065253836706 -61065253861569 -61065253923158 -61065253949819 -61065254084932 -61065254222326 -61065254248124 -61065254309561 -61065254336002 -61065254397772 -61065254495340 -61065254517420 -61065254541851 -61065254560639 -61065254585478 -61065254765964 -61065254869749 -61065254889918 -61065254909203 -61065254932864 -61065255009365 -61065255068138 -61065255159774 -61065255341022 -61065255367446 -61065255395716 -61065255483693 -61065255515899 -61065255538319 -61065255600988 -61065255631419 -61065255654882 -61065255733154 -61065255860189 -61065255888818 -61065255911125 -61065255989454 -61065256085899 -61065256115524 -61065256181714 -61065256211255 -61065256239524 -61065256317581 -61065256346153 -61065256393483 -61065256497312 -61065256517718 -61065256539045 -61065256609191 -61065256719890 -61065256737219 -61065256767076 -61065256877937 -61065256898229 -61065256924321 -61065256950272 -61065257003243 -61065257085674 -61065257215111 -61065257235393 -61065257251907 -61065257273150 -61065257416869 -61065257435236 -61065257461027 -61065257534607 -61065257617183 -61065257647670 -61065257673153 -61065257698663 -61065257856158 -61065257971982 -61065258052656 -61065258103671 -61065258126490 -61065258220090 -61065258283675 -61065258398199 -61065258425107 -61065258451793 -61065258561344 -61065258587607 -61065258611678 -61065258748137 -61065258776008 -61065258869838 -61065259001270 -61065259024996 -61065259092553 -61065259215324 -61065259246989 -61065259273241 -61065259424106 -61065259535447 -61065259614015 -61065259707059 -61065259761334 -61065259842750 -61065259952929 -61065260086025 -61065260162995 -61065260249833 -61065260268940 -61065260291418 -61065260332842 -61065260418327 -61065260494756 -61065260595920 -61065260740997 -61065260753779 -61065260879049 -61065260905318 -61065261055586 -61065261075076 -61065261121745 -61065261158369 -61065261244812 -61065261264975 -61065261290158 -61065261366816 -61065261430121 -61065261531151 -61065261550448 -61065261573307 -61065261680200 -61065261698206 -61065261806040 -61065261823885 -61065261846132 -61065261898364 -61065261991567 -61065262047067 -61065262124559 -61065262192374 -61065262293308 -61065262377402 -61065262404784 -61065262427431 -61065262505122 -61065262530314 -61065262578614 -61065262697892 -61065262771381 -61065262853264 -61065262955596 -61065263094007 -61065263181976 -61065263279861 -61065263356036 -61065263483721 -61065263562054 -61065263626982 -61065263713089 -61065263811940 -61065263836771 -61065263897706 -61065264029594 -61065264143732 -61065264162697 -61065264268545 -61065264287968 -61065264308296 -61065264432682 -61065264450510 -61065264466077 -61065264489183 -61065264605206 -61065264657529 -61065264747424 -61065264769107 -61065264884025 -61065264940349 -61065264970639 -61065265084523 -61065265129308 -61065265161094 -61065265185052 -61065265285228 -61065265372603 -61065265393169 -61065265415445 -61065265524553 -61065265543385 -61065265568374 -61065265650745 -61065265735581 -61065265839373 -61065265859639 -61065265883232 -61065265975533 -61065266073379 -61065266155341 -61065266211779 -61065266279426 -61065266348646 -61065266411738 -61065266474032 -61065266535731 -61065266629328 -61065266691860 -61065266741746 -61065266803321 -61065266871594 -61065266982435 -61065267053453 -61065267070465 -61065267086465 -61065267177061 -61065267265516 -61065267363583 -61065267462062 -61065267525847 -61065267576319 -61065267655831 -61065267719197 -61065267779219 -61065267857098 -61065267974661 -61065267993918 -61065268063797 -61065268218019 -61065268237055 -61065268260600 -61065268279997 -61065268357412 -61065268483658 -61065268501442 -61065268519276 -61065268588583 -61065268607497 -61065268627625 -61065268680443 -61065268702495 -61065268768553 -61065268787581 -61065268852753 -61065268915945 -61065269001276 -61065269047052 -61065269110226 -61065269172084 -61065269267638 -61065269287478 -61065269306813 -61065269326375 -61065269374495 -61065269394453 -61065269413684 -61065269431552 -61065269551065 -61065269653726 -61065269677079 -61065269794332 -61065269813362 -61065269832048 -61065269850335 -61065269868010 -61065269881894 -61065269990076 -61065270036570 -61065270054668 -61065270173983 -61065270271460 -61065270337935 -61065270356966 -61065270443053 -61065270464647 -61065270551235 -61065270623005 -61065270713558 -61065270781082 -61065270867564 -61065270914825 -61065270965219 -61065271012757 -61065271079384 -61065271126089 -61065271196797 -61065271276980 -61065271339966 -61065271401233 -61065271502778 -61065271571806 -61065271651738 -61065271728431 -61065271794475 -61065271872388 -61065271931701 -61065271947039 -61065271961927 -61065271982453 -61065272015729 -61065272116790 -61065272215383 -61065272310229 -61065272392259 -61065272470209 -61065272598261 -61065272675520 -61065272722412 -61065272825837 -61065272913398 -61065273009529 -61065273106368 -61065273232588 -61065273252494 -61065273338631 -61065273415362 -61065273493637 -61065273581819 -61065273683486 -61065273764252 -61065273784252 -61065273860447 -61065273937017 -61065274012147 -61065274072664 -61065274149452 -61065274229105 -61065274294216 -61065274398011 -61065274497217 -61065274598281 -61065274667972 -61065274741414 -61065274804260 -61065274889877 -61065274938365 -61065274958937 -61065275032948 -61065275120698 -61065275140784 -61065275188055 -61065275297267 -61065275383439 -61065275480045 -61065275567945 -61065275655445 -61065275675597 -61065275769515 -61065275907457 -61065276042678 -61065276139428 -61065276187850 -61065276256093 -61065276349905 -61065276424705 -61065276488055 -61065276605460 -61065276732939 -61065276753075 -61065276829835 -61065276925747 -61065277028564 -61065277163385 -61065277213093 -61065277263853 -61065277357062 -61065277443092 -61065277512396 -61065277609692 -61065277715198 -61065277808728 -61065277884347 -61065277996300 -61065278057946 -61065278104142 -61065278200120 -61065278278217 -61065278297582 -61065278346016 -61065278422067 -61065278529365 -61065278548823 -61065278568735 -61065278588598 -61065278683143 -61065278744217 -61065278844440 -61065278921062 -61065279028565 -61065279102624 -61065279143615 -61065279157908 -61065279171767 -61065279185266 -61065279204380 -61065279297152 -61065279343894 -61065279362996 -61065279380566 -61065279472297 -61065279538009 -61065279660722 -61065279711626 -61065279780911 -61065279802694 -61065279904504 -61065279986289 -61065280102429 -61065280206420 -61065280292614 -61065280372296 -61065280461095 -61065280555013 -61065280636213 -61065280732073 -61065280793865 -61065280871571 -61065280970894 -61065281036856 -61065281085908 -61065281150019 -61065281214640 -61065281325598 -61065281428671 -61065281547168 -61065281595453 -61065281692904 -61065281831284 -61065281896317 -61065281943899 -61065282038959 -61065282113190 -61065282175513 -61065282255877 -61065282318614 -61065282396105 -61065282489211 -61065282582016 -61065282672021 -61065282758935 -61065282856044 -61065282941770 -61065283037052 -61065283117277 -61065283223905 -61065283324350 -61065283396200 -61065283443761 -61065283528178 -61065283624500 -61065283671205 -61065283698970 -61065283782712 -61065283804232 -61065283897334 -61065283915823 -61065284022873 -61065284046998 -61065284110531 -61065284221204 -61065284249745 -61065284299829 -61065284321689 -61065284340381 -61065284418147 -61065284536487 -61065284626338 -61065284724051 -61065284811017 -61065284909213 -61065284954863 -61065285036816 -61065285139822 -61065285159727 -61065285207268 -61065285282485 -61065285329490 -61065285424818 -61065285500915 -61065285551877 -61065285570472 -61065285670505 -61065285750652 -61065285876804 -61065285963422 -61065286058669 -61065286152122 -61065286253544 -61065286295349 -61065286310694 -61065286325986 -61065286341216 -61065286356779 -61065286371253 -61065286386126 -61065286400769 -61065286415703 -61065286430377 -61065286445292 -61065286459822 -61065286474530 -61065286489198 -61065286504136 -61065286518820 -61065286533638 -61065286548587 -61065286563897 -61065286578542 -61065286593317 -61065286607761 -61065286622840 -61065286637591 -61065286652728 -61065286667467 -61065286682292 -61065286696745 -61065286711784 -61065286726386 -61065286741295 -61065286755990 -61065286770873 -61065286785220 -61065286799948 -61065286814412 -61065286829167 -61065286843842 -61065286858828 -61065286873434 -61065286888222 -61065286902772 -61065286917603 -61065286932151 -61065286946848 -61065286965882 -61065286980045 -61065286994233 -61065287009225 -61065287023873 -61065287038759 -61065287053248 -61065287068144 -61065287082745 -61065287097743 -61065287112461 -61065287127193 -61065287141612 -61065287156480 -61065287171157 -61065287186009 -61065287200350 -61065287215154 -61065287229433 -61065287244186 -61065287258612 -61065287273460 -61065287288061 -61065287302808 -61065287316603 -61065287331850 -61065287345853 -61065287360218 -61065287374549 -61065287388904 -61065287402944 -61065287417793 -61065287432009 -61065287446440 -61065287461038 -61065287475625 -61065287490264 -61065287505257 -61065287519404 -61065287534335 -61065287548235 -61065287564446 -61065287578916 -61065287593446 -61065287608150 -61065287622840 -61065287636940 -61065287651329 -61065287665216 -61065287679862 -61065287693631 -61065287708398 -61065287722887 -61065287738101 -61065287752279 -61065287766785 -61065287780651 -61065287795087 -61065287809410 -61065287824013 -61065287838226 -61065287852882 -61065287868437 -61065287882962 -61065287897072 -61065287911490 -61065287925471 -61065287940004 -61065287953776 -61065287968151 -61065287982419 -61065287997038 -61065288025460 -61065288040588 -61065288054947 -61065288069654 -61065288084704 -61065288099379 -61065288113430 -61065288127793 -61065288141799 -61065288156540 -61065288170834 -61065288185403 -61065288199819 -61065288214421 -61065288228476 -61065288243437 -61065288258135 -61065288273394 -61065288287536 -61065288302260 -61065288316565 -61065288331455 -61065288345879 -61065288360328 -61065288374357 -61065288392197 -61065288406235 -61065288420605 -61065288435250 -61065288449591 -61065288464041 -61065288478780 -61065288493324 -61065288508477 -61065288523046 -61065288537761 -61065288552151 -61065288566914 -61065288581807 -61065288596766 -61065288611455 -61065288626296 -61065288643261 -61065288657460 -61065288674334 -61065288688695 -61065288703471 -61065288717668 -61065288732341 -61065288746589 -61065288761101 -61065288775443 -61065288790252 -61065288804528 -61065288819258 -61065288833597 -61065288848294 -61065288862888 -61065288877552 -61065288892063 -61065288909383 -61065288923636 -61065288938400 -61065288952565 -61065288967478 -61065288981989 -61065288997001 -61065289011295 -61065289025795 -61065289040310 -61065289055153 -61065289069561 -61065289153698 -61065289166630 -61065289179400 -61065289192364 -61065289205044 -61065289217666 -61065289230021 -61065289242661 -61065289255392 -61065289267863 -61065289280519 -61065289295849 -61065289308388 -61065289320933 -61065289333453 -61065289345950 -61065289358366 -61065289370961 -61065289389228 -61065289402080 -61065289414537 -61065289426967 -61065289441981 -61065289454513 -61065289467149 -61065289481736 -61065289494527 -61065289506980 -61065289519458 -61065289531747 -61065289548017 -61065289560794 -61065289573281 -61065289586180 -61065289599563 -61065289615238 -61065289628547 -61065289642070 -61065289655568 -61065289668623 -61065289681522 -61065289694855 -61065289708359 -61065289722115 -61065289735095 -61065289748524 -61065289761954 -61065289775120 -61065289788523 -61065289801899 -61065289814965 -61065289827820 -61065289841264 -61065289854467 -61065289867645 -61065289880894 -61065289894314 -61065289907980 -61065289921391 -61065289934086 -61065289947208 -61065289960089 -61065289973332 -61065289986652 -61065290002076 -61065290015486 -61065290028667 -61065290042353 -61065290055803 -61065290069061 -61065290082120 -61065290095279 -61065290108662 -61065290121976 -61065290135309 -61065290148142 -61065290161194 -61065290174531 -61065290187775 -61065290200947 -61065290213995 -61065290227056 -61065290240631 -61065290253931 -61065290267368 -61065290280440 -61065290293484 -61065290306892 -61065290320304 -61065290333948 -61065290347397 -61065290361428 -61065290374729 -61065290388025 -61065290401444 -61065290415468 -61065290428559 -61065290442199 -61065290455420 -61065290468952 -61065290482323 -61065290495231 -61065290508712 -61065290524428 -61065290538212 -61065290551835 -61065290565686 -61065290579329 -61065290592565 -61065290607876 -61065290621451 -61065290649536 -61065290661986 -61065290674446 -61065290687001 -61065290701245 -61065290713878 -61065290726322 -61065290738869 -61065290751672 -61065290763885 -61065290776138 -61065290788628 -61065290801248 -61065290813792 -61065290825994 -61065290838013 -61065290850544 -61065290883734 -61065290897093 -61065290910873 -61065290924510 -61065290938092 -61065290951170 -61065290964028 -61065290977487 -61065290990954 -61065291018001 -61065291030260 -61065291042298 -61065291054720 -61065291067018 -61065291079357 -61065291091746 -61065291103962 -61065291116149 -61065291128624 -61065291141337 -61065291153760 -61065291165911 -61065291182583 -61065291195278 -61065291208159 -61065291220720 -61065291234354 -61065291246516 -61065291259052 -61065291311219 -61065291323729 -61065291338205 -61065291350640 -61065291362904 -61065291375283 -61065291389461 -61065291401607 -61065291414138 -61065291428382 -61065291440787 -61065291453193 -61065291467541 -61065291480166 -61065291492441 -61065291504827 -61065291517205 -61065291529730 -61065291542077 -61065291554500 -61065291566817 -61065291579171 -61065291606626 -61065291618180 -61065291629617 -61065291641112 -61065291652799 -61065291664308 -61065291676078 -61065291687746 -61065291701333 -61065291714075 -61065291726887 -61065291739578 -61065291751813 -61065291784552 -61065291798021 -61065291811488 -61065291824465 -61065291837714 -61065291850989 -61065291864427 -61065291877705 -61065291890643 -61065291903580 -61065291917042 -61065291930607 -61065291944186 -61065291959844 -61065291973140 -61065291986549 -61065291999965 -61065292029456 -61065292042897 -61065292056096 -61065292069402 -61065292082688 -61065292095591 -61065292108852 -61065292122208 -61065292135594 -61065292148886 -61065292162029 -61065292174995 -61065292188256 -61065292201544 -61065292215055 -61065292228284 -61065292241448 -61065292254581 -61065292267971 -61065292281328 -61065292294536 -61065292308224 -61065292321655 -61065292335169 -61065292348456 -61065292361788 -61065292374940 -61065292387909 -61065292401213 -61065292414769 -61065292430659 -61065292443675 -61065292456886 -61065292470275 -61065292483420 -61065292497269 -61065292510689 -61065292523913 -61065292537096 -61065292550259 -61065292563444 -61065292576670 -61065292589892 -61065292603327 -61065292616797 -61065292630037 -61065292643037 -61065292656405 -61065292669705 -61065292683020 -61065292710735 -61065292723052 -61065292735405 -61065292747855 -61065292760191 -61065292772542 -61065292784723 -61065292796992 -61065292809579 -61065292822078 -61065292834367 -61065292846567 -61065292859216 -61065292871442 -61065292883850 -61065292896283 -61065292908513 -61065292920782 -61065292933071 -61065292945417 -61065292958392 -61065292974887 -61065292988273 -61065293001405 -61065293014569 -61065293028358 -61065293041655 -61065293054980 -61065293068150 -61065293081201 -61065293094056 -61065293107566 -61065293120984 -61065293134250 -61065293147392 -61065293160842 -61065293173720 -61065293186528 -61065293199937 -61065293213286 -61065293226409 -61065293239223 -61065293252007 -61065293265084 -61065293278501 -61065293291686 -61065293306023 -61065293334637 -61065293347174 -61065293359054 -61065293371119 -61065293383247 -61065293396056 -61065293408472 -61065293420752 -61065293433049 -61065293445137 -61065293457605 -61065293470075 -61065293498144 -61065293510871 -61065293523846 -61065293537704 -61065293550837 -61065293564293 -61065293577054 -61065293590007 -61065293603272 -61065293616457 -61065293629546 -61065293642373 -61065293655173 -61065293668396 -61065293681811 -61065293695038 -61065293708000 -61065293720806 -61065293734215 -61065293747473 -61065293760788 -61065293788851 -61065293801047 -61065293813687 -61065293826009 -61065293838217 -61065293850714 -61065293862667 -61065293874755 -61065293887311 -61065293899791 -61065293912203 -61065293924643 -61065293936601 -61065293948649 -61065293961057 -61065293973460 -61065293985789 -61065293997739 -61065294010303 -61065294022630 -61065294035143 -61065294047165 -61065294059052 -61065294071026 -61065294083693 -61065294096034 -61065294128679 -61065294142181 -61065294155454 -61065294171526 -61065294184846 -61065294213018 -61065294225122 -61065294237526 -61065294249943 -61065294262342 -61065294274779 -61065294287092 -61065294300048 -61065294312042 -61065294324616 -61065294336916 -61065294349152 -61065294361239 -61065294373314 -61065294385650 -61065294398079 -61065294410552 -61065294423480 -61065294435474 -61065294448254 -61065294461086 -61065294489646 -61065294502570 -61065294515618 -61065294528779 -61065294542027 -61065294555121 -61065294568007 -61065294580993 -61065294594343 -61065294678255 -61065294690922 -61065294703383 -61065294715655 -61065294727937 -61065294740185 -61065294752513 -61065294764930 -61065294777070 -61065294789268 -61065294801480 -61065294813667 -61065294826023 -61065294838539 -61065294850783 -61065294862980 -61065294890340 -61065294901608 -61065294912963 -61065294924429 -61065294935923 -61065294947226 -61065294958744 -61065294970149 -61065294982023 -61065294994381 -61065295006757 -61065295021510 -61065295034319 -61065295046480 -61065295058871 -61065295071390 -61065295083755 -61065295095968 -61065295108077 -61065295120400 -61065295132764 -61065295145097 -61065295157284 -61065295169333 -61065295181757 -61065295194662 -61065295207070 -61065295219113 -61065295253427 -61065295267245 -61065295280488 -61065295293650 -61065295306761 -61065295333922 -61065295345975 -61065295358499 -61065295370651 -61065295383192 -61065295395516 -61065295408432 -61065295420856 -61065295433201 -61065295445484 -61065295457832 -61065295470225 -61065295482499 -61065295494931 -61065295507172 -61065295519495 -61065295534047 -61065295546369 -61065295558741 -61065295570889 -61065295583327 -61065295595646 -61065295607797 -61065295620198 -61065295632701 -61065295645218 -61065295657974 -61065295690114 -61065295703444 -61065295716666 -61065295730034 -61065295743022 -61065295755949 -61065295771206 -61065295784699 -61065295799784 -61065295812735 -61065295825983 -61065295839131 -61065295852327 -61065295865575 -61065295878330 -61065295891681 -61065295905084 -61065295917903 -61065295931175 -61065295944197 -61065295957384 -61065295970605 -61065295983731 -61065295996770 -61065296026172 -61065296039806 -61065296053120 -61065296081328 -61065296093976 -61065296106458 -61065296118931 -61065296131357 -61065296143813 -61065296156132 -61065296168177 -61065296180612 -61065296193043 -61065296205473 -61065296217598 -61065296229785 -61065296242359 -61065296257220 -61065296269681 -61065296282203 -61065296294265 -61065296306372 -61065296318790 -61065296348229 -61065296361311 -61065296374873 -61065296388401 -61065296416497 -61065296428625 -61065296441112 -61065296453559 -61065296466146 -61065296478595 -61065296490866 -61065296505142 -61065296517366 -61065296529807 -61065296544323 -61065296557484 -61065296569610 -61065296582289 -61065296594717 -61065296610619 -61065296623443 -61065296636857 -61065296649007 -61065296661435 -61065296675878 -61065296688151 -61065296700232 -61065296712281 -61065296724793 -61065296737274 -61065296749625 -61065296762204 -61065296774446 -61065296787002 -61065296815099 -61065296828071 -61065296841080 -61065296854317 -61065296867748 -61065296883204 -61065296896551 -61065296909538 -61065296922468 -61065296935851 -61065296949265 -61065296962599 -61065296975476 -61065296988494 -61065297001521 -61065297014724 -61065297027875 -61065297040950 -61065297054294 -61065297069659 -61065297082843 -61065297096031 -61065297109432 -61065297122754 -61065297135995 -61065297149247 -61065297163429 -61065297176906 -61065297190286 -61065297203658 -61065297217104 -61065297230971 -61065297244287 -61065297257516 -61065297270799 -61065297284226 -61065297297365 -61065297311121 -61065297324366 -61065297337781 -61065297351245 -61065297364394 -61065297377676 -61065297390960 -61065297404468 -61065297418018 -61065297431476 -61065297444627 -61065297457866 -61065297471141 -61065297484394 -61065297497722 -61065297512058 -61065297525531 -61065297538597 -61065297551784 -61065297565195 -61065297578637 -61065297594063 -61065297607462 -61065297621034 -61065297635205 -61065297648472 -61065297661944 -61065297676880 -61065297690330 -61065297703664 -61065297717073 -61065297730482 -61065297744119 -61065297759541 -61065297773122 -61065297786487 -61065297800494 -61065297813995 -61065297827357 -61065297840746 -61065297854011 -61065297867433 -61065297881172 -61065297894574 -61065297908080 -61065297921750 -61065297935161 -61065297948808 -61065297962006 -61065297975503 -61065297988939 -61065298003003 -61065298016674 -61065298029880 -61065298043214 -61065298056466 -61065298069995 -61065298083396 -61065298096740 -61065298110052 -61065298123411 -61065298136635 -61065298150104 -61065298163510 -61065298176744 -61065298190313 -61065298203758 -61065298216788 -61065298232642 -61065298246211 -61065298259666 -61065298272769 -61065298285936 -61065298299222 -61065298312480 -61065298326061 -61065298339525 -61065298352936 -61065298366419 -61065298380002 -61065298393839 -61065298409567 -61065298423042 -61065298436339 -61065298451321 -61065298468325 -61065298480876 -61065298495689 -61065298508231 -61065298520547 -61065298532883 -61065298545241 -61065298557481 -61065298569856 -61065298582447 -61065298594777 -61065298607012 -61065298619475 -61065298631860 -61065298644392 -61065298656733 -61065298668928 -61065298680989 -61065298693243 -61065298705623 -61065298720230 -61065298732609 -61065298745095 -61065298757492 -61065298769780 -61065298782153 -61065298794881 -61065298807192 -61065298819548 -61065298831976 -61065298844377 -61065298856594 -61065298868861 -61065298881211 -61065298893462 -61065298905851 -61065298918243 -61065298930680 -61065298945425 -61065298957964 -61065298970311 -61065298982664 -61065298994843 -61065299007275 -61065299019553 -61065299031969 -61065299044254 -61065299056739 -61065299069322 -61065299081668 -61065299094030 -61065299106217 -61065299119773 -61065299132720 -61065299146023 -61065299159728 -61065299172659 -61065299185528 -61065299198512 -61065299212228 -61065299225361 -61065299239507 -61065299252479 -61065299265994 -61065299279387 -61065299293137 -61065299306442 -61065299319437 -61065299332992 -61065299346018 -61065299359489 -61065299372871 -61065299385856 -61065299399393 -61065299412386 -61065299425540 -61065299438996 -61065299452006 -61065299465546 -61065299478545 -61065299492003 -61065299505089 -61065299518612 -61065299531531 -61065299544460 -61065299557976 -61065299570848 -61065299584114 -61065299596945 -61065299611049 -61065299623746 -61065299637195 -61065299651410 -61065299664552 -61065299678093 -61065299691118 -61065299704446 -61065299717457 -61065299730830 -61065299743868 -61065299757245 -61065299770768 -61065299784256 -61065299797192 -61065299810424 -61065299824592 -61065299837690 diff --git a/src/java/protocol/timestampByAlertId-1.txt b/src/java/protocol/timestampByAlertId-1.txt deleted file mode 100644 index 579ec90..0000000 --- a/src/java/protocol/timestampByAlertId-1.txt +++ /dev/null @@ -1,9999 +0,0 @@ -61064425286332 -61064425901989 -61064426744902 -61064427556671 -61064428080635 -61064428549547 -61064428686354 -61064428888311 -61064429382745 -61064429945807 -61064430398098 -61064430927174 -61064431691877 -61064432330777 -61064432779273 -61064432944439 -61064433370773 -61064433805549 -61064434843269 -61064435567614 -61064436523771 -61064437199432 -61064437654619 -61064438106561 -61064438675676 -61064439589036 -61064440326890 -61064440891074 -61064441010539 -61064441115549 -61064441575320 -61064442057839 -61064442541795 -61064443121722 -61064443580054 -61064444083789 -61064444249897 -61064444803254 -61064445516638 -61064445962682 -61064446114893 -61064446579494 -61064446750259 -61064447423213 -61064448317536 -61064448781182 -61064449203985 -61064449327633 -61064449435507 -61064450332659 -61064450778531 -61064450897443 -61064451583875 -61064452116663 -61064452290572 -61064452801669 -61064453498344 -61064453936594 -61064454368943 -61064455122454 -61064455843057 -61064455994009 -61064456150633 -61064456270637 -61064456763556 -61064457318056 -61064457901097 -61064458356588 -61064459131810 -61064460078037 -61064460589798 -61064461378561 -61064462212600 -61064463238476 -61064464377105 -61064465034406 -61064465736076 -61064466706796 -61064467249416 -61064467683733 -61064468427911 -61064468533286 -61064469123088 -61064469582943 -61064470715552 -61064470869369 -61064471491454 -61064471637420 -61064471779652 -61064472209191 -61064472846501 -61064472972551 -61064473373440 -61064473470399 -61064473567401 -61064473656754 -61064474191163 -61064474647327 -61064475126044 -61064475698240 -61064475835887 -61064476481385 -61064476925531 -61064477057300 -61064477190568 -61064477614882 -61064478145642 -61064478595681 -61064479222026 -61064479699708 -61064479849677 -61064480049718 -61064480778660 -61064481271638 -61064481966326 -61064482710267 -61064483157617 -61064483523275 -61064484152116 -61064484249246 -61064484661723 -61064484754726 -61064484845210 -61064485245489 -61064485622424 -61064486064654 -61064486427596 -61064486756674 -61064487316783 -61064487928329 -61064488048795 -61064488146244 -61064488855618 -61064489233585 -61064489615329 -61064490022721 -61064490428083 -61064490731372 -61064490813398 -61064490886498 -61064491203996 -61064491498390 -61064491933995 -61064492290683 -61064492438696 -61064492523386 -61064492863364 -61064493160419 -61064493238238 -61064493307227 -61064493780447 -61064494291253 -61064494924946 -61064495782080 -61064496525496 -61064496853676 -61064496955549 -61064497466634 -61064497900027 -61064498355929 -61064498838750 -61064498929738 -61064499212330 -61064499300775 -61064499738190 -61064500276643 -61064500782404 -61064501318910 -61064501822586 -61064502154736 -61064502892670 -61064502956833 -61064503331931 -61064503738433 -61064504206057 -61064504584769 -61064504660233 -61064504724243 -61064505119206 -61064505197647 -61064505452111 -61064505804033 -61064506041214 -61064506459089 -61064506532992 -61064506926442 -61064507060492 -61064507131084 -61064507355793 -61064507425929 -61064507860532 -61064507923883 -61064508242052 -61064508312418 -61064508404581 -61064508701702 -61064508938855 -61064509012884 -61064509083565 -61064509309415 -61064509529487 -61064509599295 -61064509666687 -61064509891287 -61064510137521 -61064510532723 -61064510841312 -61064511182618 -61064511247416 -61064511432044 -61064511508198 -61064511731961 -61064511797494 -61064511866240 -61064512085858 -61064512307264 -61064512363797 -61064512407837 -61064512794389 -61064512842287 -61064513089889 -61064513140760 -61064513349505 -61064513398429 -61064513718057 -61064513948875 -61064514270182 -61064514447888 -61064514491869 -61064514540156 -61064514881519 -61064514953016 -61064515686311 -61064516069932 -61064516142310 -61064516557291 -61064516612069 -61064516677138 -61064516781607 -61064516858809 -61064517265398 -61064517547959 -61064517755043 -61064518065307 -61064518122156 -61064518514972 -61064518819406 -61064518869548 -61064519188225 -61064519875260 -61064520171335 -61064520465180 -61064520667708 -61064520886299 -61064520958701 -61064521152117 -61064521329458 -61064521509262 -61064521724712 -61064521942975 -61064522286965 -61064522566259 -61064522791974 -61064522856271 -61064523238627 -61064523308112 -61064523523448 -61064523735483 -61064524132628 -61064524359123 -61064524569030 -61064524779837 -61064524940549 -61064525082751 -61064525139714 -61064525265887 -61064525397245 -61064525527060 -61064525656242 -61064525710133 -61064525838898 -61064525977987 -61064526172488 -61064526308507 -61064526429740 -61064526480401 -61064526593331 -61064526738455 -61064526859894 -61064526931919 -61064527039731 -61064527095353 -61064527215228 -61064527373644 -61064527476851 -61064527585742 -61064527695778 -61064527824187 -61064527942320 -61064528101990 -61064528222317 -61064528346963 -61064528436756 -61064528614535 -61064528736555 -61064528921448 -61064529033575 -61064529196531 -61064529312811 -61064529429634 -61064529488740 -61064529658636 -61064529775886 -61064529831228 -61064529969311 -61064530023338 -61064530076731 -61064530196512 -61064530242351 -61064530538085 -61064530649460 -61064530697089 -61064613180320 -61064613210373 -61064613396681 -61064613523554 -61064613645249 -61064613707327 -61064613830232 -61064613948513 -61064613994616 -61064614018938 -61064614124524 -61064614150542 -61064614172899 -61064614195135 -61064614311633 -61064614330855 -61064614357863 -61064614475840 -61064614502472 -61064614551992 -61064614594143 -61064614674320 -61064614701464 -61064614762880 -61064614788055 -61064614892428 -61064614916238 -61064614977422 -61064615047886 -61064615072569 -61064615257603 -61064615332232 -61064615350016 -61064615368701 -61064615382385 -61064615443828 -61064615522809 -61064615542500 -61064615570274 -61064615593141 -61064615736314 -61064615776907 -61064615804215 -61064615872900 -61064615946331 -61064616048819 -61064616194019 -61064616212683 -61064616237031 -61064616258871 -61064616276682 -61064616453330 -61064616474861 -61064616493762 -61064616519733 -61064616542704 -61064616703548 -61064616869927 -61064616889451 -61064616912659 -61064617004248 -61064617023121 -61064617043641 -61064617069020 -61064617086364 -61064617145007 -61064617163682 -61064617186796 -61064617211099 -61064617231531 -61064617395159 -61064617419170 -61064617441518 -61064617467954 -61064617485340 -61064617555548 -61064617574179 -61064617598662 -61064617701613 -61064617725417 -61064617897503 -61064617915561 -61064617948928 -61064618091213 -61064618109975 -61064618128561 -61064618296103 -61064618313647 -61064618334236 -61064618359325 -61064618448480 -61064618469225 -61064618640361 -61064618658392 -61064618683881 -61064618845964 -61064618863866 -61064618889239 -61064619049206 -61064619066533 -61064619092390 -61064619114182 -61064619127991 -61064619262009 -61064619281018 -61064619307028 -61064619375416 -61064619539165 -61064619563984 -61064619654810 -61064619672903 -61064619693215 -61064619859580 -61064619878268 -61064619899891 -61064619927602 -61064620110605 -61064620293269 -61064620313149 -61064620329155 -61064620342752 -61064620372477 -61064620391120 -61064620406795 -61064620434932 -61064620532157 -61064620550586 -61064620576175 -61064620719172 -61064620738091 -61064620755572 -61064620784422 -61064620799205 -61064620870491 -61064620887710 -61064620910686 -61064620933056 -61064621068183 -61064621086587 -61064621104628 -61064621131913 -61064621149205 -61064621360633 -61064621411375 -61064621434719 -61064621577333 -61064621601915 -61064621624983 -61064621736101 -61064621804980 -61064621835334 -61064621859359 -61064621881384 -61064621946616 -61064621974817 -61064621998525 -61064622022479 -61064622160663 -61064622184634 -61064622317668 -61064622335790 -61064622358760 -61064622389075 -61064622552507 -61064622594093 -61064622750173 -61064622774604 -61064622795248 -61064622962035 -61064622979388 -61064623139801 -61064623160918 -61064623185402 -61064623202519 -61064623216021 -61064623386110 -61064623404121 -61064623425880 -61064623440071 -61064623596263 -61064623618991 -61064623641190 -61064623716216 -61064623739196 -61064623848522 -61064623990548 -61064624035564 -61064624127227 -61064624152772 -61064624231485 -61064624257317 -61064624348814 -61064624487652 -61064624571952 -61064624722370 -61064624819416 -61064624959382 -61064624976955 -61064625105848 -61064625127234 -61064625235962 -61064625253025 -61064625456385 -61064625549781 -61064625573367 -61064625599701 -61064625773872 -61064625792372 -61064625807479 -61064625980075 -61064626000485 -61064626014410 -61064626167620 -61064626307480 -61064626330038 -61064626348512 -61064626383713 -61064626517257 -61064626543866 -61064626571035 -61064626783479 -61064626805360 -61064626822393 -61064626838190 -61064626990983 -61064627012152 -61064627029650 -61064627046517 -61064627203321 -61064627218761 -61064627511194 -61064627529692 -61064627545064 -61064627562117 -61064627578535 -61064627592039 -61064627747400 -61064627944281 -61064627961911 -61064627978163 -61064627998073 -61064628038683 -61064628195364 -61064628213012 -61064628230406 -61064628244037 -61064628403898 -61064628424705 -61064628442166 -61064628460320 -61064628474318 -61064628622693 -61064628643822 -61064628663846 -61064628679408 -61064628861985 -61064629032815 -61064629048301 -61064629060844 -61064629131724 -61064629146367 -61064629156453 -61064629169653 -61064629186670 -61064629197745 -61064629348763 -61064629363398 -61064629374225 -61064629388996 -61064629402558 -61064629412987 -61064629425931 -61064629573970 -61064629590710 -61064629607909 -61064629620738 -61064629787611 -61064629800188 -61064629814369 -61064629827971 -61064629838291 -61064629852272 -61064629862701 -61064629977118 -61064629988558 -61064629999118 -61064630009905 -61064630020505 -61064630038521 -61064630051874 -61064630062824 -61064630076652 -61064630090342 -61064630100717 -61064630113825 -61064630286175 -61064630306032 -61064630328833 -61064630487778 -61064630505046 -61064630525906 -61064630625486 -61064630652471 -61064630682546 -61064630698457 -61064630714457 -61064630854445 -61064630882608 -61064631023127 -61064631044008 -61064631065348 -61064631235517 -61064631252311 -61064631369495 -61064631388343 -61064631414647 -61064631514182 -61064631539542 -61064631614849 -61064631761797 -61064631780169 -61064631799007 -61064631825321 -61064631976585 -61064631999027 -61064632040603 -61064632182140 -61064632200587 -61064632226189 -61064632388743 -61064632410530 -61064632574057 -61064632601469 -61064632708015 -61064632727502 -61064632756889 -61064632774915 -61064632938225 -61064632965311 -61064632979181 -61064633101165 -61064633118845 -61064633142400 -61064633350221 -61064633376884 -61064633402360 -61064633419330 -61064633437333 -61064633597411 -61064633615773 -61064633632550 -61064633656978 -61064633752181 -61064633775917 -61064633886941 -61064633907428 -61064633933670 -61064633948253 -61064634089541 -61064634110956 -61064634139523 -61064634156691 -61064634176409 -61064634203378 -61064634217647 -61064634282283 -61064634299686 -61064634320233 -61064634418901 -61064634490117 -61064634505816 -61064634808214 -61064634952282 -61064635022832 -61064635149657 -61064635482718 -61064635689158 -61064635979751 -61064636117171 -61064636443622 -61064636462044 -61064636481214 -61064636507675 -61064636526015 -61064636547844 -61064636839799 -61064636858642 -61064636881804 -61064636904956 -61064636920448 -61064636939284 -61064636962886 -61064637113341 -61064637132127 -61064637158906 -61064637181070 -61064637203020 -61064637378525 -61064637398462 -61064637424159 -61064637725137 -61064637744965 -61064637932077 -61064637981980 -61064638011338 -61064638258433 -61064638290319 -61064638492110 -61064638531481 -61064638564892 -61064638778255 -61064639039270 -61064639070642 -61064639234528 -61064639395736 -61064639420380 -61064639578346 -61064639604289 -61064639739878 -61064639764503 -61064640030456 -61064640075489 -61064640113572 -61064640275275 -61064640313610 -61064640347735 -61064640447782 -61064640485679 -61064640518687 -61064640549410 -61064640736865 -61064640772381 -61064640804057 -61064641032299 -61064641300587 -61064641334852 -61064641573518 -61064641619227 -61064641654833 -61064641758791 -61064641926111 -61064642189322 -61064642224957 -61064642244505 -61064642495766 -61064642518014 -61064642535164 -61064642727682 -61064642985712 -61064643219648 -61064643239592 -61064643501451 -61064643520790 -61064643537781 -61064643831535 -61064644076212 -61064644094029 -61064644121804 -61064644148580 -61064644392598 -61064644411126 -61064644427730 -61064644447197 -61064644649404 -61064644679269 -61064644696166 -61064644880641 -61064644898363 -61064645090735 -61064645108851 -61064645310583 -61064645325822 -61064645340375 -61064645356768 -61064645371611 -61064645563370 -61064645724653 -61064645740209 -61064645751453 -61064645773470 -61064645980509 -61064645998881 -61064646011497 -61064646197107 -61064646214052 -61064646228861 -61064646239930 -61064646431950 -61064646447126 -61064646458477 -61064646472628 -61064646489906 -61064646500814 -61064646669479 -61064646696379 -61064646725883 -61064646742890 -61064646767337 -61064646784711 -61064647201988 -61064647226588 -61064647252699 -61064647531049 -61064647549143 -61064647575044 -61064647791771 -61064647815372 -61064648072533 -61064648303161 -61064648321754 -61064648341849 -61064648366905 -61064648493124 -61064648512283 -61064648535271 -61064648549514 -61064648692359 -61064648712753 -61064648727488 -61064648908916 -61064648924153 -61064648942025 -61064648961153 -61064649210170 -61064649225123 -61064649235928 -61064649250477 -61064649264269 -61064649274892 -61064649286920 -61064649576048 -61064649777162 -61064649795248 -61064649814201 -61064649838876 -61064649853058 -61064649866304 -61064649885068 -61064649921967 -61064649936662 -61064650089957 -61064650230324 -61064650248941 -61064650265360 -61064650290772 -61064650311281 -61064650418179 -61064650451679 -61064650598266 -61064650750410 -61064650774741 -61064650866000 -61064651065729 -61064651100741 -61064651129215 -61064651148495 -61064651164146 -61064651188227 -61064651211407 -61064651377094 -61064651410858 -61064651436956 -61064651633283 -61064651667953 -61064651700489 -61064651715511 -61064651825174 -61064651849144 -61064651866657 -61064651906875 -61064651924631 -61064652058714 -61064652081052 -61064652172943 -61064652190696 -61064652207264 -61064652295501 -61064652535180 -61064652562189 -61064652591868 -61064652631392 -61064652830798 -61064652966217 -61064652984799 -61064653021918 -61064653043112 -61064653240963 -61064653271329 -61064653293015 -61064653474407 -61064653495189 -61064653685890 -61064653701148 -61064653717231 -61064653728508 -61064653907915 -61064653925736 -61064653940315 -61064653954502 -61064654165573 -61064654181733 -61064654196380 -61064654210207 -61064654226691 -61064654469763 -61064654485807 -61064654500469 -61064654514197 -61064654727702 -61064654881826 -61064654900377 -61064654915352 -61064654929752 -61064654943722 -61064654954449 -61064655132673 -61064655148259 -61064655162805 -61064655179579 -61064655193066 -61064655475081 -61064655498917 -61064655693499 -61064655709481 -61064655726475 -61064655999282 -61064656251668 -61064656391385 -61064656407135 -61064656423260 -61064656448518 -61064656465485 -61064656711473 -61064656739383 -61064656755185 -61064656773063 -61064656887927 -61064656903977 -61064656918877 -61064656933227 -61064657104799 -61064657354092 -61064657487049 -61064657548905 -61064657565408 -61064657591064 -61064657611534 -61064657695943 -61064657711430 -61064657726636 -61064657743139 -61064657794152 -61064657809388 -61064657823236 -61064657837928 -61064657856540 -61064657908656 -61064657941297 -61064657961838 -61064658045540 -61064658060966 -61064658082984 -61064658097683 -61064658244283 -61064658257250 -61064658310789 -61064658391990 -61064658407629 -61064658422507 -61064658524472 -61064658552296 -61064658603059 -61064658618592 -61064658633092 -61064658687231 -61064658704384 -61064658727647 -61064658742299 -61064658828214 -61064658843681 -61064658858285 -61064658872760 -61064658957853 -61064658973418 -61064658992025 -61064659052735 -61064659068931 -61064659162124 -61064659179330 -61064659194119 -61064659205583 -61064659264872 -61064659280074 -61064659294356 -61064659308493 -61064659319623 -61064659371426 -61064659388805 -61064659402991 -61064659483718 -61064659499987 -61064659514372 -61064659529326 -61064659657268 -61064659678682 -61064659765433 -61064659787083 -61064659828465 -61064659954524 -61064659976378 -61064659993305 -61064660035897 -61064660110956 -61064660161102 -61064660176899 -61064660191899 -61064660275620 -61064660291193 -61064660308474 -61064660334644 -61064660443318 -61064660460358 -61064660482834 -61064660497958 -61064660509914 -61064660609303 -61064660625503 -61064660640364 -61064660654540 -61064660669264 -61064660691397 -61064660755139 -61064660770249 -61064682464303 -61064682492897 -61064682522522 -61064682661298 -61064682776974 -61064682811609 -61064682830104 -61064682854474 -61064683027297 -61064683279018 -61064683404543 -61064683635343 -61064683771988 -61064683926327 -61064684052280 -61064684268332 -61064684441026 -61064684721213 -61064684753457 -61064684942115 -61064684973342 -61064685004879 -61064685215622 -61064685251782 -61064685382825 -61064685517556 -61064685698180 -61064685730973 -61064685760620 -61064685888738 -61064685922089 -61064685953015 -61064686169262 -61064686201279 -61064686437907 -61064686466667 -61064686560774 -61064686733473 -61064686920420 -61064687122483 -61064687266304 -61064687443707 -61064687549133 -61064687760531 -61064687964833 -61064687983692 -61064688032572 -61064688051802 -61064688065791 -61064688295802 -61064688324645 -61064688577856 -61064688759702 -61064688782630 -61064688814255 -61064688834110 -61064688852145 -61064689099628 -61064689230381 -61064689263599 -61064689313569 -61064689446341 -61064689483243 -61064689516886 -61064689559117 -61064689647960 -61064689667852 -61064689771548 -61064689962794 -61064690278765 -61064690303402 -61064690320771 -61064690502926 -61064690521377 -61064690547297 -61064690665910 -61064690800886 -61064690827464 -61064690849645 -61064690873958 -61064691071394 -61064691090883 -61064691208611 -61064691230424 -61064691343159 -61064691364424 -61064691504598 -61064691782933 -61064691808872 -61064691828516 -61064691856746 -61064691880753 -61064692487112 -61064692517673 -61064692709756 -61064693098505 -61064693404418 -61064693661839 -61064693943559 -61064694141174 -61064694431714 -61064694474620 -61064694510592 -61064694699436 -61064694738984 -61064694770775 -61064694908017 -61064694934012 -61064695089647 -61064695114731 -61064695301069 -61064695602009 -61064695788738 -61064695972613 -61064695997485 -61064696039059 -61064696055146 -61064696085978 -61064696104548 -61064696423032 -61064696457807 -61064696482476 -61064696657476 -61064696851037 -61064696870539 -61064697130917 -61064697389727 -61064697594131 -61064697619972 -61064697847869 -61064697885403 -61064697920426 -61064698108249 -61064698134079 -61064698164204 -61064698181568 -61064698348722 -61064698462970 -61064698574621 -61064698685484 -61064698801510 -61064698913666 -61064699106676 -61064699133346 -61064699300451 -61064699511226 -61064699654026 -61064699678890 -61064699703254 -61064699732944 -61064700034079 -61064700111204 -61064700143527 -61064700326720 -61064700353981 -61064700498250 -61064700643626 -61064700777309 -61064700909776 -61064701081468 -61064701099515 -61064701214492 -61064701333428 -61064701360471 -61064701497747 -61064701518151 -61064701547088 -61064701566341 -61064701765228 -61064701802808 -61064701835302 -61064701949728 -61064701985205 -61064702021277 -61064702458031 -61064702499288 -61064702539503 -61064702573172 -61064702930013 -61064703129272 -61064703331031 -61064703362396 -61064703492414 -61064703657450 -61064703682720 -61064703697620 -61064703813571 -61064703927270 -61064704170687 -61064704193778 -61064704218532 -61064704239157 -61064704260361 -61064704281381 -61064704298129 -61064704596213 -61064704614823 -61064704634929 -61064704778901 -61064704802846 -61064704827109 -61064704844118 -61064704858453 -61064705048406 -61064705076291 -61064705241101 -61064705263669 -61064705287793 -61064705301560 -61064705526961 -61064705552545 -61064705573916 -61064705598256 -61064705710543 -61064705733107 -61064705759923 -61064705783159 -61064705811583 -61064705965024 -61064705993931 -61064706023121 -61064706317583 -61064706479332 -61064706679563 -61064706698892 -61064706837691 -61064707022960 -61064707037723 -61064707135509 -61064707155434 -61064707172486 -61064707186512 -61064707335454 -61064707361942 -61064707531321 -61064707549177 -61064707566285 -61064707582742 -61064707599619 -61064707787994 -61064707806662 -61064707823437 -61064707843200 -61064707973249 -61064707997726 -61064708243403 -61064708271694 -61064708294319 -61064708316106 -61064708350577 -61064708373916 -61064708471011 -61064708493953 -61064708515828 -61064708537908 -61064708559967 -61064708705271 -61064708884142 -61064708914274 -61064709141264 -61064709158429 -61064709173676 -61064709190475 -61064709376674 -61064709406313 -61064709425118 -61064709444289 -61064709459030 -61064709634225 -61064709653145 -61064709787351 -61064709807980 -61064709827032 -61064709845555 -61064709865118 -61064709888240 -61064709982897 -61064710008269 -61064710026672 -61064710044672 -61064710076854 -61064710099478 -61064710284685 -61064710310856 -61064710328771 -61064710346882 -61064710361758 -61064710470969 -61064710489680 -61064710507649 -61064710525552 -61064710543614 -61064710558108 -61064710692459 -61064710824452 -61064711064576 -61064711089540 -61064711274253 -61064711447352 -61064711543299 -61064711640368 -61064711833702 -61064711956009 -61064712075792 -61064712311389 -61064712600206 -61064712620959 -61064712648565 -61064712672694 -61064712907249 -61064713268755 -61064713307305 -61064713336359 -61064713366298 -61064713662440 -61064713856826 -61064714000624 -61064714039485 -61064714068658 -61064714297338 -61064714319778 -61064714566576 -61064714832152 -61064714853453 -61064714877493 -61064715028383 -61064715056616 -61064715075856 -61064715251890 -61064715273905 -61064715293321 -61064715313089 -61064715333890 -61064715354905 -61064715375784 -61064715395910 -61064715419387 -61064715439143 -61064715457822 -61064715478030 -61064715497223 -61064715540500 -61064715559113 -61064715578335 -61064715596650 -61064715623418 -61064715644690 -61064715664591 -61064715693388 -61064715712009 -61064715729934 -61064715754633 -61064715779467 -61064715807859 -61064715829685 -61064716149482 -61064716422198 -61064716631867 -61064716668700 -61064716873263 -61064716907849 -61064716934850 -61064716966276 -61064717120260 -61064717406393 -61064717436290 -61064717545037 -61064717574496 -61064717734071 -61064717761091 -61064717937375 -61064717963673 -61064718192598 -61064718442986 -61064718655614 -61064718791351 -61064719019112 -61064719150867 -61064719393827 -61064719422554 -61064719455892 -61064719471556 -61064719608453 -61064719777563 -61064719800905 -61064719819524 -61064719837399 -61064720072620 -61064720091544 -61064720122686 -61064720147890 -61064720163838 -61064720338696 -61064720360819 -61064720386880 -61064720641218 -61064720671611 -61064720697326 -61064720952123 -61064720971790 -61064721079091 -61064721263981 -61064721454227 -61064721482957 -61064721502388 -61064721670791 -61064721695951 -61064721722413 -61064721751800 -61064721778813 -61064721949121 -61064721979011 -61064722007539 -61064722230060 -61064722397406 -61064722617890 -61064722637380 -61064722795071 -61064722909315 -61064722944171 -61064723106356 -61064723234004 -61064723255030 -61064723291632 -61064723408500 -61064723438073 -61064723456965 -61064723475605 -61064723499593 -61064723517282 -61064723532086 -61064723553925 -61064723576179 -61064723590449 -61064723609650 -61064723728516 -61064723758925 -61064723786650 -61064723913993 -61064724089595 -61064724216291 -61064724311039 -61064724343967 -61064724361211 -61064724466551 -61064724486175 -61064724504328 -61064724533597 -61064724550566 -61064724645762 -61064724739877 -61064724767874 -61064724868740 -61064724890611 -61064724918627 -61064724940961 -61064724954587 -61064725102041 -61064725135579 -61064725276385 -61064725303596 -61064725320626 -61064725348178 -61064725367990 -61064725555643 -61064725582245 -61064725809047 -61064726058464 -61064726157138 -61064726183160 -61064726353074 -61064726387607 -61064726588746 -61064726622652 -61064726652791 -61064726785934 -61064726837815 -61064726859346 -61064726993820 -61064727171328 -61064727191129 -61064727223087 -61064727261760 -61064727535717 -61064727560372 -61064727832254 -61064727858484 -61064727889387 -61064728158267 -61064728193397 -61064728215122 -61064728540299 -61064728562986 -61064728592304 -61064728611184 -61064728630243 -61064728783626 -61064729003985 -61064729038402 -61064729177771 -61064729213620 -61064729232822 -61064729253245 -61064729369967 -61064729402767 -61064729546748 -61064729584448 -61064729740376 -61064729767871 -61064729793276 -61064729817754 -61064729884707 -61064729930744 -61064729962864 -61064729987055 -61064730011147 -61064730155427 -61064730180416 -61064730204101 -61064730228650 -61064730253029 -61064730436313 -61064730468892 -61064730675206 -61064730818048 -61064730974192 -61064731132747 -61064731151963 -61064731241647 -61064731261086 -61064731279468 -61064731300062 -61064731381720 -61064731400377 -61064731419044 -61064731436544 -61064731451564 -61064731558008 -61064731581288 -61064731599788 -61064731673307 -61064731707760 -61064731860746 -61064731900643 -61064731926212 -61064731956509 -61064731980020 -61064732177337 -61064732206878 -61064732225313 -61064732251374 -61064732273369 -61064732290534 -61064732387467 -61064732423450 -61064732453803 -61064732617242 -61064732741727 -61064732928661 -61064749157738 -61064749184156 -61064749316860 -61064749443738 -61064749471010 -61064749495074 -61064749519722 -61064749817255 -61064750006851 -61064750026901 -61064750044802 -61064750187392 -61064750224870 -61064750265624 -61064750421991 -61064750588641 -61064750753296 -61064750905864 -61064750934909 -61064751082545 -61064751352972 -61064751385392 -61064751589041 -61064751857428 -61064752286925 -61064752314887 -61064752345692 -61064752373289 -61064752569829 -61064752610299 -61064752641450 -61064752666831 -61064752951968 -61064752983659 -61064753029101 -61064753050719 -61064753321320 -61064753353440 -61064753372427 -61064753387925 -61064753416519 -61064753624232 -61064753846864 -61064753885492 -61064754020431 -61064754235577 -61064754418318 -61064754551148 -61064754615598 -61064754771284 -61064754815293 -61064754853591 -61064755091409 -61064755131976 -61064755167936 -61064755200847 -61064755405065 -61064755438795 -61064755727455 -61064755752172 -61064755991066 -61064756033482 -61064756151913 -61064756449121 -61064756484186 -61064756513459 -61064756747320 -61064756767637 -61064756789071 -61064756921050 -61064756949653 -61064757150162 -61064757170543 -61064757268547 -61064757295522 -61064757491085 -61064757517512 -61064757704957 -61064757808667 -61064757827349 -61064757845395 -61064757867405 -61064758060689 -61064758082391 -61064758344663 -61064758363581 -61064758381763 -61064758488180 -61064758506838 -61064758524684 -61064758559641 -61064758616525 -61064758713505 -61064758732890 -61064758750874 -61064758776889 -61064758936351 -61064758953938 -61064758970813 -61064758987418 -61064759007907 -61064759106281 -61064759123776 -61064759140799 -61064759275016 -61064759295047 -61064759322516 -61064759340027 -61064759357977 -61064759374546 -61064759516466 -61064759536459 -61064759553420 -61064759573407 -61064759797714 -61064759820311 -61064759844582 -61064759869822 -61064760124703 -61064760251342 -61064760269561 -61064760499366 -61064760524187 -61064760541517 -61064760684844 -61064760715575 -61064760733484 -61064760759212 -61064760884550 -61064760907648 -61064760924720 -61064760941739 -61064760962296 -61064760977134 -61064761074538 -61064761290781 -61064761309521 -61064761427863 -61064761450763 -61064761547367 -61064761709121 -61064761727974 -61064761752979 -61064761781479 -61064761986492 -61064762365818 -61064762396097 -61064762576493 -61064762608635 -61064762631906 -61064762655717 -61064762678610 -61064762813671 -61064762838342 -61064762863142 -61064762887503 -61064762911118 -61064763234708 -61064763272996 -61064763300689 -61064763328343 -61064763500465 -61064763533682 -61064763563991 -61064763679484 -61064763707304 -61064763813283 -61064763847552 -61064763873282 -61064763906699 -61064764362814 -61064764402076 -61064764438703 -61064764696389 -61064764834187 -61064764861856 -61064764889668 -61064765092531 -61064765226899 -61064765264823 -61064765296985 -61064765560012 -61064765626247 -61064765658596 -61064765839144 -61064765871583 -61064766061824 -61064766243490 -61064766458396 -61064766702745 -61064767043145 -61064767304437 -61064767556119 -61064767803107 -61064767827891 -61064767850985 -61064767877804 -61064768169587 -61064768370020 -61064768402280 -61064768424571 -61064768448782 -61064768682402 -61064768714066 -61064768932621 -61064768972016 -61064769004870 -61064769315952 -61064769571408 -61064769706087 -61064770031932 -61064770293021 -61064770573360 -61064770821868 -61064770854711 -61064770883519 -61064771169734 -61064771210930 -61064771242465 -61064771462507 -61064771648871 -61064771667243 -61064771697689 -61064771722835 -61064771741971 -61064771899439 -61064771921715 -61064771957669 -61064771979311 -61064772176617 -61064772384262 -61064772420038 -61064772449677 -61064772657637 -61064772693956 -61064772729351 -61064772972123 -61064773001659 -61064773117120 -61064773278359 -61064773435130 -61064773555520 -61064773746190 -61064773920623 -61064774131513 -61064774151464 -61064774402418 -61064774423708 -61064774591862 -61064774616572 -61064774636011 -61064774790918 -61064774897661 -61064775078638 -61064775267220 -61064775522170 -61064775557610 -61064775586429 -61064775836203 -61064775866469 -61064776059571 -61064776197803 -61064776235839 -61064776261269 -61064776398768 -61064776427521 -61064776591706 -61064776619721 -61064776646996 -61064776860496 -61064776889163 -61064776917011 -61064777057640 -61064777182735 -61064777316602 -61064777346818 -61064777380429 -61064777597654 -61064777622199 -61064777756533 -61064777782657 -61064777813371 -61064777835341 -61064777984044 -61064778019203 -61064778043743 -61064778264338 -61064778288714 -61064778313664 -61064778464139 -61064778663387 -61064778687833 -61064778828298 -61064778854071 -61064778875001 -61064779033079 -61064779241405 -61064779422488 -61064779561692 -61064779581776 -61064779600807 -61064779619134 -61064779637827 -61064779656611 -61064779675172 -61064779693516 -61064779712809 -61064779743972 -61064779762808 -61064779780982 -61064779804424 -61064779823546 -61064779844683 -61064779863665 -61064779882950 -61064779901453 -61064779921047 -61064779939942 -61064779961841 -61064779979874 -61064779998922 -61064780038673 -61064780057851 -61064780085141 -61064780105094 -61064780123877 -61064780141935 -61064780160442 -61064780179141 -61064780198610 -61064780217163 -61064780235967 -61064780257735 -61064780276879 -61064780295570 -61064780314314 -61064780333791 -61064780352945 -61064780374411 -61064780400995 -61064780419303 -61064780438231 -61064780456751 -61064780475534 -61064780498747 -61064780517863 -61064780537008 -61064780556163 -61064780574271 -61064780592850 -61064780612690 -61064780631418 -61064780650083 -61064780668911 -61064780687978 -61064780713745 -61064780732051 -61064780750590 -61064780769308 -61064780788241 -61064780807107 -61064780825867 -61064780844219 -61064780863561 -61064780882095 -61064780903649 -61064780922398 -61064780941994 -61064780960640 -61064780979612 -61064780998304 -61064781024614 -61064781042954 -61064781060797 -61064781083955 -61064781102539 -61064781121651 -61064781140009 -61064781158625 -61064781179482 -61064781198235 -61064781217010 -61064781236144 -61064781254267 -61064781272728 -61064781290919 -61064781309625 -61064781335406 -61064781353693 -61064781371423 -61064781392465 -61064781444692 -61064781464645 -61064781482483 -61064781500203 -61064781520155 -61064781538911 -61064781556528 -61064781575997 -61064781594584 -61064781723939 -61064781749026 -61064781955908 -61064782090803 -61064782778966 -61064782827830 -61064782861431 -61064783012303 -61064783049585 -61064783079400 -61064783250742 -61064783374699 -61064783410068 -61064783443190 -61064783617928 -61064783662272 -61064783700967 -61064783737259 -61064784105245 -61064784148172 -61064784195290 -61064784259258 -61064784498917 -61064784521239 -61064784680813 -61064784777564 -61064784910964 -61064785014950 -61064785117206 -61064785207962 -61064785230350 -61064785261805 -61064785376131 -61064785542618 -61064785646224 -61064785677770 -61064785698553 -61064785828930 -61064785934583 -61064785955725 -61064785975977 -61064786105533 -61064786210344 -61064786304063 -61064786332943 -61064786356365 -61064786482447 -61064786503514 -61064786695690 -61064786713988 -61064786733780 -61064786861505 -61064786962096 -61064787063594 -61064787164283 -61064787251565 -61064787278222 -61064787303037 -61064787417635 -61064787445600 -61064787462839 -61064787485077 -61064787603718 -61064787734188 -61064787883756 -61064787979081 -61064788094539 -61064788120089 -61064788211355 -61064788314897 -61064788435726 -61064788460166 -61064788548487 -61064788582336 -61064788601536 -61064788694178 -61064788840057 -61064788864660 -61064789018478 -61064789046587 -61064789071976 -61064789164446 -61064789292629 -61064789428007 -61064789459259 -61064789481952 -61064789573609 -61064789670868 -61064789690290 -61064789778290 -61064789876727 -61064789897242 -61064789987405 -61064790165732 -61064790191265 -61064790222627 -61064790391492 -61064790424219 -61064790442566 -61064790542244 -61064790573210 -61064790745464 -61064790769240 -61064790944608 -61064790966325 -61064791064945 -61064791202092 -61064791296428 -61064791385277 -61064791521386 -61064791552292 -61064791578451 -61064791667436 -61064791701444 -61064791796062 -61064791818580 -61064792034189 -61064792250148 -61064792268390 -61064792283317 -61064792517368 -61064792539008 -61064792733575 -61064792774124 -61064792796069 -61064793054042 -61064793072552 -61064793270669 -61064793453124 -61064793471248 -61064793498989 -61064793522409 -61064793707987 -61064793737734 -61064793877778 -61064793913766 -61064793932849 -61064794272633 -61064794299959 -61064794331965 -61064794537163 -61064794558986 -61064794587523 -61064794615576 -61064794806165 -61064794824134 -61064794852273 -61064794873392 -61064794892669 -61064795127735 -61064795147794 -61064795170987 -61064795195768 -61064795471235 -61064795498190 -61064795523144 -61064795929599 -61064795947237 -61064796202287 -61064796375759 -61064796395102 -61064796418227 -61064796449329 -61064796464756 -61064796718576 -61064796764375 -61064796802830 -61064796840551 -61064797034480 -61064797092115 -61064797165201 -61064797195855 -61064797566206 -61064797602728 -61064797639174 -61064797808387 -61064797845916 -61064797880588 -61064797910088 -61064798106918 -61064798177422 -61064798211411 -61064798245676 -61064798474234 -61064798529816 -61064798577086 -61064798607276 -61064798642570 -61064798819438 -61064798857735 -61064798895211 -61064798926225 -61064799111971 -61064799136178 -61064799153564 -61064799319913 -61064799339192 -61064799370872 -61064799393653 -61064799629064 -61064799686928 -61064799840130 -61064799978390 -61064799997227 -61064800035247 -61064800132758 -61064800266878 -61064800285375 -61064800302616 -61064800320425 -61064800338585 -61064800574281 -61064800735361 -61064800756615 -61064800882156 -61064801055393 -61064801073176 -61064801099104 -61064801120547 -61064801269977 -61064801295696 -61064801487810 -61064801638207 -61064801680041 -61064801712576 -61064801887193 -61064801927397 -61064801965664 -61064802117526 -61064802153764 -61064802346607 -61064802384264 -61064802424581 -61064802456551 -61064802620457 -61064802655475 -61064802793530 -61064802814993 -61064802846603 -61064802876888 -61064803096915 -61064803115209 -61064803141020 -61064803329650 -61064803360584 -61064803414286 -61064803436632 -61064803634604 -61064803652801 -61064803670306 -61064803687445 -61064803811240 -61064803916392 -61064803934392 -61064804059031 -61064804077021 -61064804231361 -61064804321484 -61064804477318 -61064804611763 -61064804629287 -61064804752587 -61064804774156 -61064804788784 -61064804870847 -61064804885933 -61064804968160 -61064804985053 -61064805066347 -61064805091782 -61064805205605 -61064805310529 -61064805326169 -61064805407787 -61064805424008 -61064805557547 -61064805573361 -61064805660711 -61064805676686 -61064805691336 -61064805776674 -61064805792568 -61064805806538 -61064805821100 -61064805904102 -61064805919738 -61064806004278 -61064806020249 -61064806101631 -61064806123317 -61064806141413 -61064806270601 -61064806287545 -61064806304184 -61064806390692 -61064806407494 -61064806489901 -61064806506832 -61064806628800 -61064806717837 -61064806735040 -61064806820204 -61064806836637 -61064806854550 -61064806869262 -61064806996962 -61064807015052 -61064807029254 -61064807043581 -61064807155315 -61064807170923 -61064807255099 -61064807271093 -61064807352239 -61064807379680 -61064807464056 -61064807480399 -61064807494826 -61064807514612 -61064807596323 -61064807612607 -61064807758338 -61064807774780 -61064807914149 -61064807929983 -61064808035154 -61064808059168 -61064808074283 -61064808085102 -61064808176066 -61064808382358 -61064808398853 -61064808491020 -61064808508628 -61064808595958 -61064808612826 -61064808703130 -61064808720721 -61064808736340 -61064808766694 -61064808797848 -61064808927382 -61064808940109 -61064808958136 -61064808973751 -61064808996202 -61064809128614 -61064809148020 -61064809163525 -61064809177562 -61064809192651 -61064809206817 -61064809219718 -61064809335898 -61064809357520 -61064809375243 -61064809392221 -61064809404172 -61064809488320 -61064809507140 -61064809522582 -61064809651699 -61064809667440 -61064809682579 -61064809700393 -61064809711979 -61064809876153 -61064810054189 -61064810077693 -61064810129227 -61064810143676 -61064810241507 -61064810261582 -61064810276720 -61064810293474 -61064810305204 -61064810393461 -61064810411120 -61064810426413 -61064810440345 -61064810575227 -61064810589797 -61064810604406 -61064810618643 -61064810699248 -61064810717901 -61064810733413 -61064810748143 -61064810759563 -61064810845714 -61064810863718 -61064810878323 -61064810966483 -61064810984631 -61064811155833 -61064811175378 -61064811269025 -61064811423111 -61064811452903 -61064811552711 -61064811661333 -61064811757742 -61064811951509 -61064812064403 -61064812176903 -61064812189659 -61064812214820 -61064812226284 -61064812239523 -61064812265413 -61064812290273 -61064812307925 -61064812337362 -61064812561211 -61064812586650 -61064812609554 -61064812636781 -61064812827016 -61064813011612 -61064813204983 -61064813464412 -61064813497701 -61064813626262 -61064813895272 -61064813924572 -61064814062868 -61064814305385 -61064814331050 -61064814460338 -61064814612220 -61064815057284 -61064815272369 -61064815299642 -61064815322248 -61064815349122 -61064815368025 -61064815563726 -61064815793140 -61064815916235 -61064815941618 -61064815963176 -61064815990384 -61064816169125 -61064816187675 -61064816205095 -61064816231520 -61064816249848 -61064816263054 -61064816409954 -61064816438707 -61064816713022 -61064816749357 -61064816957052 -61064817060274 -61064817089267 -61064817106025 -61064817122144 -61064817372213 -61064817401582 -61064817428999 -61064817605535 -61064817640447 -61064817657734 -61064817678336 -61064817935761 -61064817962500 -61064818146447 -61064818340550 -61064818571755 -61064818594459 -61064818608571 -61064818830459 -61064819040141 -61064819058899 -61064819288480 -61064819325342 -61064819597447 -61064819874093 -61064819903786 -61064820123286 -61064820292645 -61064820432211 -61064820645378 -61064820664947 -61064820684811 -61064820941783 -61064820977302 -61064820991842 -61064821154247 -61064821175846 -61064821195959 -61064821222039 -61064821240344 -61064821414482 -61064821438240 -61064821537467 -61064821727264 -61064821854024 -61064821889506 -61064821911834 -61064822014954 -61064822037810 -61064822136243 -61064822231480 -61064822322645 -61064822351520 -61064822373037 -61064822465984 -61064822589799 -61064822692277 -61064822724457 -61064822758846 -61064822860647 -61064822882243 -61064822984565 -61064823009280 -61064823097916 -61064823129705 -61064823152491 -61064823288240 -61064823311751 -61064823347410 -61064823566364 -61064823593880 -61064823613444 -61064823626804 -61064823811849 -61064823837892 -61064823861543 -61064824053886 -61064824072411 -61064824094226 -61064824117119 -61064824131386 -61064824279317 -61064824313528 -61064824334845 -61064824369249 -61064824397417 -61064824415509 -61064824634098 -61064824662309 -61064824683662 -61064824716283 -61064824921704 -61064825072842 -61064825099986 -61064825326172 -61064825349119 -61064825375124 -61064825598376 -61064825626528 -61064825775920 -61064825994377 -61064826041008 -61064826078815 -61064826111330 -61064826320056 -61064826381502 -61064826415171 -61064826579539 -61064826615019 -61064826647275 -61064826837375 -61064826930198 -61064826947511 -61064826964796 -61064826981502 -61064826998743 -61064827106856 -61064827128339 -61064827145339 -61064827161976 -61064827337052 -61064827355854 -61064827372766 -61064827465145 -61064827486606 -61064827503925 -61064827520771 -61064827616876 -61064827641568 -61064827655617 -61064827672794 -61064827691841 -61064827787329 -61064827806618 -61064827826168 -61064827842989 -61064827931862 -61064827960168 -61064828116631 -61064828134140 -61064828293906 -61064828314603 -61064828331520 -61064828348829 -61064828368207 -61064828381953 -61064828504569 -61064828522721 -61064828539006 -61064828555975 -61064828573198 -61064828590207 -61064828705963 -61064828953978 -61064828972476 -61064829022732 -61064829067469 -61064829260057 -61064829277643 -61064829293919 -61064829310734 -61064829327583 -61064829448829 -61064829543238 -61064829562010 -61064829578880 -61064829738941 -61064829768953 -61064829786163 -61064829803010 -61064829817906 -61064829918245 -61064830010461 -61064830027888 -61064830044820 -61064830061349 -61064830078727 -61064830200329 -61064830219695 -61064830236716 -61064830253385 -61064830270670 -61064830296448 -61064830310573 -61064830408102 -61064830427805 -61064830447159 -61064830463884 -61064830626831 -61064830776390 -61064830797190 -61064830903381 -61064830923746 -61064830940973 -61064831078868 -61064831222137 -61064831328863 -61064831442392 -61064831471263 -61064831580402 -61064831696463 -61064831819441 -61064832032701 -61064832072830 -61064832104102 -61064832226536 -61064832418477 -61064832543946 -61064832583672 -61064832613830 -61064832820519 -61064832851460 -61064832896663 -61064833097972 -61064833145942 -61064833186767 -61064833219861 -61064833422225 -61064833477918 -61064833525044 -61064833799562 -61064833918105 -61064833955712 -61064833987075 -61064834156270 -61064834345257 -61064834362918 -61064834385658 -61064834552876 -61064834653069 -61064834678440 -61064834695516 -61064834818652 -61064834955738 -61064834974524 -61064834992627 -61064835101063 -61064835267447 -61064835410786 -61064835428402 -61064835448355 -61064835466096 -61064835633175 -61064835666833 -61064835684133 -61064835780500 -61064835798844 -61064835812857 -61064835947347 -61064835964881 -61064836078338 -61064836223386 -61064836387504 -61064836513198 -61064836629621 -61064836649551 -61064836832691 -61064836959043 -61064837104433 -61064837122818 -61064837149030 -61064837171623 -61064837295320 -61064837322254 -61064837344148 -61064837466903 -61064837605143 -61064837623040 -61064837640427 -61064837803532 -61064837821372 -61064837840763 -61064837928563 -61064838057576 -61064838187753 -61064838401460 -61064838426516 -61064838444364 -61064838461227 -61064838606632 -61064838731096 -61064838854143 -61064838872503 -61064838889104 -61064838906072 -61064838993891 -61064839094966 -61064839219722 -61064839316159 -61064839335860 -61064839353034 -61064839495415 -61064839517063 -61064839643353 -61064839740990 -61064839758595 -61064839775853 -61064839870152 -61064839887472 -61064839904269 -61064839993655 -61064840129328 -61064840262782 -61064840433762 -61064840451577 -61064840657514 -61064840827611 -61064840986232 -61064841095854 -61064841300163 -61064841428607 -61064841571570 -61064841669977 -61064841687500 -61064841704741 -61064841792362 -61064841909930 -61064841930497 -61064842052143 -61064842071189 -61064842104173 -61064842200203 -61064842230435 -61064842250909 -61064842342911 -61064842441170 -61064842531545 -61064842559334 -61064842580508 -61064842691922 -61064842717431 -61064842830495 -61064842851447 -61064842945329 -61064843095131 -61064843115780 -61064843208956 -61064843302904 -61064843424521 -61064843446431 -61064843540562 -61064843683114 -61064843710157 -61064843832584 -61064843971273 -61064843990384 -61064844040646 -61064844181062 -61064844199524 -61064844354441 -61064844384505 -61064844563534 -61064844588633 -61064844674969 -61064844773891 -61064844888458 -61064844921819 -61064845015650 -61064845104232 -61064845134727 -61064845324209 -61064845470287 -61064845497645 -61064845521543 -61064845612417 -61064845767912 -61064845786536 -61064845942409 -61064845961264 -61064845974903 -61064845992226 -61064846010401 -61064846027936 -61064846163026 -61064846183076 -61064846201518 -61064846402542 -61064846432842 -61064846534361 -61064846626466 -61064846719054 -61064846836134 -61064846962344 -61064847140293 -61064847176990 -61064847216589 -61064847466124 -61064847504499 -61064847641987 -61064847674836 -61064847699331 -61064847728247 -61064847947500 -61064847971157 -61064847991939 -61064848140875 -61064848173683 -61064848205555 -61064848295661 -61064848315567 -61064848430697 -61064848564911 -61064848770628 -61064848785628 -61064848799778 -61064848812876 -61064848962143 -61064848977885 -61064848991960 -61064849003245 -61064849101172 -61064849117526 -61064849132190 -61064849152134 -61064849167136 -61064849278521 -61064849294306 -61064849420934 -61064849442473 -61064849459559 -61064849476906 -61064849559596 -61064849586404 -61064849678440 -61064849696085 -61064849816902 -61064849962916 -61064849980456 -61064850064277 -61064850081971 -61064850190057 -61064850208010 -61064850290913 -61064850308363 -61064850407741 -61064850496623 -61064850515329 -61064850696055 -61064850821584 -61064850843511 -61064850935103 -61064851063464 -61064851083114 -61064851113739 -61064851203445 -61064851295398 -61064851326895 -61064851344691 -61064851446972 -61064851472080 -61064851503420 -61064851608952 -61064851635218 -61064851738932 -61064851759045 -61064851859819 -61064851879353 -61064851963869 -61064852103203 -61064852127198 -61064852270306 -61064852301153 -61064852323998 -61064852412701 -61064852512917 -61064852611774 -61064852633238 -61064852661651 -61064852826651 -61064852945318 -61064852976666 -61064853088104 -61064853137699 -61064853203284 -61064853348347 -61064853526225 -61064853560912 -61064853594201 -61064853622993 -61064853794064 -61064853828818 -61064853863872 -61064853986358 -61064854024820 -61064854062460 -61064854092408 -61064854283054 -61064854321486 -61064854351288 -61064854509548 -61064854542589 -61064854572406 -61064854757767 -61064854795065 -61064854830955 -61064855007876 -61064855044622 -61064855078804 -61064855293656 -61064855424629 -61064855461646 -61064855501101 -61064855612579 -61064855651023 -61064855685368 -61064855718677 -61064855903907 -61064856050302 -61064856075205 -61064856252362 -61064856280097 -61064856297260 -61064856485194 -61064856587670 -61064856716303 -61064856850119 -61064856948780 -61064856967142 -61064857104525 -61064857131119 -61064857146116 -61064857160519 -61064857248230 -61064857333804 -61064857350125 -61064857364672 -61064857378445 -61064857462028 -61064857560863 -61064857577403 -61064857661605 -61064857697409 -61064857732304 -61064857830151 -61064857955916 -61064857972459 -61064857986783 -61064858070373 -61064858091523 -61064858174548 -61064858190628 -61064858208186 -61064858239521 -61064858269880 -61064858377387 -61064858464660 -61064858480456 -61064858567290 -61064858582337 -61064858596446 -61064858610776 -61064858694331 -61064858709941 -61064858810196 -61064858842113 -61064858948356 -61064858975452 -61064858989790 -61064859021670 -61064859116740 -61064859205810 -61064859221905 -61064859308631 -61064859328238 -61064859343585 -61064859357793 -61064859442090 -61064859458915 -61064859472899 -61064859561249 -61064859580288 -61064859661134 -61064859676988 -61064859696052 -61064859804171 -61064859827123 -61064859843228 -61064859995410 -61064860044646 -61064860178254 -61064860298484 -61064860314661 -61064860328802 -61064860460167 -61064860568723 -61064860586211 -61064860601046 -61064860616314 -61064860631288 -61064860715233 -61064860743015 -61064860757161 -61064860844964 -61064860861149 -61064860975011 -61064861092095 -61064861180012 -61064861195647 -61064861210166 -61064861224631 -61064861239231 -61064861325345 -61064861341100 -61064861425823 -61064861441295 -61064861603804 -61064861626910 -61064861645278 -61064861671873 -61064861776121 -61064861807201 -61064861904035 -61064861934423 -61064861960501 -61064861978116 -61064862100569 -61064862127886 -61064862151771 -61064862278449 -61064862297405 -61064862414678 -61064862435170 -61064862546702 -61064862638882 -61064862666921 -61064862690805 -61064862784044 -61064862879525 -61064862969414 -61064862992658 -61064863101258 -61064863207421 -61064863226408 -61064863320025 -61064863448174 -61064863647894 -61064863675580 -61064863693547 -61064863712056 -61064863824815 -61064863849919 -61064863876409 -61064863890451 -61064863970895 -61064864135695 -61064864268956 -61064864409265 -61064864541954 -61064864643495 -61064864662012 -61064864770359 -61064864789282 -61064864932392 -61064865034001 -61064865052928 -61064865141136 -61064865236663 -61064865368877 -61064865388376 -61064865453122 -61064865472111 -61064865625333 -61064865718119 -61064865813661 -61064865843927 -61064865871647 -61064865968632 -61064866162895 -61064866190425 -61064866344586 -61064866371343 -61064866468656 -61064866563151 -61064866654924 -61064866756606 -61064866848466 -61064866877041 -61064866898896 -61064867027217 -61064867044972 -61064867165836 -61064867183384 -61064867312090 -61064867468315 -61064867490907 -61064867673871 -61064867851605 -61064867876456 -61064867983231 -61064868024436 -61064868184627 -61064868277593 -61064868453233 -61064868624177 -61064868656077 -61064868786656 -61064868975657 -61064869120236 -61064869253597 -61064869403139 -61064869426916 -61064869572358 -61064869812552 -61064869844375 -61064869874417 -61064870016956 -61064870044089 -61064870160120 -61064870191225 -61064870235476 -61064870344434 -61064870380568 -61064870409985 -61064870437040 -61064870528519 -61064870559225 -61064870583454 -61064870781665 -61064870806395 -61064870919473 -61064871122934 -61064871152845 -61064871180193 -61064871312811 -61064871345009 -61064871482202 -61064871511013 -61064871534594 -61064871682692 -61064871711443 -61064871745454 -61064871898400 -61064872152333 -61064872282356 -61064872319055 -61064872343951 -61064872487088 -61064872519595 -61064872551470 -61064872745599 -61064872860114 -61064873026548 -61064873258744 -61064873379181 -61064873462923 -61064873581499 -61064873706374 -61064873972449 -61064874076130 -61064874213490 -61064874232127 -61064874360318 -61064874377640 -61064874394269 -61064874532968 -61064874551640 -61064874658905 -61064874676522 -61064874767124 -61064874850567 -61064874955763 -61064875075295 -61064875176277 -61064875347846 -61064875468475 -61064875555464 -61064875658488 -61064875762389 -61064875864759 -61064875978743 -61064876127968 -61064876244863 -61064876278303 -61064876423462 -61064876530532 -61064876563723 -61064876588324 -61064876697803 -61064876801085 -61064876918223 -61064877024062 -61064877142132 -61064877246981 -61064877370469 -61064877397888 -61064877551663 -61064877659986 -61064877752161 -61064877857566 -61064877960741 -61064878064769 -61064878168471 -61064878281310 -61064878385835 -61064878489353 -61064878595667 -61064878718497 -61064878846484 -61064878893739 -61064879057425 -61064879162353 -61064879288092 -61064879307406 -61064879429261 -61064879452320 -61064879472998 -61064879571032 -61064879593209 -61064879610175 -61064879626882 -61064879775796 -61064879806174 -61064879820952 -61064879842960 -61064879972226 -61064879995900 -61064880029504 -61064880157301 -61064880180525 -61064880196973 -61064880338880 -61064880444421 -61064880547646 -61064880651281 -61064880670944 -61064880688148 -61064880706241 -61064880836752 -61064880863543 -61064881111179 -61064881140744 -61064881307505 -61064881331061 -61064881413123 -61064881432308 -61064881514342 -61064881614697 -61064881637537 -61064881744172 -61064881763123 -61064881871118 -61064881888227 -61064881972590 -61064882090858 -61064882109192 -61064882230672 -61064882248187 -61064882265915 -61064882284373 -61064882397264 -61064882495429 -61064882515759 -61064882611715 -61064882630916 -61064882727918 -61064882828357 -61064882926304 -61064882943812 -61064882969071 -61064882985710 -61064883121018 -61064883283496 -61064883374685 -61064883486619 -61064883611472 -61064883802476 -61064883967016 -61064884201261 -61064884236948 -61064884265203 -61064884411474 -61064884510404 -61064884657617 -61064884756696 -61064884849456 -61064884960294 -61064885057595 -61064885235914 -61064885350077 -61064885471967 -61064885603989 -61064885725359 -61064885844785 -61064885974668 -61064886031957 -61064886157699 -61064886275724 -61064886410120 -61064886508516 -61064886639488 -61064886735907 -61064886860744 -61064886979285 -61064887124202 -61064887262076 -61064887394924 -61064887411998 -61064887533420 -61064887656974 -61064887753025 -61064887851061 -61064887946223 -61064888074280 -61064888225854 -61064888330065 -61064888542290 -61064888781895 -61064888927046 -61064889110203 -61064889254789 -61064889391347 -61064889427646 -61064889461607 -61064889631979 -61064889769505 -61064889946435 -61064889975584 -61064889995180 -61064890011443 -61064890027892 -61064890212963 -61064890233711 -61064890368591 -61064890458202 -61064890480098 -61064890496738 -61064890512724 -61064890525864 -61064890646103 -61064890662801 -61064890678965 -61064890702375 -61064890715848 -61064890857863 -61064890876295 -61064890892405 -61064891018256 -61064891172036 -61064891366452 -61064891489518 -61064891506768 -61064891649791 -61064891753828 -61064891877705 -61064892027633 -61064892047268 -61064892073596 -61064892235760 -61064892358000 -61064892452093 -61064892557831 -61064892645057 -61064892807985 -61064892950771 -61064893140762 -61064893261753 -61064893279639 -61064893437594 -61064893611045 -61064893782109 -61064893819747 -61064893836415 -61064893961795 -61064893983028 -61064894128823 -61064894146414 -61064894280381 -61064894400428 -61064894417529 -61064894572474 -61064894707177 -61064894832215 -61064894978477 -61064895119668 -61064895136560 -61064895271372 -61064895290746 -61064895307491 -61064895392094 -61064895483291 -61064895504038 -61064895602462 -61064895622848 -61064895743590 -61064895764892 -61064895864236 -61064895995602 -61064896031402 -61064896137413 -61064896158578 -61064896269175 -61064896288993 -61064896431181 -61064896448708 -61064896464866 -61064896706055 -61064896723786 -61064896743113 -61064896912095 -61064896930336 -61064897102406 -61064897239387 -61064897257943 -61064897456367 -61064897666247 -61064897707122 -61064897724868 -61064897738875 -61064897961661 -61064897979620 -61064897993509 -61064898222001 -61064898478268 -61064898664680 -61064898854527 -61064898889378 -61064898909241 -61064898927037 -61064898953108 -61064899049654 -61064899083775 -61064899230602 -61064899402032 -61064899563486 -61064899709606 -61064899845845 -61064899968003 -61064899984966 -61064900020077 -61064900219923 -61064900244489 -61064900380870 -61064900585748 -61064900614854 -61064900644894 -61064900831669 -61064900864922 -61064900895052 -61064901043170 -61064901205676 -61064901335557 -61064901502840 -61064901685319 -61064901720347 -61064901757451 -61064901947683 -61064901977162 -61064902004462 -61064902171480 -61064902379177 -61064902562228 -61064902591653 -61064902864215 -61064903083575 -61064903237814 -61064903426742 -61064903582998 -61064903747186 -61064904031211 -61064904050132 -61064904246770 -61064904263777 -61064904416798 -61064904597266 -61064904628212 -61064904654755 -61064904861769 -61064905043990 -61064905063329 -61064905079661 -61064905104240 -61064905305191 -61064905323739 -61064905342886 -61064905507341 -61064905528039 -61064905544485 -61064905665043 -61064905799403 -61064905827851 -61064905864656 -61064905946975 -61064905977973 -61064905994825 -61064906014749 -61064906043012 -61064906197972 -61064906223278 -61064906246693 -61064906263267 -61064906387935 -61064906410692 -61064906437810 -61064906624979 -61064906645871 -61064906662312 -61064906816642 -61064906840509 -61064906856941 -61064907032223 -61064907047218 -61064907165199 -61064907305271 -61064907324310 -61064907350229 -61064907456662 -61064907484399 -61064907630963 -61064907647901 -61064907824502 -61064907989296 -61064908154841 -61064908312733 -61064908331186 -61064908347672 -61064908374752 -61064908546297 -61064908577142 -61064908746591 -61064908777294 -61064908794526 -61064908811044 -61064908979162 -61064908994895 -61064909185578 -61064909203792 -61064909432809 -61064909449807 -61064909472484 -61064909496726 -61064909510295 -61064909718632 -61064909751899 -61064909770248 -61064909786643 -61064909895420 -61064909913940 -61064910004763 -61064910032288 -61064910049496 -61064910158752 -61064910410755 -61064910431838 -61064910452343 -61064910477821 -61064910494889 -61064910724421 -61064910894637 -61064911076293 -61064911093725 -61064911208797 -61064911232792 -61064911258249 -61064911393831 -61064911411485 -61064911437010 -61064911466085 -61064911609663 -61064911640078 -61064911824666 -61064911854250 -61064912109490 -61064912260704 -61064912390115 -61064912555386 -61064912573856 -61064912663556 -61064912690468 -61064912819726 -61064912837048 -61064912854010 -61064913022691 -61064913213936 -61064913232413 -61064913262983 -61064913401715 -61064913421949 -61064913440361 -61064913465126 -61064913558975 -61064913585147 -61064913610087 -61064913625554 -61064913739277 -61064913755991 -61064913777407 -61064914015106 -61064914199366 -61064914217254 -61064914243442 -61064914265327 -61064914401092 -61064914418903 -61064914552078 -61064914712393 -61064914842109 -61064914859272 -61064914876523 -61064914988922 -61064915009003 -61064915167570 -61064915276203 -61064915400833 -61064915507623 -61064915643296 -61064915842848 -61064915876227 -61064915896066 -61064916106319 -61064916190399 -61064916209607 -61064916371004 -61064916388429 -61064916407346 -61064916506934 -61064916524421 -61064916704016 -61064916878880 -61064917025658 -61064917214069 -61064917493375 -61064917635190 -61064917658960 -61064917804811 -61064917826923 -61064917918042 -61064918066617 -61064918090805 -61064918107529 -61064918126052 -61064918225658 -61064918249954 -61064918424223 -61064918441781 -61064918572223 -61064918599081 -61064918619528 -61064918633486 -61064918758200 -61064918925605 -61064918947129 -61064919159434 -61064919194873 -61064919212915 -61064919229813 -61064919362026 -61064919508991 -61064919619681 -61064919649608 -61064919754360 -61064919784947 -61064919803095 -61064919950635 -61064919975911 -61064920106054 -61064920293746 -61064920317004 -61064920441608 -61064920463148 -61064920678153 -61064920700659 -61064920720600 -61064920894542 -61064920911619 -61064920937083 -61064920963209 -61064921090021 -61064921107302 -61064921130858 -61064921154565 -61064921318345 -61064921349038 -61064921366026 -61064921383845 -61064921579571 -61064921608790 -61064921799035 -61064921830106 -61064921932540 -61064922078440 -61064922174504 -61064922201296 -61064922397998 -61064922528627 -61064922552457 -61064922688805 -61064922721645 -61064922738902 -61064922755380 -61064922905137 -61064922930040 -61064922946485 -61064923064468 -61064923082836 -61064923109037 -61064923131472 -61064923150935 -61064923326958 -61064923345526 -61064923369752 -61064923393415 -61064923409968 -61064923428276 -61064923582580 -61064923600920 -61064923617980 -61064923648547 -61064923662697 -61064923807383 -61064923974900 -61064924149964 -61064924189700 -61064924387609 -61064924498883 -61064924515862 -61064924675539 -61064924695001 -61064924714698 -61064924740137 -61064924755445 -61064924860750 -61064924883834 -61064925082708 -61064925132290 -61064925156892 -61064925304928 -61064925319802 -61064925346572 -61064925370257 -61064925488794 -61064925581171 -61064925604999 -61064925783288 -61064925883653 -61064925901059 -61064926011406 -61064926032358 -61064926216167 -61064926241122 -61064926270722 -61064926287972 -61064926398585 -61064926422680 -61064926439097 -61064926466766 -61064926578921 -61064926718874 -61064926751525 -61064926769894 -61064926906263 -61064927001367 -61064927027636 -61064927044309 -61064927066803 -61064927200048 -61064927223953 -61064927312347 -61064927344634 -61064927363212 -61064927456814 -61064927703764 -61064935916418 -61064935956355 -61064936200231 -61064936230465 -61064936252778 -61064936389210 -61064936413257 -61064936444889 -61064936638213 -61064936663228 -61064936798489 -61064936920388 -61064936945879 -61064936969931 -61064936985853 -61064937148538 -61064937186619 -61064937217228 -61064937245532 -61064937398637 -61064937426460 -61064937563104 -61064937711138 -61064937823646 -61064937843860 -61064937858024 -61064938012304 -61064938180782 -61064938206419 -61064938345878 -61064938367580 -61064938477649 -61064938646480 -61064938739572 -61064938772045 -61064938884131 -61064938903916 -61064939070478 -61064939094637 -61064939120781 -61064939266228 -61064939299353 -61064939317668 -61064939346108 -61064939519892 -61064939544332 -61064939712629 -61064939732137 -61064939878986 -61064939902784 -61064940039205 -61064940166682 -61064940185648 -61064940201998 -61064940401462 -61064940613940 -61064940645808 -61064940664077 -61064940681596 -61064940710328 -61064940912563 -61064941076878 -61064941108283 -61064941238639 -61064941335591 -61064941372680 -61064941393147 -61064941527691 -61064941802034 -61064941993676 -61064942031137 -61064942051064 -61064942071133 -61064942101133 -61064942193696 -61064942227702 -61064942251037 -61064942451834 -61064942660834 -61064942680827 -61064942699792 -61064942713225 -61064942733721 -61064942747240 -61064942966176 -61064942990107 -61064943116937 -61064943140899 -61064943303168 -61064943321651 -61064943502471 -61064943520316 -61064943692024 -61064943780982 -61064943914741 -61064944049839 -61064944067852 -61064944175513 -61064944193294 -61064944209968 -61064944382949 -61064944400813 -61064944427795 -61064944448886 -61064944466126 -61064944653275 -61064944801250 -61064944833617 -61064944851207 -61064944866923 -61064945084113 -61064945106262 -61064945298679 -61064945318895 -61064945470481 -61064945495292 -61064945637301 -61064945658631 -61064945788414 -61064945814990 -61064945989385 -61064946171263 -61064946297835 -61064946395039 -61064946422081 -61064946530154 -61064946556438 -61064946688787 -61064946710968 -61064946894755 -61064946912987 -61064946943802 -61064947086971 -61064947343900 -61064947455091 -61064947475991 -61064947687403 -61064947714883 -61064947744892 -61064947775281 -61064947928972 -61064947958707 -61064947986689 -61064948217128 -61064948432109 -61064948454904 -61064948656983 -61064948883172 -61064948902026 -61064949084248 -61064949102565 -61064949212020 -61064949383996 -61064949545605 -61064949750164 -61064949870401 -61064949887207 -61064950062205 -61064950226013 -61064950243288 -61064950418632 -61064950545546 -61064950562736 -61064950579391 -61064950597085 -61064950614282 -61064950627772 -61064950718052 -61064950735691 -61064950860271 -61064950877050 -61064950893436 -61064950983231 -61064950997500 -61064951014401 -61064951031134 -61064951050625 -61064951078226 -61064951252924 -61064951400023 -61064951434584 -61064951464323 -61064951673314 -61064951694282 -61064951912263 -61064952043290 -61064952147339 -61064952173711 -61064952306191 -61064952456879 -61064952650604 -61064952771129 -61064952928686 -61064952947126 -61064953062850 -61064953081278 -61064953104658 -61064953324843 -61064953345059 -61064953532242 -61064953565975 -61064953596570 -61064953622510 -61064953760652 -61064953962742 -61064953985114 -61064954002172 -61064954156111 -61064954178208 -61064954286357 -61064954310511 -61064954422716 -61064954451494 -61064954550517 -61064954576656 -61064954739061 -61064954767813 -61064954788509 -61064954923798 -61064954941931 -61064955124098 -61064955247957 -61064955372745 -61064955390248 -61064955536279 -61064955708004 -61064955835546 -61064955852889 -61064955967759 -61064956016796 -61064956182758 -61064956215475 -61064956239737 -61064956344536 -61064956373418 -61064956489925 -61064956514504 -61064956541750 -61064956562425 -61064956685770 -61064956707742 -61064956846353 -61064956965963 -61064957067484 -61064957190122 -61064957366187 -61064957383672 -61064957487384 -61064957508076 -61064957608975 -61064957630557 -61064957760224 -61064957905067 -61064957929527 -61064957955315 -61064958092878 -61064958111145 -61064958233945 -61064958335282 -61064958410032 -61064958438657 -61064958576316 -61064958596040 -61064958807999 -61064958832732 -61064959008795 -61064959182913 -61064959204394 -61064959398895 -61064959569512 -61064959594202 -61064959814392 -61064959930894 -61064960141194 -61064960322158 -61064960341924 -61064960370481 -61064960392005 -61064960528228 -61064960567888 -61064960591950 -61064960609165 -61064960737114 -61064960756378 -61064960887037 -61064961016709 -61064961154235 -61064961185165 -61064961203876 -61064961404582 -61064961522485 -61064961662074 -61064961839682 -61064962030230 -61064962198531 -61064962401385 -61064962564844 -61064962589371 -61064962724060 -61064962823211 -61064962965326 -61064963119674 -61064963137675 -61064963236644 -61064963258643 -61064963433119 -61064963457059 -61064963476761 -61064963503826 -61064963629555 -61064963752787 -61064963892264 -61064963921922 -61064964011555 -61064964229411 -61064964250726 -61064964434546 -61064964452652 -61064964470865 -61064964628724 -61064964769312 -61064964889460 -61064964907809 -61064965038298 -61064965179063 -61064965340119 -61064965447547 -61064965472697 -61064965496786 -61064965628894 -61064965646080 -61064965762484 -61064965779935 -61064965871163 -61064965888936 -61064966004239 -61064966022170 -61064966205091 -61064966222272 -61064966306292 -61064966324684 -61064966341683 -61064966358839 -61064966545072 -61064966562923 -61064966709886 -61064966798325 -61064966821318 -61064966908889 -61064966931165 -61064967016988 -61064967108689 -61064967126032 -61064967142604 -61064967265078 -61064967351381 -61064967369335 -61064967385881 -61064967402556 -61064967537010 -61064967557154 -61064967665123 -61064967752658 -61064967769478 -61064967852930 -61064967870190 -61064967957775 -61064967975079 -61064967991393 -61064968025432 -61064968039574 -61064968128439 -61064968214876 -61064968231910 -61064968338572 -61064968355781 -61064968371992 -61064968508060 -61064968523324 -61064968690628 -61064968705685 -61064968719766 -61064968736772 -61064968753471 -61064968767374 -61064968884760 -61064968900136 -61064968912760 -61064968927413 -61064968940959 -61064968951663 -61064969068662 -61064969084134 -61064969095120 -61064969109237 -61064969221084 -61064969246997 -61064969261400 -61064969275973 -61064969290639 -61064969415329 -61064969432465 -61064969451733 -61064969595298 -61064969610306 -61064969720327 -61064969735279 -61064969749026 -61064969763108 -61064969877076 -61064969891918 -61064969908860 -61064969923918 -61064969938120 -61064970022051 -61064970037593 -61064970051592 -61064970065733 -61064970146381 -61064970162354 -61064970176510 -61064970190424 -61064970201165 -61064970282049 -61064970296655 -61064970312754 -61064970540899 -61064970558154 -61064970574924 -61064970673660 -61064970689752 -61064970704071 -61064970718760 -61064970800285 -61064970815325 -61064970829412 -61064970843487 -61064970857609 -61064970870977 -61064970951462 -61064970966349 -61064970980463 -61064970994655 -61064971008762 -61064971150550 -61064971165000 -61064971179023 -61064971193030 -61064971207786 -61064971409226 -61064971429680 -61064971548195 -61064971753112 -61064971782264 -61064971810688 -61064971919779 -61064971951287 -61064971976073 -61064972173802 -61064972202544 -61064972226920 -61064972373698 -61064972580801 -61064972723415 -61064972887439 -61064972911958 -61064972934818 -61064973071903 -61064973207776 -61064973402655 -61064973555708 -61064973721135 -61064973828207 -61064973996332 -61064974133828 -61064974287960 -61064974417511 -61064974534614 -61064974689787 -61064974716078 -61064974739295 -61064974765278 -61064974948155 -61064974974942 -61064974998161 -61064975211490 -61064975402259 -61064975610939 -61064975747429 -61064975866331 -61064976054674 -61064976105270 -61064976132777 -61064976253858 -61064976281782 -61064976438427 -61064976598513 -61064976770510 -61064976801309 -61064976832684 -61064977013084 -61064977043232 -61064977068834 -61064977207765 -61064977273629 -61064977443677 -61064977467557 -61064977632764 -61064977833892 -61064977968675 -61064978114817 -61064978148050 -61064978170316 -61064978321628 -61064978509637 -61064978534504 -61064978665976 -61064978771754 -61064978930059 -61064978958356 -61064978983203 -61064979089716 -61064979249690 -61064979275428 -61064979476202 -61064979502418 -61064979530174 -61064979650813 -61064979703658 -61064979728890 -61064979913469 -61064980030956 -61064980057386 -61064980081675 -61064980318272 -61064980446658 -61064980738064 -61064980772398 -61064980799759 -61064980982362 -61064981166294 -61064981368475 -61064981464420 -61064981611612 -61064981801782 -61064981927478 -61064981961829 -61064981989559 -61064982129354 -61064982315814 -61064982485149 -61064982641165 -61064982660464 -61064982674323 -61064982774040 -61064982871347 -61064982889786 -61064982907760 -61064983005661 -61064983023605 -61064983205822 -61064983225127 -61064983320737 -61064983483651 -61064983518061 -61064983544352 -61064983666717 -61064983843196 -61064984033793 -61064984254320 -61064984427848 -61064984608630 -61064984784292 -61064984921434 -61064984950709 -61064984978702 -61064985212639 -61064985240646 -61064985265627 -61064985439287 -61064985464760 -61064985619623 -61064985650945 -61064985744094 -61064985773255 -61064985796048 -61064985981343 -61064986107867 -61064986241592 -61064986268454 -61064986291643 -61064986525697 -61064986755082 -61064986788374 -61064986808766 -61064987032066 -61064987051608 -61064987073520 -61064987091314 -61064987109270 -61064987123754 -61064987314524 -61064987336587 -61064987359523 -61064987376199 -61064987394939 -61064987412467 -61064987426452 -61064987688577 -61064987706929 -61064987720963 -61064987900714 -61064988155831 -61064988183449 -61064988415237 -61064988634393 -61064988653832 -61064988671613 -61064988700008 -61064988714153 -61064988848836 -61064988869005 -61064988962667 -61064988980126 -61064988998089 -61064989097259 -61064989252479 -61064989424955 -61064989442775 -61064989468832 -61064989488625 -61064989664008 -61064989688916 -61064989705616 -61064989883333 -61064990056845 -61064990074922 -61064990247159 -61064990268474 -61064990481194 -61064990654427 -61064990823272 -61064990932007 -61064991092396 -61064991249151 -61064991279628 -61064991306076 -61064991401200 -61064991435410 -61064991459031 -61064991481932 -61064991646402 -61064991671857 -61064991697873 -61064991718414 -61064991845215 -61064992032313 -61064992245304 -61064992381660 -61064992516954 -61064992545819 -61064992571642 -61064992600633 -61064992807973 -61064992841072 -61064992973180 -61064993006236 -61064993133311 -61064993165736 -61064993261168 -61064993293947 -61064993447487 -61064993511648 -61064993750740 -61064993779495 -61064993897276 -61064994058477 -61064994076078 -61064994098400 -61064994235801 -61064994260823 -61064994277954 -61064994300065 -61064994465490 -61064994481846 -61064994493419 -61064994509878 -61064994523540 -61064994666973 -61064994855203 -61064994874226 -61064994887836 -61064995022946 -61064995040724 -61064995058280 -61064995155266 -61064995173464 -61064995193388 -61064995210106 -61064995228290 -61064995391991 -61064995409527 -61064995425870 -61064995442225 -61064995458021 -61064995474858 -61064995589796 -61064995608435 -61064995625163 -61064995642323 -61064995662326 -61064995755715 -61064995776280 -61064995905143 -61064995923708 -61064995939822 -61064996151280 -61064996333298 -61064996366033 -61064996392631 -61064996638666 -61064996658340 -61064996690091 -61064996867856 -61064996887610 -61064996908803 -61064996926028 -61064996946658 -61064996963431 -61064997129171 -61064997147687 -61064997179805 -61064997206320 -61064997485720 -61064997505128 -61064997522615 -61064997751715 -61064997777850 -61064997795900 -61064997898086 -61064998054889 -61064998089594 -61064998112816 -61064998268455 -61064998299532 -61064998520349 -61064998548155 -61064998571606 -61064998589515 -61064998805322 -61064998841886 -61064998866989 -61064999120452 -61064999145720 -61064999173752 -61064999195560 -61064999387384 -61064999528034 -61064999547410 -61064999571587 -61064999597012 -61064999611453 -61064999768421 -61064999941085 -61064999969713 -61065000030902 -61065000224307 -61065000245103 -61065000261622 -61065000283176 -61065000431013 -61065000525868 -61065000728942 -61065000876406 -61065001027334 -61065001044493 -61065001069587 -61065001092097 -61065001245427 -61065001269697 -61065001292613 -61065001312352 -61065001335813 -61065001502643 -61065001521958 -61065001551744 -61065001569121 -61065001582872 -61065001775466 -61065001803825 -61065001830294 -61065001846946 -61065001993096 -61065002021007 -61065002179084 -61065002211104 -61065002235320 -61065002249626 -61065002432273 -61065002449203 -61065002471141 -61065002493945 -61065002513723 -61065002639268 -61065002665013 -61065002809153 -61065002826427 -61065002843067 -61065003056196 -61065003084290 -61065003190839 -61065003210539 -61065003228037 -61065003245378 -61065003263054 -61065003277493 -61065003396936 -61065003427032 -61065003452253 -61065003732805 -61065003934579 -61065004214367 -61065004526038 -61065004545728 -61065004722791 -61065004739955 -61065004764075 -61065004977789 -61065004995208 -61065005012572 -61065005158945 -61065005272758 -61065005302906 -61065005320239 -61065005336682 -61065005505437 -61065005524393 -61065005541678 -61065005568255 -61065005705244 -61065005827137 -61065005982248 -61065006116215 -61065006133901 -61065006160109 -61065006182047 -61065006366813 -61065006384037 -61065006402589 -61065006415810 -61065006626790 -61065006645107 -61065006661698 -61065006679084 -61065006703065 -61065006941941 -61065006967674 -61065007098420 -61065007116059 -61065007132279 -61065007153480 -61065007264019 -61065007279632 -61065007293451 -61065007308957 -61065007420048 -61065007438376 -61065007454624 -61065007471242 -61065007487707 -61065007501393 -61065007658372 -61065007697817 -61065007714277 -61065007730666 -61065007747176 -61065007918694 -61065007939367 -61065007957378 -61065007974973 -61065007992608 -61065008029983 -61065008237495 -61065008288235 -61065008474064 -61065008496292 -61065008511686 -61065008523317 -61065008785136 -61065008829400 -61065008857801 -61065008876080 -61065008893793 -61065008907886 -61065008925901 -61065009114358 -61065009137714 -61065009172161 -61065009358898 -61065009393560 -61065009568579 -61065009597231 -61065009616746 -61065009806049 -61065009823726 -61065009845155 -61065010002448 -61065010019927 -61065010049048 -61065010069593 -61065010220560 -61065010246530 -61065010415382 -61065010436820 -61065010530397 -61065010547236 -61065010565127 -61065010720792 -61065010852450 -61065011072078 -61065011097096 -61065011232369 -61065011369574 -61065011492030 -61065011511556 -61065011540083 -61065011567045 -61065011718428 -61065011734697 -61065011747946 -61065011772920 -61065011894414 -61065011924081 -61065011945879 -61065012185603 -61065012203200 -61065012229348 -61065012249818 -61065012387510 -61065012404890 -61065012427443 -61065012449159 -61065012466079 -61065012571182 -61065012591108 -61065012608166 -61065012652285 -61065012811403 -61065012830952 -61065012854453 -61065013045849 -61065013075387 -61065013370955 -61065013615803 -61065013810589 -61065014030012 -61065014048793 -61065014066589 -61065014091398 -61065014263576 -61065014290240 -61065014487831 -61065014681915 -61065014830979 -61065014996418 -61065015024707 -61065015048967 -61065015231389 -61065015257102 -61065015282553 -61065015462169 -61065015487773 -61065015512389 -61065015530355 -61065015551247 -61065015784669 -61065015878728 -61065015907813 -61065016142814 -61065016168507 -61065016189621 -61065016218861 -61065016511525 -61065016553291 -61065016592115 -61065016744037 -61065016921258 -61065017074292 -61065017263530 -61065017294201 -61065017314584 -61065017331988 -61065017468979 -61065017658574 -61065017681418 -61065017699038 -61065017721523 -61065017749119 -61065017934259 -61065017960897 -61065018115387 -61065018142862 -61065018160873 -61065018178291 -61065018389149 -61065018594009 -61065018625579 -61065018773106 -61065018792971 -61065018807203 -61065019068256 -61065019085677 -61065019258818 -61065019278982 -61065019305570 -61065019492107 -61065019734065 -61065019885210 -61065019915249 -61065020094577 -61065020123446 -61065020355756 -61065020392538 -61065020421922 -61065020557320 -61065020586575 -61065020753839 -61065020888816 -61065021030923 -61065021161327 -61065021353622 -61065021491203 -61065021649566 -61065021873534 -61065021994101 -61065022200365 -61065022229463 -61065022323935 -61065022414173 -61065022555943 -61065022646289 -61065022662879 -61065022679430 -61065022819507 -61065022947764 -61065023036565 -61065023138978 -61065023156169 -61065023172935 -61065023189374 -61065023206524 -61065023223649 -61065023321052 -61065023344249 -61065023517383 -61065023743824 -61065023774311 -61065023915495 -61065024079234 -61065024191184 -61065024325484 -61065024448707 -61065024467042 -61065024578840 -61065024603476 -61065024735781 -61065024916486 -61065024935535 -61065024953914 -61065024970267 -61065025160104 -61065025186979 -61065025375779 -61065025398591 -61065025504411 -61065025611319 -61065025701738 -61065025829619 -61065025965190 -61065025994791 -61065026020713 -61065026281938 -61065026413450 -61065026538036 -61065026566996 -61065026594196 -61065026690209 -61065026819081 -61065026947770 -61065027133957 -61065027285069 -61065027396409 -61065027563139 -61065027760902 -61065027794111 -61065027818366 -61065027928893 -61065028087645 -61065028302677 -61065028564234 -61065028750413 -61065028777709 -61065028803249 -61065028834090 -61065028859058 -61065028985860 -61065029013644 -61065029198125 -61065029347502 -61065029379009 -61065029411188 -61065029527603 -61065029559875 -61065029796861 -61065029815331 -61065029838613 -61065029856662 -61065030000279 -61065030025874 -61065030043361 -61065030147004 -61065030165940 -61065030183868 -61065030319548 -61065030338256 -61065030358515 -61065030376214 -61065030520621 -61065030542579 -61065030560569 -61065030661749 -61065030684236 -61065030702131 -61065030719699 -61065030739339 -61065030753663 -61065030850057 -61065030868832 -61065030886820 -61065030985761 -61065031005355 -61065031022546 -61065031040010 -61065031058109 -61065031072188 -61065031169996 -61065031188579 -61065031206134 -61065031372776 -61065031391373 -61065031410810 -61065031426297 -61065031515897 -61065031533033 -61065031549401 -61065031565771 -61065031582488 -61065031744537 -61065031763119 -61065031778990 -61065031794881 -61065031811412 -61065031824800 -61065031915693 -61065031936191 -61065032041486 -61065032058844 -61065032075253 -61065032092586 -61065032112356 -61065032197917 -61065032214180 -61065032247392 -61065032429244 -61065032456200 -61065032477910 -61065032587134 -61065032705808 -61065032727327 -61065032743973 -61065032760658 -61065032777362 -61065032790519 -61065032885273 -61065032902075 -61065032918400 -61065032934710 -61065032951131 -61065033040808 -61065033059451 -61065033075903 -61065033092734 -61065033109989 -61065033123067 -61065033213389 -61065033231690 -61065033248049 -61065033258900 -61065033378259 -61065033395234 -61065033405875 -61065033524657 -61065033539465 -61065033553607 -61065033567561 -61065033578267 -61065033696749 -61065033713704 -61065033730137 -61065033746735 -61065033762661 -61065033782184 -61065033795370 -61065033878524 -61065033895341 -61065033911762 -61065033927789 -61065033943987 -61065034034690 -61065034053060 -61065034069287 -61065034085662 -61065034101781 -61065034114848 -61065034211125 -61065034228071 -61065034244425 -61065034260640 -61065034277149 -61065034293552 -61065034306706 -61065034398735 -61065034415732 -61065034431904 -61065034448349 -61065034464544 -61065034481444 -61065034494725 -61065034591274 -61065034608602 -61065034624797 -61065034641351 -61065034656733 -61065034755701 -61065034772765 -61065034788946 -61065034805402 -61065034928936 -61065034947183 -61065034963342 -61065034980014 -61065034993498 -61065035077756 -61065035097338 -61065035116980 -61065035293175 -61065035312644 -61065035325702 -61065035342045 -61065035358711 -61065035464841 -61065035482582 -61065035498710 -61065035590517 -61065035608914 -61065035625061 -61065035643592 -61065035657317 -61065035743532 -61065035760327 -61065035776369 -61065035792642 -61065035809275 -61065035897817 -61065035916246 -61065035932370 -61065035949293 -61065035962410 -61065036138377 -61065036157671 -61065036174553 -61065036191392 -61065036216425 -61065036234903 -61065036436023 -61065036454878 -61065036471115 -61065036487562 -61065036503994 -61065036517436 -61065036608003 -61065036625183 -61065036642165 -61065036658295 -61065036674947 -61065036687882 -61065036777267 -61065036796784 -61065036813034 -61065036829434 -61065036842513 -61065036950412 -61065036967893 -61065036984115 -61065037000243 -61065037016606 -61065037108286 -61065037126617 -61065037139309 -61065037155753 -61065037172027 -61065037187318 -61065037275909 -61065037292810 -61065037309193 -61065037325657 -61065037341359 -61065037354051 -61065037513188 -61065037530343 -61065037546448 -61065037563202 -61065037651377 -61065037673607 -61065037690166 -61065037722057 -61065037737735 -61065037826420 -61065037843468 -61065037858700 -61065037873726 -61065037891083 -61065037903733 -61065038063168 -61065038080199 -61065038096436 -61065038113441 -61065038245373 -61065038269249 -61065038285681 -61065038298361 -61065038426817 -61065038442873 -61065038460703 -61065038577189 -61065038594091 -61065038612122 -61065038794545 -61065038810662 -61065038826260 -61065038841573 -61065038857058 -61065039036642 -61065039058209 -61065039074763 -61065039093729 -61065039205584 -61065039222401 -61065039237112 -61065039345086 -61065039364154 -61065039456449 -61065039472415 -61065039508759 -61065039528518 -61065039545198 -61065039633267 -61065039651865 -61065039667711 -61065039678982 -61065039811669 -61065039830465 -61065039848872 -61065039863093 -61065040037156 -61065040056446 -61065040073008 -61065040089618 -61065040189551 -61065040352568 -61065040375852 -61065040492175 -61065040509743 -61065040526331 -61065040631071 -61065040776767 -61065040946260 -61065040964208 -61065040980744 -61065040997764 -61065041010848 -61065041192717 -61065041215133 -61065041356493 -61065041377919 -61065041559075 -61065041578421 -61065041593038 -61065041690156 -61065041705592 -61065041921906 -61065041939942 -61065041956834 -61065041973442 -61065042138708 -61065042154333 -61065042343348 -61065042357070 -61065042373791 -61065042390636 -61065042410107 -61065042427095 -61065042443747 -61065042456800 -61065042634829 -61065042651649 -61065042668054 -61065042681146 -61065042882470 -61065043023826 -61065043196467 -61065043214217 -61065043236179 -61065043391790 -61065043483193 -61065043500927 -61065043517483 -61065043534072 -61065043547199 -61065043739674 -61065043756833 -61065043778362 -61065043941877 -61065043959705 -61065043986816 -61065044203216 -61065044226988 -61065044249678 -61065044406014 -61065044434958 -61065044457318 -61065044556562 -61065044710895 -61065044729230 -61065044747894 -61065044865394 -61065044890664 -61065044914179 -61065044933560 -61065045116920 -61065045261048 -61065045279903 -61065045312052 -61065045505428 -61065045524169 -61065045540345 -61065045571051 -61065045720358 -61065045737524 -61065045767073 -61065045978470 -61065045995851 -61065046022404 -61065046174010 -61065046191902 -61065046212045 -61065046236035 -61065046364402 -61065046378680 -61065046391857 -61065046413752 -61065046440717 -61065046458131 -61065046568752 -61065046591804 -61065046703740 -61065046721894 -61065046763043 -61065046780782 -61065046793775 -61065046934382 -61065047090427 -61065047243500 -61065047263598 -61065047409386 -61065047499383 -61065047516686 -61065047538357 -61065047662628 -61065047688600 -61065047705863 -61065047722139 -61065047745000 -61065047913615 -61065047933611 -61065047958725 -61065048149526 -61065048299720 -61065048448448 -61065048467992 -61065048494146 -61065048664636 -61065048691352 -61065048713587 -61065048804524 -61065048903256 -61065048921362 -61065049031865 -61065049072973 -61065049087116 -61065049116585 -61065049251788 -61065049406032 -61065049438179 -61065049600522 -61065049628130 -61065049648168 -61065049761230 -61065049782442 -61065049924155 -61065050205957 -61065050343575 -61065050366809 -61065050383721 -61065050400916 -61065050536088 -61065050562850 -61065050675956 -61065050696253 -61065050827690 -61065050853001 -61065050877625 -61065050976759 -61065051141310 -61065051267790 -61065051396898 -61065051414472 -61065051524704 -61065051543248 -61065051563289 -61065051680902 -61065051704517 -61065051732407 -61065051846360 -61065051869290 -61065052012480 -61065052044272 -61065052153631 -61065052179593 -61065052339585 -61065052535130 -61065052629598 -61065052647282 -61065052743082 -61065052770127 -61065052788888 -61065052968875 -61065052988944 -61065053021427 -61065053038468 -61065053185728 -61065053203067 -61065053222685 -61065053240700 -61065053414617 -61065053437322 -61065053456442 -61065053719484 -61065053740977 -61065053754483 -61065053906645 -61065053930084 -61065053951647 -61065054156341 -61065054174158 -61065054195831 -61065054410342 -61065054665879 -61065054867306 -61065054884980 -61065055054148 -61065055183112 -61065055200860 -61065055373174 -61065055391733 -61065055507655 -61065055525976 -61065055748404 -61065055774348 -61065055791085 -61065055810129 -61065055967227 -61065055988450 -61065056238444 -61065056594057 -61065056613110 -61065056802963 -61065057017380 -61065057244177 -61065057261974 -61065057299825 -61065057316003 -61065057334781 -61065057486023 -61065057541342 -61065057567665 -61065057849433 -61065057889073 -61065057905334 -61065057921576 -61065057937959 -61065058156386 -61065058357325 -61065058539085 -61065058583679 -61065058743225 -61065059043738 -61065059230149 -61065059453304 -61065059703120 -61065059843979 -61065060060102 -61065060093330 -61065060117753 -61065060131179 -61065060143241 -61065060158301 -61065060183422 -61065060346744 -61065060383631 -61065060552891 -61065060571840 -61065060597372 -61065060735118 -61065060876648 -61065060894096 -61065061014104 -61065061031118 -61065061043812 -61065061060186 -61065061076189 -61065061249577 -61065061356306 -61065061371453 -61065061474879 -61065061492306 -61065061509111 -61065061526027 -61065061680790 -61065061698924 -61065061788887 -61065061940851 -61065061959316 -61065062089484 -61065062252218 -61065062365578 -61065062481257 -61065062499276 -61065062539800 -61065062658933 -61065062675919 -61065062692367 -61065062708998 -61065062887513 -61065062904050 -61065063088801 -61065063272706 -61065063433027 -61065063450664 -61065063556035 -61065063573812 -61065063590317 -61065063606934 -61065063632679 -61065063751684 -61065063876868 -61065063892561 -61065063908821 -61065064055854 -61065064083681 -61065064097270 -61065064113741 -61065064225151 -61065064374746 -61065064408132 -61065064431999 -61065064570018 -61065064588135 -61065064605460 -61065064623555 -61065064640663 -61065064778229 -61065064793063 -61065064806429 -61065064820072 -61065064960624 -61065064976015 -61065065074893 -61065065090519 -61065065104214 -61065065290497 -61065065322167 -61065065358280 -61065065387214 -61065065493497 -61065065627716 -61065065758889 -61065065785294 -61065065959014 -61065065988477 -61065066084661 -61065066239137 -61065066354157 -61065066390531 -61065066423365 -61065066701418 -61065066739493 -61065066772915 -61065066806968 -61065067087768 -61065067122694 -61065067336293 -61065067366969 -61065067496631 -61065067672174 -61065067690122 -61065067706263 -61065067817060 -61065067862852 -61065067885717 -61065067901412 -61065068113302 -61065068131752 -61065068325633 -61065068343063 -61065068359852 -61065068376455 -61065068392630 -61065068545174 -61065068566607 -61065068586530 -61065068603664 -61065068616759 -61065068745580 -61065068762373 -61065068789806 -61065068817266 -61065068839287 -61065068969790 -61065068985772 -61065068999280 -61065069013425 -61065069027980 -61065069039142 -61065069190392 -61065069279657 -61065069295332 -61065069309454 -61065069321117 -61065069454384 -61065069469678 -61065069483256 -61065069493709 -61065069509625 -61065069528050 -61065069641718 -61065069659604 -61065069673327 -61065069689226 -61065069699587 -61065069847611 -61065069867429 -61065069881887 -61065069893170 -61065070031607 -61065070046789 -61065070060853 -61065070071515 -61065070195783 -61065070214403 -61065070231059 -61065070241948 -61065070259027 -61065070269904 -61065070284065 -61065070418942 -61065070584411 -61065070601487 -61065070617410 -61065070633371 -61065070743766 -61065070758929 -61065070772602 -61065070786545 -61065070797273 -61065070903496 -61065070918177 -61065070933197 -61065071059233 -61065071075383 -61065071089574 -61065071198583 -61065071213977 -61065071227635 -61065071381527 -61065071470712 -61065071485572 -61065071499959 -61065071513550 -61065071524975 -61065071642344 -61065071668245 -61065071836328 -61065071863191 -61065072021858 -61065072049988 -61065072312999 -61065072491770 -61065072513108 -61065072716560 -61065072746645 -61065072770418 -61065072919454 -61065073092044 -61065073230064 -61065073249450 -61065073274800 -61065073403448 -61065073425570 -61065073509099 -61065073689130 -61065073785258 -61065073944094 -61065074078315 -61065074244583 -61065074262566 -61065074447911 -61065074465337 -61065074583605 -61065074753881 -61065074775329 -61065074929095 -61065075077278 -61065075103645 -61065075240414 -61065075257925 -61065075280391 -61065075302359 -61065075508002 -61065075525351 -61065075549500 -61065075685807 -61065075708867 -61065075725382 -61065075892465 -61065075911086 -61065076177090 -61065076239237 -61065076286071 -61065076422229 -61065076646848 -61065076795137 -61065076938868 -61065076973526 -61065077004821 -61065077131238 -61065077166245 -61065077386948 -61065077555724 -61065077726720 -61065077876079 -61065078050544 -61065078180598 -61065078396997 -61065078578831 -61065078700962 -61065078866725 -61065079060072 -61065079288190 -61065079447085 -61065079637873 -61065079823156 -61065079988966 -61065080258626 -61065080400990 -61065080599295 -61065080761727 -61065080790966 -61065080954042 -61065081125445 -61065081306800 -61065081474692 -61065081684553 -61065081840690 -61065082002093 -61065082121236 -61065082212068 -61065082383542 -61065082520844 -61065082717995 -61065082882240 -61065083048133 -61065083211072 -61065083308602 -61065083432839 -61065083591969 -61065083741849 -61065083903945 -61065084150664 -61065084273077 -61065084434718 -61065084588281 -61065084610919 -61065084627317 -61065084643608 -61065084656552 -61065084801021 -61065084815895 -61065084829650 -61065084843762 -61065084854648 -61065085060560 -61065085077737 -61065085093674 -61065085110104 -61065085123593 -61065085310565 -61065085328351 -61065085344753 -61065085361054 -61065085377670 -61065085587601 -61065085607609 -61065085624015 -61065085640019 -61065085656152 -61065085669199 -61065085900472 -61065085919349 -61065085935201 -61065085947488 -61065086063923 -61065086080786 -61065086096460 -61065086112258 -61065086127996 -61065086278182 -61065086296740 -61065086312158 -61065086327599 -61065086342999 -61065086354829 -61065086466228 -61065086483386 -61065086499038 -61065086515936 -61065086535944 -61065086653324 -61065086670691 -61065086686538 -61065086702425 -61065086722210 -61065086734996 -61065086824725 -61065086841239 -61065086856786 -61065086875833 -61065086891852 -61065086976426 -61065086994312 -61065087010016 -61065087025421 -61065087040480 -61065087052500 -61065087139184 -61065087155348 -61065087170792 -61065087186566 -61065087202500 -61065087217759 -61065087230044 -61065087317140 -61065087333526 -61065087349267 -61065087364702 -61065087380166 -61065087392419 -61065087480701 -61065087497273 -61065087512453 -61065087527818 -61065087546637 -61065087657665 -61065087675883 -61065087691123 -61065087706568 -61065087722115 -61065087734218 -61065087820711 -61065087837409 -61065087852746 -61065087868149 -61065087883774 -61065087969596 -61065087988104 -61065088017336 -61065088039199 -61065088051517 -61065088141620 -61065088230704 -61065088250201 -61065088265784 -61065088281513 -61065088297507 -61065088313050 -61065088324899 -61065088452667 -61065088567129 -61065088581674 -61065088594621 -61065088607100 -61065088619524 -61065088791479 -61065088807877 -61065088823616 -61065088839675 -61065088855552 -61065089013840 -61065089124358 -61065089208808 -61065089354647 -61065089380315 -61065089520887 -61065089687496 -61065089716439 -61065089859756 -61065089891302 -61065089911257 -61065090141431 -61065090162734 -61065090340284 -61065090359686 -61065090483126 -61065090501182 -61065090516993 -61065090678053 -61065090702215 -61065090807743 -61065090828226 -61065090976576 -61065091004542 -61065091131410 -61065091284472 -61065091309368 -61065091334183 -61065091454740 -61065091598731 -61065091630126 -61065091790030 -61065091819693 -61065091850013 -61065091965757 -61065092194028 -61065092345835 -61065092381044 -61065092488641 -61065092505564 -61065092685821 -61065092700780 -61065092867175 -61065092966390 -61065092982472 -61065093001140 -61065093081622 -61065093191880 -61065093208655 -61065093391821 -61065093413814 -61065093443198 -61065093474187 -61065093650813 -61065093665697 -61065093679118 -61065093692508 -61065093801856 -61065093817167 -61065093827575 -61065093840903 -61065093853836 -61065093867879 -61065093878794 -61065094074951 -61065094284746 -61065094506500 -61065094555496 -61065094589396 -61065094604538 -61065094618404 -61065094628188 -61065094780603 -61065094813905 -61065094824105 -61065094837812 -61065094851774 -61065095044775 -61065095075153 -61065095291060 -61065095303133 -61065095316874 -61065095331189 -61065095341307 -61065095581179 -61065095594446 -61065095607890 -61065095631056 -61065095660301 -61065095838968 -61065095853257 -61065095866572 -61065095973516 -61065095988020 -61065096015436 -61065096038872 -61065096050033 -61065096248709 -61065096262922 -61065096276392 -61065096289406 -61065096302678 -61065096461558 -61065096477284 -61065096493763 -61065096688717 -61065096712220 -61065096844678 -61065096934476 -61065097070776 -61065097100242 -61065097180217 -61065097194238 -61065097218903 -61065097309557 -61065097328393 -61065097357443 -61065097545259 -61065097639056 -61065097728976 -61065097760457 -61065097775424 -61065097869313 -61065097890293 -61065097908904 -61065097925631 -61065097949382 -61065097971682 -61065097984940 -61065098079363 -61065098102799 -61065098119593 -61065098134747 -61065098157901 -61065098251337 -61065098268816 -61065098295141 -61065098402496 -61065098427981 -61065098539099 -61065098566872 -61065098712157 -61065098731341 -61065098869514 -61065099054952 -61065099070117 -61065099093897 -61065099113081 -61065099269172 -61065099296978 -61065099312151 -61065099329450 -61065099347342 -61065099561802 -61065099579853 -61065099671995 -61065099694811 -61065099846134 -61065099862261 -61065100041718 -61065100197439 -61065100225192 -61065100312016 -61065100328450 -61065100348843 -61065100499040 -61065100518088 -61065100533159 -61065100556323 -61065100643188 -61065100756466 -61065100771279 -61065100904866 -61065100930122 -61065100947029 -61065100963294 -61065100981318 -61065101141540 -61065101157645 -61065101176629 -61065101201391 -61065101214586 -61065101315367 -61065101337607 -61065101353568 -61065101365508 -61065101491771 -61065101510969 -61065101535875 -61065101729750 -61065101748896 -61065101761427 -61065101861151 -61065101884391 -61065101899442 -61065102091055 -61065102218739 -61065102233994 -61065102330367 -61065102350284 -61065102369464 -61065102535772 -61065102549570 -61065102566936 -61065102598342 -61065102611764 -61065102626789 -61065102804844 -61065102821373 -61065102846901 -61065103021398 -61065103041303 -61065103069804 -61065103187568 -61065103208446 -61065103330621 -61065103538480 -61065103685080 -61065103713674 -61065103805613 -61065103980126 -61065103994900 -61065104129153 -61065104147562 -61065104172279 -61065104284352 -61065104311989 -61065104453219 -61065104469730 -61065104490177 -61065104642666 -61065104761330 -61065104875000 -61065105037350 -61065105182149 -61065105198511 -61065105321454 -61065105346848 -61065105368302 -61065105502215 -61065105635631 -61065105657280 -61065105681900 -61065105769190 -61065105785691 -61065105810855 -61065105831445 -61065105961590 -61065106103104 -61065106238551 -61065106263290 -61065106417348 -61065106433474 -61065106458496 -61065106481124 -61065106588490 -61065106611326 -61065106834786 -61065107032023 -61065107219273 -61065107243653 -61065107265005 -61065107442344 -61065107546059 -61065107569297 -61065107690417 -61065107706675 -61065107824566 -61065107840230 -61065107963337 -61065108277571 -61065108299407 -61065108321975 -61065108521537 -61065108654732 -61065108779995 -61065108799729 -61065108903775 -61065108924709 -61065109027226 -61065109051042 -61065109175899 -61065109219449 -61065109243043 -61065109373010 -61065109594806 -61065109779923 -61065109906804 -61065110009146 -61065110030779 -61065110125783 -61065110221663 -61065110370808 -61065110492958 -61065110594433 -61065110767002 -61065110783670 -61065110805365 -61065110827549 -61065110844022 -61065111017917 -61065111036739 -61065111052987 -61065111244475 -61065111268655 -61065111306821 -61065111323609 -61065111478739 -61065111678806 -61065111920064 -61065111939283 -61065111964444 -61065111980684 -61065112235239 -61065112419524 -61065112464954 -61065112752790 -61065112769638 -61065112786621 -61065112811520 -61065113014948 -61065113035129 -61065113049965 -61065113064435 -61065113211697 -61065113320667 -61065113343042 -61065113523566 -61065113549005 -61065113682909 -61065113785463 -61065113928731 -61065113962759 -61065113987798 -61065114156280 -61065114171473 -61065114190583 -61065114335421 -61065114570295 -61065114594342 -61065114803548 -61065114957518 -61065114974958 -61065114991695 -61065115169914 -61065115193164 -61065115208078 -61065115224473 -61065115384397 -61065115400614 -61065115415778 -61065115438820 -61065115577693 -61065115595285 -61065115609975 -61065115631519 -61065115723914 -61065115739053 -61065115757604 -61065115952176 -61065115982114 -61065116020318 -61065116117916 -61065116134512 -61065116154423 -61065116338641 -61065116353727 -61065116375584 -61065116396896 -61065116575168 -61065116778400 -61065116795457 -61065116810014 -61065116829902 -61065117053758 -61065117076100 -61065117091001 -61065117105510 -61065117129471 -61065117290694 -61065117307988 -61065117324041 -61065117348673 -61065117539339 -61065117758347 -61065117774530 -61065117791586 -61065117815730 -61065118040217 -61065118228135 -61065118248636 -61065118272578 -61065118454781 -61065118549653 -61065118565935 -61065118590678 -61065118613959 -61065118752846 -61065118769593 -61065118795257 -61065118883832 -61065118900602 -61065118924868 -61065118948185 -61065118962740 -61065119091107 -61065119108344 -61065119141247 -61065119219972 -61065119236995 -61065119257941 -61065119386644 -61065119411032 -61065119426766 -61065119442141 -61065119464146 -61065119642222 -61065119692287 -61065119705235 -61065119879218 -61065120034152 -61065120159794 -61065120197895 -61065120219950 -61065120244270 -61065120338294 -61065120466925 -61065120496556 -61065120517384 -61065120533228 -61065120684145 -61065120723757 -61065120739830 -61065120755194 -61065120781104 -61065120947684 -61065120976393 -61065120996406 -61065121143992 -61065121276282 -61065121455420 -61065121475286 -61065121499620 -61065121672810 -61065121898812 -61065122011141 -61065122033537 -61065122198507 -61065122360177 -61065122472113 -61065122494027 -61065122741030 -61065122760459 -61065122946419 -61065123075621 -61065123213455 -61065123407426 -61065123548681 -61065123715759 -61065123849959 -61065124014692 -61065124043330 -61065124151760 -61065124286260 -61065124468907 -61065124679171 -61065124786596 -61065124907927 -61065124922341 -61065124935596 -61065124949253 -61065124961999 -61065124972138 -61065124985657 -61065124996043 -61065125078641 -61065125094558 -61065125112871 -61065125125327 -61065125139399 -61065125149252 -61065125277909 -61065125291265 -61065125304841 -61065125318371 -61065125331593 -61065125341624 -61065125422733 -61065125631205 -61065125647478 -61065125751317 -61065125767094 -61065125880884 -61065125894716 -61065125907619 -61065125921467 -61065125934548 -61065125947170 -61065125956624 -61065126129388 -61065126144137 -61065126157377 -61065126170798 -61065126184244 -61065126197319 -61065126211512 -61065126293184 -61065126311120 -61065126323828 -61065126336898 -61065126352364 -61065126362805 -61065126444929 -61065126460753 -61065126474733 -61065126559783 -61065126573875 -61065126596161 -61065126753476 -61065126773404 -61065126787753 -61065126801476 -61065126885309 -61065126909973 -61065127087185 -61065127103232 -61065127116818 -61065127127095 -61065127146782 -61065127229132 -61065127242872 -61065127255909 -61065127268964 -61065127281729 -61065127291622 -61065127370966 -61065127384857 -61065127397898 -61065127411126 -61065127424037 -61065127436719 -61065127446449 -61065127527125 -61065127543254 -61065127555851 -61065127568909 -61065127578528 -61065127724797 -61065127829537 -61065127844037 -61065127857441 -61065127870827 -61065127888085 -61065127901290 -61065127911376 -61065127999501 -61065128180661 -61065128213046 -61065128249013 -61065128362760 -61065128395599 -61065128427315 -61065128577703 -61065128598090 -61065128701778 -61065128729653 -61065128774197 -61065128796064 -61065128973572 -61065128992603 -61065129185492 -61065129426248 -61065129578115 -61065129737414 -61065129764373 -61065129942255 -61065130081385 -61065130105922 -61065130129873 -61065130295037 -61065130393787 -61065130530949 -61065130689984 -61065130867710 -61065131054208 -61065131239302 -61065131418277 -61065131443533 -61065131618943 -61065131673802 -61065131832886 -61065131978072 -61065132199620 -61065132382670 -61065132600289 -61065132707559 -61065132841350 -61065132932329 -61065133092343 -61065133242407 -61065133332385 -61065133478227 -61065133624483 -61065133733134 -61065133866301 -61065134004162 -61065134205226 -61065134352105 -61065134488635 -61065134514457 -61065134539071 -61065134734172 -61065134758769 -61065134884524 -61065135024405 -61065135049935 -61065135212527 -61065135323520 -61065135420995 -61065135554252 -61065135742905 -61065135891517 -61065136014463 -61065136167317 -61065136343331 -61065136455669 -61065136481129 -61065136676467 -61065136816349 -61065136917292 -61065136940784 -61065137094743 -61065137236463 -61065137409349 -61065137552574 -61065137577275 -61065137692824 -61065137812801 -61065137940286 -61065138047596 -61065138181848 -61065138198005 -61065138213890 -61065138229043 -61065138241882 -61065138406757 -61065138424968 -61065138442058 -61065138466419 -61065138610795 -61065138630838 -61065138646556 -61065138662135 -61065138675453 -61065138823495 -61065138840694 -61065138858356 -61065138874330 -61065139001310 -61065139018630 -61065139034387 -61065139050040 -61065139202254 -61065139281865 -61065139300115 -61065139310040 -61065139323170 -61065139333079 -61065139352115 -61065139362057 -61065139467978 -61065139482881 -61065139495766 -61065139508793 -61065139518559 -61065139709973 -61065139825485 -61065139967737 -61065139982199 -61065139994296 -61065140103829 -61065140117887 -61065140142462 -61065140152712 -61065140373910 -61065140556122 -61065140571680 -61065140585114 -61065140600541 -61065140831150 -61065141035863 -61065141188773 -61065141204207 -61065141217520 -61065141229853 -61065141243494 -61065141252907 -61065141403280 -61065141417358 -61065141435233 -61065141449077 -61065141462681 -61065141473866 -61065141699437 -61065141726463 -61065141740005 -61065141753825 -61065141864489 -61065142072759 -61065142090926 -61065142256121 -61065142386696 -61065142401142 -61065142414181 -61065142427347 -61065142503482 -61065142517646 -61065142530382 -61065142543326 -61065142556251 -61065142568257 -61065142671824 -61065142688682 -61065142702376 -61065142715452 -61065142795393 -61065142942890 -61065142957499 -61065142970696 -61065142987535 -61065143070077 -61065143085005 -61065143096272 -61065143122614 -61065143142287 -61065143267576 -61065143487067 -61065143503259 -61065143516029 -61065143529090 -61065143540129 -61065143633096 -61065143708819 -61065143722390 -61065143738258 -61065143811805 -61065143829603 -61065143859388 -61065143944109 -61065144035600 -61065144055611 -61065144179495 -61065144313013 -61065144460312 -61065144478956 -61065144507700 -61065144531725 -61065144607263 -61065144621242 -61065144636966 -61065144649404 -61065144662094 -61065144735078 -61065144749011 -61065144761802 -61065144774359 -61065144787474 -61065144797359 -61065144869704 -61065144883436 -61065144899951 -61065145003426 -61065145016959 -61065145029581 -61065145042251 -61065145055045 -61065145064573 -61065145152857 -61065145166769 -61065145179281 -61065145191984 -61065145201558 -61065145272415 -61065145285954 -61065145298379 -61065145310951 -61065145323607 -61065145333518 -61065145403118 -61065145416261 -61065145429448 -61065145444125 -61065145467197 -61065145545006 -61065145664151 -61065145677710 -61065145691176 -61065145706579 -61065145719637 -61065145729498 -61065145741585 -61065145857140 -61065145871455 -61065145885221 -61065145898179 -61065145907702 -61065145920994 -61065145934163 -61065145944332 -61065146051837 -61065146065377 -61065146077801 -61065146090526 -61065146104025 -61065146184266 -61065146197929 -61065146210921 -61065146223411 -61065146233777 -61065146310794 -61065146324211 -61065146337129 -61065146349496 -61065146362057 -61065146371546 -61065146441905 -61065146455052 -61065146468102 -61065146480502 -61065146493521 -61065146624130 -61065146640605 -61065146753613 -61065146767680 -61065146780758 -61065146793479 -61065146806541 -61065146912370 -61065146926518 -61065146940080 -61065146949765 -61065147079535 -61065147095322 -61065147109014 -61065147119483 -61065147251553 -61065147265716 -61065147278422 -61065147291453 -61065147434144 -61065147449411 -61065147465508 -61065147475318 -61065147611070 -61065147687288 -61065147870376 -61065148068911 -61065148086425 -61065148102743 -61065148124215 -61065148147661 -61065148163148 -61065148173324 -61065148323692 -61065148337751 -61065148350679 -61065148360259 -61065148454830 -61065148469271 -61065148478857 -61065148494182 -61065148507860 -61065148521478 -61065148531924 -61065148611825 -61065148643088 -61065148655449 -61065148667366 -61065148679440 -61065148694028 -61065148832556 -61065148872372 -61065148895725 -61065149095102 -61065149370852 -61065149403707 -61065149415945 -61065149428195 -61065149443321 -61065149723882 -61065149742205 -61065149755985 -61065149769252 -61065149786377 -61065149920024 -61065149943802 -61065149962093 -61065150054479 -61065150076586 -61065150097882 -61065150234631 -61065150457810 -61065150472479 -61065150486094 -61065150498709 -61065150508927 -61065150582024 -61065150595214 -61065150608198 -61065150620040 -61065150631945 -61065150709397 -61065150850817 -61065150864184 -61065150884639 -61065150961708 -61065150977756 -61065151184430 -61065151278667 -61065151293398 -61065151306477 -61065151319406 -61065151332170 -61065151348939 -61065151359570 -61065151489556 -61065151661110 -61065151675847 -61065151688673 -61065151702334 -61065151712179 -61065151877170 -61065151892882 -61065151905863 -61065151919535 -61065152048838 -61065152066818 -61065152078785 -61065152093432 -61065152108409 -61065152123560 -61065152318689 -61065152341280 -61065152354282 -61065152573116 -61065152588004 -61065152600760 -61065152614454 -61065152624227 -61065152637645 -61065152647351 -61065152657721 -61065152799491 -61065152815138 -61065152830533 -61065152847911 -61065152976851 -61065152996117 -61065153011499 -61065153232352 -61065153270323 -61065153298961 -61065153325394 -61065153490919 -61065153523900 -61065153553107 -61065153581717 -61065153697302 -61065153731303 -61065153761388 -61065153864636 -61065154005220 -61065154032681 -61065154059376 -61065154232056 -61065154252109 -61065154268764 -61065154282027 -61065154431786 -61065154454261 -61065154582809 -61065154601125 -61065154615128 -61065154625845 -61065154644707 -61065154823081 -61065154946488 -61065154974314 -61065155071699 -61065155155142 -61065155359005 -61065155390935 -61065155407776 -61065155566007 -61065155596523 -61065155612419 -61065155720405 -61065155753985 -61065155781253 -61065155865320 -61065155902398 -61065155920021 -61065155994419 -61065156099284 -61065156355763 -61065156371766 -61065156478497 -61065156558941 -61065156685733 -61065156700751 -61065156713939 -61065156726634 -61065156743284 -61065156755564 -61065156857284 -61065156870860 -61065156883277 -61065156895988 -61065156908716 -61065156923329 -61065157002569 -61065157119412 -61065157135504 -61065157228488 -61065157242655 -61065157255660 -61065157268306 -61065157281436 -61065157414468 -61065157555129 -61065157568850 -61065157581882 -61065157685915 -61065157704084 -61065157713617 -61065157725882 -61065157741088 -61065157752968 -61065157909756 -61065157924163 -61065157937091 -61065157949889 -61065157962885 -61065157972587 -61065158119982 -61065158134913 -61065158240282 -61065158253688 -61065158278557 -61065158303037 -61065158397024 -61065158410305 -61065158423141 -61065158438221 -61065158448466 -61065158588877 -61065158610271 -61065158626328 -61065158636250 -61065158709099 -61065158722286 -61065158734866 -61065158747763 -61065158760390 -61065158886479 -61065158900925 -61065159076565 -61065159090574 -61065159103491 -61065159116274 -61065159128946 -61065159142115 -61065159151836 -61065159226244 -61065159241584 -61065159254209 -61065159266633 -61065159279663 -61065159289844 -61065159431798 -61065159446422 -61065159459282 -61065159474224 -61065159484414 -61065159674142 -61065159688641 -61065159701564 -61065159714645 -61065159724628 -61065159736665 -61065159842000 -61065159856062 -61065159865639 -61065159944390 -61065159960579 -61065159973491 -61065159986433 -61065159996211 -61065160051506 -61065160064567 -61065160074153 -61065160086912 -61065160099562 -61065160112699 -61065160122372 -61065160205741 -61065160219831 -61065160249257 -61065160259921 -61065160385351 -61065160573435 -61065160601506 -61065160627075 -61065160702621 -61065160830028 -61065160863341 -61065160894557 -61065161084990 -61065161116801 -61065161164419 -61065161253692 -61065161287277 -61065161319827 -61065161346919 -61065161552571 -61065161584476 -61065161609586 -61065161841479 -61065161866868 -61065161915986 -61065161936743 -61065162044042 -61065162073490 -61065162103802 -61065162239235 -61065162264436 -61065162374727 -61065162403871 -61065162590725 -61065162624081 -61065162653292 -61065162829488 -61065162854246 -61065163008517 -61065163213749 -61065163243632 -61065163268945 -61065163459351 -61065163658302 -61065163712053 -61065163741918 -61065163938715 -61065163958151 -61065164106501 -61065164243862 -61065164385110 -61065164410155 -61065164432021 -61065164446238 -61065164587750 -61065164614172 -61065164638794 -61065164763211 -61065164780074 -61065164896256 -61065165064989 -61065165240500 -61065165256675 -61065165277443 -61065165429122 -61065165444792 -61065165623793 -61065165809364 -61065166000565 -61065166022451 -61065166146170 -61065166286451 -61065166443865 -61065166539504 -61065166555384 -61065166745381 -61065166768946 -61065166793784 -61065166922743 -61065166942148 -61065166962285 -61065167123985 -61065167299552 -61065167321327 -61065167493691 -61065167514065 -61065167530168 -61065167546810 -61065167645079 -61065167661643 -61065167681417 -61065167775772 -61065167973200 -61065167992576 -61065168025310 -61065168048053 -61065168132919 -61065168168236 -61065168337233 -61065168366866 -61065168389092 -61065168401212 -61065168580320 -61065168713078 -61065168750808 -61065169024153 -61065169168173 -61065169296289 -61065169415398 -61065169434459 -61065169605032 -61065169622276 -61065169640901 -61065169793190 -61065169817059 -61065169942457 -61065170020749 -61065170196016 -61065170211988 -61065170228434 -61065170381146 -61065170472060 -61065170655504 -61065170785854 -61065170805547 -61065170983514 -61065171162758 -61065171178844 -61065171194740 -61065171362743 -61065171378911 -61065171522021 -61065171664617 -61065171689420 -61065171706964 -61065171725321 -61065171852431 -61065171882332 -61065171898714 -61065171914549 -61065172113027 -61065172132502 -61065172151286 -61065172293882 -61065172313264 -61065172434614 -61065172451570 -61065172606287 -61065172710512 -61065172849216 -61065172865927 -61065172894447 -61065173089313 -61065173278165 -61065173303201 -61065173487468 -61065173501277 -61065173517857 -61065173551654 -61065173567735 -61065173692341 -61065173709589 -61065173735508 -61065173753657 -61065173882130 -61065173901371 -61065174067893 -61065174086086 -61065174267460 -61065174393606 -61065174416916 -61065174439439 -61065174451005 -61065174586333 -61065174604449 -61065174628722 -61065174646184 -61065174661288 -61065174778011 -61065174807852 -61065174832606 -61065174974964 -61065175187728 -61065175304327 -61065175319942 -61065175350083 -61065175366233 -61065175380906 -61065175463637 -61065175488322 -61065175503954 -61065175519490 -61065175541211 -61065175730610 -61065175757172 -61065175772911 -61065175899981 -61065176049936 -61065176066034 -61065176086357 -61065176107776 -61065176239418 -61065176256173 -61065176275340 -61065176430347 -61065176448163 -61065176618423 -61065176729983 -61065176757476 -61065176913541 -61065176929735 -61065176955097 -61065176974544 -61065177118105 -61065177227077 -61065177245303 -61065177257462 -61065177281519 -61065177301872 -61065177442366 -61065177459695 -61065177485955 -61065177503680 -61065177680253 -61065177715822 -61065177738630 -61065177760369 -61065177923747 -61065177956778 -61065178081565 -61065178099195 -61065178114545 -61065178139875 -61065178158705 -61065178282484 -61065178299876 -61065178315059 -61065178340815 -61065178483912 -61065178499679 -61065178515737 -61065178632912 -61065178775284 -61065178898429 -61065179035959 -61065179065921 -61065179192480 -61065179212007 -61065179227176 -61065179368417 -61065179395769 -61065179413860 -61065179551081 -61065179579074 -61065179670986 -61065179800497 -61065179818504 -61065179847392 -61065179991658 -61065180025876 -61065180047725 -61065180224251 -61065180344759 -61065180501333 -61065180629030 -61065180790267 -61065180905617 -61065180923420 -61065180947608 -61065181088387 -61065181283868 -61065181421245 -61065181548900 -61065181668902 -61065181781545 -61065181804912 -61065181991412 -61065182033248 -61065182193641 -61065182448160 -61065182464205 -61065182604530 -61065182624051 -61065182721174 -61065182853927 -61065182989719 -61065183109604 -61065183245104 -61065183392684 -61065183569375 -61065183703245 -61065183876447 -61065183895470 -61065184067553 -61065184091964 -61065184250186 -61065184266326 -61065184278818 -61065184396753 -61065184416120 -61065184440493 -61065184599237 -61065184628690 -61065184649662 -61065184799034 -61065184823073 -61065184845109 -61065184859913 -61065184973054 -61065184986704 -61065185001562 -61065185025077 -61065185128717 -61065185152290 -61065185173326 -61065185308851 -61065185327296 -61065185350480 -61065185373821 -61065185387718 -61065185496556 -61065185513582 -61065185530332 -61065185636841 -61065185653536 -61065185670460 -61065185696855 -61065185853398 -61065185879730 -61065185899958 -61065185912083 -61065185926988 -61065186045252 -61065186062494 -61065186090007 -61065186104802 -61065186240332 -61065186256146 -61065186434035 -61065186449091 -61065186575291 -61065186599799 -61065186620616 -61065186634919 -61065186817511 -61065186833437 -61065186852545 -61065186873885 -61065186889067 -61065187020064 -61065187132714 -61065187150058 -61065187164841 -61065187187661 -61065187349517 -61065187369448 -61065187509594 -61065187623907 -61065187650457 -61065187667774 -61065187682639 -61065187757850 -61065187787342 -61065187805909 -61065187817339 -61065187984507 -61065188028991 -61065188048553 -61065188183350 -61065188198361 -61065188218704 -61065188239787 -61065188254418 -61065188429030 -61065188445749 -61065188683335 -61065188700329 -61065188850126 -61065188876227 -61065189030078 -61065189195950 -61065189214667 -61065189229254 -61065189245118 -61065189345061 -61065189419656 -61065189435049 -61065189456580 -61065189569276 -61065189591311 -61065189682619 -61065189697846 -61065189716370 -61065189854195 -61065189869721 -61065189944669 -61065189959828 -61065189981719 -61065190126053 -61065190149803 -61065190355576 -61065190385017 -61065190401137 -61065190519254 -61065190672181 -61065190694978 -61065190841267 -61065190856751 -61065190882076 -61065190904604 -61065190996598 -61065191176628 -61065191297991 -61065191313404 -61065191337674 -61065191358971 -61065191481032 -61065191497944 -61065191512377 -61065191531706 -61065191552291 -61065191687059 -61065191703026 -61065191721051 -61065191745205 -61065191851990 -61065191874380 -61065191893140 -61065191994902 -61065192055307 -61065192071399 -61065192259300 -61065192440038 -61065192457358 -61065192471174 -61065192608044 -61065192640351 -61065192771344 -61065192886852 -61065192991428 -61065193138170 -61065193402989 -61065193427893 -61065193537131 -61065193550570 -61065193566096 -61065193641806 -61065193739685 -61065193753032 -61065193770819 -61065193919095 -61065194134154 -61065194147462 -61065194160197 -61065194269680 -61065194310907 -61065194335517 -61065194349054 -61065194516554 -61065194537532 -61065194677073 -61065194711410 -61065194725363 -61065194897148 -61065194911224 -61065194937113 -61065195067643 -61065195083706 -61065195097265 -61065195248573 -61065195286469 -61065195296594 -61065195319774 -61065195333436 -61065195562113 -61065195686665 -61065195706138 -61065195725155 -61065195738924 -61065195861239 -61065195876358 -61065195891873 -61065195916016 -61065195932760 -61065195943635 -61065196066327 -61065196232235 -61065196252561 -61065196266697 -61065196284446 -61065196465795 -61065196491011 -61065196516537 -61065196530147 -61065196541344 -61065196666176 -61065196684548 -61065196705226 -61065196840406 -61065196855365 -61065196868279 -61065196885527 -61065197019650 -61065197104304 -61065197121502 -61065197135421 -61065197300542 -61065197398267 -61065197418638 -61065197441260 -61065197529260 -61065197546962 -61065197572578 -61065197709362 -61065197729552 -61065197750072 -61065197770562 -61065197899329 -61065197914896 -61065198035619 -61065198051237 -61065198065158 -61065198207351 -61065198230246 -61065198244695 -61065198260375 -61065198272518 -61065198423589 -61065198440105 -61065198453372 -61065198473321 -61065198650450 -61065198758795 -61065198774030 -61065198894061 -61065199032514 -61065199102953 -61065199117697 -61065199281267 -61065199299634 -61065199313368 -61065199329378 -61065199477273 -61065199493305 -61065199633114 -61065199648473 -61065199668981 -61065199804426 -61065199821512 -61065199961453 -61065199975495 -61065199993804 -61065200194493 -61065200214173 -61065200335788 -61065200358390 -61065200507624 -61065200761012 -61065200780462 -61065200950774 -61065200966949 -61065200991328 -61065201147738 -61065201162788 -61065201185858 -61065201369818 -61065201394805 -61065201412874 -61065201426578 -61065201439228 -61065201557900 -61065201572716 -61065201606507 -61065201624275 -61065201830539 -61065201863621 -61065201987926 -61065202007462 -61065202154359 -61065202300823 -61065202315111 -61065202454683 -61065202476449 -61065202615398 -61065202759159 -61065202773389 -61065202788576 -61065202810329 -61065202905554 -61065202920197 -61065202940762 -61065203055685 -61065203083151 -61065203100788 -61065203116168 -61065203248196 -61065203266943 -61065203291704 -61065203302516 -61065203440023 -61065203454296 -61065203560121 -61065203574432 -61065203587851 -61065203607471 -61065203708722 -61065203722993 -61065203742414 -61065203858463 -61065203976418 -61065204066633 -61065204243367 -61065204257727 -61065204276837 -61065204295105 -61065204311477 -61065204427052 -61065204510566 -61065204525057 -61065204545264 -61065204630102 -61065204760558 -61065204774753 -61065204788100 -61065204808528 -61065205103683 -61065205131089 -61065205155801 -61065205305665 -61065205494067 -61065205636684 -61065205660551 -61065205675242 -61065205688368 -61065205701587 -61065205823067 -61065205906278 -61065206003354 -61065206016004 -61065206117735 -61065206236174 -61065206258377 -61065206274536 -61065206351812 -61065206366835 -61065206387376 -61065206405114 -61065206422301 -61065206573793 -61065206604290 -61065206619482 -61065206634788 -61065206719851 -61065206869205 -61065207115707 -61065207130823 -61065207315749 -61065207338192 -61065207360573 -61065207469561 -61065207493243 -61065207701977 -61065207955177 -61065208175965 -61065208332670 -61065208550890 -61065208711762 -61065208730408 -61065208861686 -61065209027256 -61065209152075 -61065209327208 -61065209346432 -61065209438929 -61065209634321 -61065209651270 -61065209737308 -61065209790737 -61065209804448 -61065209813894 -61065210010397 -61065210031378 -61065210049080 -61065210059771 -61065210238499 -61065210253279 -61065210263160 -61065210368346 -61065210383966 -61065210395666 -61065210527378 -61065210543960 -61065210562912 -61065210579669 -61065210589280 -61065210819416 -61065210837248 -61065210853780 -61065210996744 -61065211014191 -61065211033369 -61065211049263 -61065211064158 -61065211158155 -61065211174681 -61065211190653 -61065211206397 -61065211222158 -61065211411790 -61065211546075 -61065211562559 -61065211578456 -61065211594116 -61065211778987 -61065211923173 -61065211942296 -61065211960719 -61065211978588 -61065212181452 -61065212203337 -61065212228045 -61065212243880 -61065212261747 -61065212448356 -61065212469070 -61065212486793 -61065212504557 -61065212522271 -61065212540192 -61065212782454 -61065212810491 -61065212834365 -61065212854329 -61065212976210 -61065213004431 -61065213250399 -61065213268707 -61065213285705 -61065213302887 -61065213320462 -61065213338629 -61065213352066 -61065213510867 -61065213532872 -61065213546614 -61065213565132 -61065213717546 -61065213741037 -61065213759921 -61065213785990 -61065213803314 -61065214082446 -61065214305525 -61065214326376 -61065214344189 -61065214362220 -61065214538887 -61065214556893 -61065214574217 -61065214591497 -61065214604362 -61065214693719 -61065214752190 -61065214772242 -61065214784548 -61065215013025 -61065215030917 -61065215048475 -61065215061072 -61065215211631 -61065215231698 -61065215244406 -61065215398849 -61065215415927 -61065215428096 -61065215555449 -61065215577462 -61065215600659 -61065215612326 -61065215628048 -61065215742171 -61065215755027 -61065215891784 -61065215913165 -61065215930390 -61065216041522 -61065216055589 -61065216076435 -61065216094033 -61065216272855 -61065216286922 -61065216304079 -61065216321727 -61065216341415 -61065216452025 -61065216465596 -61065216674239 -61065216696924 -61065216715402 -61065216727180 -61065216875133 -61065216889321 -61065217114186 -61065217131525 -61065217257781 -61065217277585 -61065217293867 -61065217309651 -61065217449466 -61065217468087 -61065217488187 -61065217617614 -61065217634225 -61065217767271 -61065217786099 -61065217803989 -61065218004129 -61065218027187 -61065218043810 -61065218062857 -61065218076468 -61065218394568 -61065218425105 -61065218532634 -61065218553348 -61065218562677 -61065218575436 -61065218590320 -61065218599492 -61065218775569 -61065218796414 -61065218810593 -61065218824500 -61065218840717 -61065219011103 -61065219023483 -61065219038095 -61065219325005 -61065219338032 -61065219356701 -61065219377417 -61065219536593 -61065219551046 -61065219723844 -61065219811724 -61065219831952 -61065219842124 -61065219861964 -61065219881415 -61065220015324 -61065220041812 -61065220184048 -61065220198648 -61065220208783 -61065220351864 -61065220367013 -61065220387702 -61065220410092 -61065220485106 -61065220508065 -61065220641208 -61065220744345 -61065220829303 -61065220970237 -61065220986938 -61065221011004 -61065221028157 -61065221046525 -61065221255979 -61065221268750 -61065221280852 -61065221292522 -61065221308686 -61065221317330 -61065221458457 -61065221470587 -61065221481939 -61065221493043 -61065221500863 -61065221511451 -61065221600876 -61065221613043 -61065221623998 -61065221635233 -61065221643029 -61065221661466 -61065221764184 -61065221785812 -61065221904979 -61065221917092 -61065221928340 -61065221939433 -61065221950794 -61065221959046 -61065222076913 -61065222089618 -61065222100632 -61065222108407 -61065222188565 -61065222200316 -61065222211591 -61065222220543 -61065222331683 -61065222343355 -61065222355621 -61065222366608 -61065222374251 -61065222385558 -61065222396952 -61065222404806 -61065222519864 -61065222532259 -61065222543305 -61065222551302 -61065222561231 -61065222668136 -61065222680031 -61065222691455 -61065222699100 -61065222710000 -61065222722614 -61065222882217 -61065222906700 -61065222917085 -61065222928417 -61065222999112 -61065223008299 -61065223019667 -61065223110153 -61065223122929 -61065223133773 -61065223146908 -61065223160049 -61065223171209 -61065223179128 -61065223187612 -61065223264765 -61065223277128 -61065223287830 -61065223295617 -61065223453101 -61065223586555 -61065223672221 -61065223824723 -61065223845376 -61065223863104 -61065223973320 -61065223986938 -61065224018459 -61065224037875 -61065224056118 -61065224073507 -61065224083095 -61065224291251 -61065224311226 -61065224483419 -61065224495021 -61065224509616 -61065224518297 -61065224535265 -61065224619621 -61065224632275 -61065224640522 -61065224652108 -61065224660480 -61065224751591 -61065224764363 -61065224775079 -61065224797494 -61065224816125 -61065224985191 -61065224995133 -61065225007042 -61065225087753 -61065225103174 -61065225120128 -61065225133962 -61065225144332 -61065225219937 -61065225235094 -61065225251058 -61065225270506 -61065225348525 -61065225364671 -61065225386900 -61065225407986 -61065225619248 -61065225752680 -61065225771224 -61065225788323 -61065225805886 -61065225823102 -61065225838889 -61065225988679 -61065226005323 -61065226025867 -61065226041919 -61065226057795 -61065226073998 -61065226206369 -61065226224148 -61065226239530 -61065226258427 -61065226275289 -61065226292417 -61065226389148 -61065226406044 -61065226421967 -61065226437368 -61065226453292 -61065226468948 -61065226480979 -61065226584923 -61065226601998 -61065226619079 -61065226636721 -61065226653914 -61065226670657 -61065226809314 -61065226826940 -61065226843137 -61065226860329 -61065226873016 -61065226967104 -61065226983773 -61065226999295 -61065227015292 -61065227169521 -61065227186640 -61065227204870 -61065227337137 -61065227352396 -61065227368125 -61065227382705 -61065227398539 -61065227413454 -61065227482448 -61065227497916 -61065227512904 -61065227526518 -61065227541293 -61065227556100 -61065227625896 -61065227642348 -61065227657570 -61065227672555 -61065227688374 -61065227843124 -61065227859701 -61065227871676 -61065227947876 -61065228045782 -61065228062752 -61065228080767 -61065228169106 -61065228298507 -61065228314750 -61065228331297 -61065228344010 -61065228359585 -61065228375360 -61065228391536 -61065228555249 -61065228575977 -61065228593268 -61065228608517 -61065228624069 -61065228701867 -61065228718981 -61065228734572 -61065228750078 -61065228765413 -61065228781188 -61065228793145 -61065228956445 -61065228973033 -61065228988632 -61065229004273 -61065229016045 -61065229027479 -61065229043321 -61065229271471 -61065229296041 -61065229447882 -61065229471399 -61065229493265 -61065229511756 -61065229540352 -61065229704299 -61065229718329 -61065229728033 -61065229743606 -61065229753412 -61065229957333 -61065229977516 -61065229995294 -61065230013267 -61065230032047 -61065230044924 -61065230283158 -61065230492812 -61065230511025 -61065230684496 -61065230701811 -61065230720209 -61065230737609 -61065230755665 -61065230773715 -61065230787489 -61065230953018 -61065230971057 -61065230988065 -61065231006596 -61065231023808 -61065231038003 -61065231215163 -61065231233572 -61065231253600 -61065231271815 -61065231294656 -61065231569622 -61065231588357 -61065231607021 -61065231625293 -61065231643958 -61065231661799 -61065231674521 -61065231894638 -61065231912091 -61065231930199 -61065231947833 -61065232092052 -61065232107232 -61065232122686 -61065232143305 -61065232158261 -61065232174687 -61065232331025 -61065232348199 -61065232361206 -61065232538417 -61065232549317 -61065232562401 -61065232580495 -61065232702212 -61065232722594 -61065232737800 -61065232753263 -61065232762922 -61065232867784 -61065232883271 -61065232897503 -61065232917578 -61065233021590 -61065233040451 -61065233123153 -61065233136554 -61065233149998 -61065233164141 -61065233326000 -61065233340441 -61065233353701 -61065233510814 -61065233525226 -61065233537813 -61065233552223 -61065233687204 -61065233708754 -61065233722507 -61065233731820 -61065233833909 -61065233847619 -61065233862420 -61065233875905 -61065233956034 -61065234046869 -61065234063124 -61065234078323 -61065234155064 -61065234172408 -61065234185404 -61065234197247 -61065234214982 -61065234292243 -61065234307197 -61065234319966 -61065234332903 -61065234351899 -61065234369700 -61065234382769 -61065234494460 -61065234507366 -61065234520566 -61065234537551 -61065234634486 -61065234648817 -61065234661888 -61065234776679 -61065234792843 -61065234805817 -61065234926394 -61065234946472 -61065235086432 -61065235100300 -61065235112978 -61065235129780 -61065235210768 -61065235230802 -61065235243605 -61065235253011 -61065235393578 -61065235483607 -61065235497227 -61065235509831 -61065235529511 -61065235547605 -61065235557914 -61065235648839 -61065235668558 -61065235783779 -61065235804043 -61065235819908 -61065235835017 -61065235844779 -61065235962431 -61065235976589 -61065235994115 -61065236160488 -61065236247775 -61065236260777 -61065236275032 -61065236319387 -61065236333285 -61065236477413 -61065236495745 -61065236516426 -61065236529985 -61065236539293 -61065236625906 -61065236743341 -61065236761960 -61065236838171 -61065236970783 -61065236984650 -61065236997537 -61065237012286 -61065237033204 -61065237166566 -61065237311027 -61065237324840 -61065237338877 -61065237362993 -61065237452442 -61065237466063 -61065237491336 -61065237598450 -61065237620197 -61065237830280 -61065237843913 -61065237858687 -61065237879182 -61065237997010 -61065238180608 -61065238199624 -61065238326045 -61065238342428 -61065238356712 -61065238365780 -61065238595356 -61065238744524 -61065238757067 -61065238771200 -61065238851896 -61065238869681 -61065238881814 -61065238895745 -61065238905663 -61065239063784 -61065239075944 -61065239087840 -61065239253156 -61065239273570 -61065239348359 -61065239358482 -61065239370271 -61065239382900 -61065239401664 -61065239415959 -61065239505500 -61065239523659 -61065239540555 -61065239553206 -61065239562147 -61065239652153 -61065239864363 -61065239878427 -61065239891493 -61065239907113 -61065239929141 -61065240015065 -61065240091733 -61065240171579 -61065240186027 -61065240198885 -61065240208385 -61065240278510 -61065240299077 -61065240427483 -61065240561198 -61065240573771 -61065240586410 -61065240601562 -61065240671121 -61065240692134 -61065240914043 -61065240926988 -61065240939476 -61065240956217 -61065241066194 -61065241087873 -61065241104990 -61065241203886 -61065241224811 -61065241423955 -61065241637720 -61065241651078 -61065241663256 -61065241671516 -61065241683256 -61065241694457 -61065241702487 -61065241822465 -61065241836050 -61065241854209 -61065241972037 -61065241987210 -61065242006903 -61065242176203 -61065242198643 -61065242385749 -61065242414351 -61065242427302 -61065242517178 -61065242537588 -61065242550642 -61065242563279 -61065242669888 -61065242680788 -61065242863412 -61065242878991 -61065242888224 -61065242983479 -61065243055102 -61065243135043 -61065243301023 -61065243316283 -61065243463286 -61065243548536 -61065243562239 -61065243576146 -61065243678516 -61065243692205 -61065243705659 -61065243723693 -61065243821537 -61065243835375 -61065244054077 -61065244069253 -61065244084458 -61065244104662 -61065244203439 -61065244222667 -61065244341348 -61065244359667 -61065244378138 -61065244537401 -61065244551995 -61065244569225 -61065244699921 -61065244721642 -61065244867526 -61065244880962 -61065244894215 -61065244913707 -61065245052189 -61065245184674 -61065245201646 -61065245211662 -61065245323940 -61065245342646 -61065245361372 -61065245564510 -61065245693857 -61065245734239 -61065245748719 -61065245769344 -61065245910440 -61065245925401 -61065245939113 -61065245957995 -61065246115775 -61065246131162 -61065246145505 -61065246159567 -61065246287110 -61065246303292 -61065246316903 -61065246334167 -61065246347024 -61065246557830 -61065246573129 -61065246586868 -61065246599642 -61065246613332 -61065246748915 -61065246763960 -61065246778016 -61065246790611 -61065246804882 -61065246965293 -61065246980950 -61065246994590 -61065247007575 -61065247021615 -61065247149237 -61065247164842 -61065247181663 -61065247191798 -61065247205393 -61065247336077 -61065247352111 -61065247365627 -61065247375673 -61065247564275 -61065247578929 -61065247592933 -61065247602543 -61065247618880 -61065247727793 -61065247742213 -61065247756367 -61065247770730 -61065248033932 -61065248052692 -61065248065627 -61065248074937 -61065248218560 -61065248231752 -61065248241494 -61065248256711 -61065248265773 -61065248281390 -61065248293899 -61065248369551 -61065248455971 -61065248468310 -61065248482114 -61065248529898 -61065248540554 -61065248553377 -61065248569763 -61065248578962 -61065248768237 -61065248779441 -61065248788832 -61065248798075 -61065248807408 -61065248818480 -61065248833899 -61065248962036 -61065248982808 -61065248997599 -61065249090154 -61065249111266 -61065249137851 -61065249154156 -61065249291664 -61065249312263 -61065249332425 -61065249351869 -61065249368401 -61065249432992 -61065249454591 -61065249469080 -61065249546276 -61065249566166 -61065249616608 -61065249695946 -61065249717135 -61065249735045 -61065249843322 -61065249865189 -61065249951839 -61065249974227 -61065249992622 -61065250008391 -61065250022933 -61065250039664 -61065250057826 -61065250073538 -61065250090500 -61065250134722 -61065250219196 -61065250241219 -61065250262227 -61065250327425 -61065250351339 -61065250371289 -61065250399258 -61065250420475 -61065250437472 -61065250575977 -61065250587043 -61065250598781 -61065250654034 -61065250674248 -61065250684242 -61065250694054 -61065250785339 -61065250842361 -61065250937969 -61065250959492 -61065250975772 -61065250985332 -61065251040223 -61065251100300 -61065251111442 -61065251121894 -61065251131218 -61065251209160 -61065251223022 -61065251232405 -61065251244097 -61065251254026 -61065251305165 -61065251324300 -61065251339181 -61065251412728 -61065251422775 -61065251435418 -61065251444518 -61065251460418 -61065251510487 -61065251520801 -61065251533537 -61065251610288 -61065251619966 -61065251747188 -61065251757176 -61065251809934 -61065251820622 -61065251832249 -61065251885164 -61065251950998 -61065251963552 -61065252034713 -61065252044812 -61065252093021 -61065252143076 -61065252153055 -61065252232276 -61065252242039 -61065252255332 -61065252264867 -61065252355469 -61065252410121 -61065252422652 -61065252434368 -61065252487750 -61065252502041 -61065252520127 -61065252578091 -61065252598297 -61065252607786 -61065252657821 -61065252667620 -61065252683755 -61065252692831 -61065252752096 -61065252764424 -61065252781272 -61065252791319 -61065252862693 -61065252873657 -61065252889332 -61065252898506 -61065252950868 -61065252960881 -61065253008381 -61065253059478 -61065253071893 -61065253084527 -61065253093935 -61065253103333 -61065253151714 -61065253161219 -61065253251572 -61065253261606 -61065253272039 -61065253327655 -61065253338238 -61065253353960 -61065253363497 -61065253379983 -61065253389212 -61065253398519 -61065253448903 -61065253460186 -61065253471167 -61065253539703 -61065253617226 -61065253647025 -61065253669687 -61065253742601 -61065253767444 -61065253791222 -61065253808853 -61065253893363 -61065253990531 -61065254014668 -61065254038283 -61065254061259 -61065254123373 -61065254145221 -61065254166776 -61065254192645 -61065254278018 -61065254365096 -61065254427440 -61065254447989 -61065254460379 -61065254470084 -61065254608992 -61065254632835 -61065254643120 -61065254652861 -61065254669548 -61065254682773 -61065254703415 -61065254713298 -61065254728049 -61065254736678 -61065254784826 -61065254795423 -61065254806587 -61065254814427 -61065254822091 -61065254833252 -61065254951801 -61065254965237 -61065254977907 -61065255036240 -61065255089073 -61065255102510 -61065255111816 -61065255127318 -61065255185091 -61065255206299 -61065255223826 -61065255239512 -61065255248821 -61065255262063 -61065255273177 -61065255290526 -61065255300130 -61065255416875 -61065255438936 -61065255449971 -61065255559409 -61065255669671 -61065255681433 -61065255694113 -61065255703289 -61065255756888 -61065255779339 -61065255799460 -61065255814027 -61065255822033 -61065255931118 -61065255942205 -61065255953578 -61065256019086 -61065256039553 -61065256051813 -61065256147041 -61065256159702 -61065256269558 -61065256286030 -61065256296028 -61065256422156 -61065256442897 -61065256453691 -61065256555676 -61065256565554 -61065256576286 -61065256629934 -61065256638919 -61065256651427 -61065256659506 -61065256675062 -61065256683194 -61065256797753 -61065256806588 -61065256821460 -61065256830375 -61065256847191 -61065256855400 -61065256973512 -61065257020752 -61065257031318 -61065257046371 -61065257054486 -61065257105711 -61065257115270 -61065257127030 -61065257134860 -61065257146423 -61065257156697 -61065257167442 -61065257177062 -61065257294751 -61065257303498 -61065257315150 -61065257323419 -61065257335062 -61065257343287 -61065257358915 -61065257367234 -61065257378959 -61065257387459 -61065257495965 -61065257553227 -61065257565202 -61065257578197 -61065257593207 -61065257722337 -61065257745415 -61065257766185 -61065257778402 -61065257795596 -61065257907629 -61065257929078 -61065257939620 -61065257994346 -61065258011820 -61065258022271 -61065258073721 -61065258142474 -61065258159491 -61065258178847 -61065258240836 -61065258301171 -61065258325055 -61065258335735 -61065258348994 -61065258358297 -61065258465092 -61065258475623 -61065258488412 -61065258502150 -61065258522371 -61065258634128 -61065258653730 -61065258671188 -61065258693154 -61065258707860 -61065258716960 -61065258797152 -61065258816530 -61065258834310 -61065258887163 -61065258912660 -61065258922272 -61065258935041 -61065258951154 -61065258966741 -61065259046100 -61065259061892 -61065259114728 -61065259127970 -61065259137625 -61065259152725 -61065259172728 -61065259182766 -61065259298386 -61065259315311 -61065259328445 -61065259338097 -61065259352956 -61065259373314 -61065259383429 -61065259392830 -61065259446780 -61065259463886 -61065259475687 -61065259493641 -61065259553497 -61065259574866 -61065259585163 -61065259638218 -61065259653840 -61065259663295 -61065259675540 -61065259724809 -61065259778795 -61065259789702 -61065259802379 -61065259812142 -61065259860170 -61065259873385 -61065259883843 -61065259903572 -61065259918662 -61065259979143 -61065259993408 -61065260024884 -61065260043559 -61065260053375 -61065260109695 -61065260126148 -61065260135262 -61065260185195 -61065260201474 -61065260215460 -61065260354032 -61065260372440 -61065260381947 -61065260390427 -61065260440641 -61065260453113 -61065260461699 -61065260508335 -61065260518357 -61065260533162 -61065260552287 -61065260566624 -61065260619729 -61065260636968 -61065260652076 -61065260660624 -61065260678056 -61065260696797 -61065260706962 -61065260773084 -61065260788237 -61065260796926 -61065260836482 -61065260943426 -61065260953471 -61065260969181 -61065260986444 -61065261001526 -61065261025452 -61065261087917 -61065261188967 -61065261203785 -61065261212388 -61065261224209 -61065261321164 -61065261334751 -61065261343747 -61065261388456 -61065261399077 -61065261409775 -61065261456988 -61065261469560 -61065261478542 -61065261497813 -61065261511396 -61065261590659 -61065261603862 -61065261612486 -61065261629610 -61065261648422 -61065261657271 -61065261718361 -61065261730974 -61065261739594 -61065261754937 -61065261774393 -61065261783716 -61065261866424 -61065261912992 -61065261930483 -61065261941428 -61065262010864 -61065262063416 -61065262074731 -61065262087550 -61065262096600 -61065262143395 -61065262156092 -61065262165848 -61065262227072 -61065262247067 -61065262263150 -61065262317832 -61065262334168 -61065262345354 -61065262354540 -61065262452567 -61065262468738 -61065262477381 -61065262549835 -61065262593778 -61065262604043 -61065262615701 -61065262624371 -61065262641444 -61065262660942 -61065262669698 -61065262720737 -61065262733698 -61065262742216 -61065262791520 -61065262804792 -61065262813960 -61065262825654 -61065262870182 -61065262879802 -61065262892581 -61065262973462 -61065262994679 -61065263004810 -61065263018084 -61065263033720 -61065263052585 -61065263062315 -61065263117753 -61065263131453 -61065263140917 -61065263152098 -61065263200560 -61065263213501 -61065263223640 -61065263244086 -61065263296935 -61065263318479 -61065263329000 -61065263383965 -61065263404206 -61065263417087 -61065263427212 -61065263447365 -61065263500360 -61065263521981 -61065263532346 -61065263588187 -61065263599599 -61065263652506 -61065263668581 -61065263677850 -61065263728762 -61065263748637 -61065263762378 -61065263777289 -61065263860540 -61065263870347 -61065263923476 -61065263941604 -61065263951521 -61065263970624 -61065263989227 -61065264051415 -61065264064593 -61065264074196 -61065264091144 -61065264108719 -61065264190300 -61065264202168 -61065264220861 -61065264241822 -61065264321697 -61065264332464 -61065264345592 -61065264377503 -61065264393712 -61065264506898 -61065264528978 -61065264541220 -61065264549872 -61065264561595 -61065264575774 -61065264625203 -61065264668998 -61065264678972 -61065264694077 -61065264711520 -61065264725528 -61065264791938 -61065264807409 -61065264821060 -61065264830724 -61065264849975 -61065264899158 -61065264992854 -61065265003081 -61065265015050 -61065265029353 -61065265050507 -61065265067301 -61065265209676 -61065265225384 -61065265237838 -61065265248864 -61065265315474 -61065265337171 -61065265351767 -61065265454338 -61065265473805 -61065265489844 -61065265498337 -61065265593721 -61065265613948 -61065265688645 -61065265706973 -61065265769893 -61065265783404 -61065265802737 -61065265906630 -61065265920135 -61065265932255 -61065265945456 -61065265990698 -61065266001420 -61065266014842 -61065266027831 -61065266040165 -61065266050197 -61065266093370 -61065266109130 -61065266121370 -61065266130967 -61065266175643 -61065266188026 -61065266232016 -61065266246940 -61065266256209 -61065266300096 -61065266315672 -61065266363200 -61065266379296 -61065266388588 -61065266431920 -61065266445370 -61065266489677 -61065266503615 -61065266512724 -61065266555379 -61065266568763 -61065266581177 -61065266593399 -61065266605881 -61065266650063 -61065266663709 -61065266706309 -61065266716309 -61065266761175 -61065266774774 -61065266817446 -61065266829805 -61065266843199 -61065266887080 -61065266916626 -61065266927833 -61065266939698 -61065266951482 -61065266960407 -61065267001823 -61065267016443 -61065267025359 -61065267105765 -61065267118211 -61065267130072 -61065267144235 -61065267153238 -61065267195616 -61065267208083 -61065267219724 -61065267233771 -61065267242497 -61065267285034 -61065267297643 -61065267334194 -61065267378649 -61065267392749 -61065267404827 -61065267417632 -61065267430268 -61065267439588 -61065267483530 -61065267497288 -61065267540989 -61065267551197 -61065267610486 -61065267625074 -61065267634176 -61065267675040 -61065267689622 -61065267698254 -61065267738611 -61065267752781 -61065267793813 -61065267806589 -61065267815221 -61065267876322 -61065267894758 -61065267914645 -61065267931855 -61065267951186 -61065268092198 -61065268110253 -61065268127431 -61065268144470 -61065268162542 -61065268185949 -61065268300242 -61065268323174 -61065268376714 -61065268396731 -61065268416066 -61065268434815 -61065268453275 -61065268536195 -61065268557179 -61065268652145 -61065268663623 -61065268721557 -61065268735252 -61065268803693 -61065268818381 -61065268828010 -61065268872617 -61065268886186 -61065268930570 -61065268945455 -61065268957959 -61065268970686 -61065269015950 -61065269062542 -61065269076304 -61065269085820 -61065269129798 -61065269143255 -61065269187854 -61065269204903 -61065269223845 -61065269243326 -61065269358121 -61065269460528 -61065269477407 -61065269494832 -61065269510883 -61065269526727 -61065269573427 -61065269591297 -61065269608590 -61065269625120 -61065269637221 -61065269706764 -61065269723243 -61065269739273 -61065269755144 -61065269772324 -61065269897650 -61065269918713 -61065269936685 -61065269952968 -61065269966873 -61065270013116 -61065270075886 -61065270093775 -61065270110734 -61065270126927 -61065270143791 -61065270188515 -61065270205273 -61065270222245 -61065270241006 -61065270286134 -61065270300229 -61065270309801 -61065270384764 -61065270400019 -61065270409266 -61065270422194 -61065270482965 -61065270497514 -61065270509768 -61065270522555 -61065270566618 -61065270579588 -61065270593205 -61065270634113 -61065270644571 -61065270653724 -61065270662738 -61065270671790 -61065270680886 -61065270690732 -61065270734548 -61065270749850 -61065270759176 -61065270801014 -61065270813580 -61065270825597 -61065270838430 -61065270882259 -61065270892566 -61065270935296 -61065270979694 -61065270989869 -61065271032985 -61065271049118 -61065271093016 -61065271103512 -61065271146217 -61065271162463 -61065271172000 -61065271216059 -61065271229408 -61065271242964 -61065271252512 -61065271297085 -61065271310822 -61065271354535 -61065271368189 -61065271377637 -61065271420257 -61065271435252 -61065271444130 -61065271456764 -61065271469314 -61065271478480 -61065271522305 -61065271538038 -61065271547478 -61065271591480 -61065271604666 -61065271617552 -61065271627459 -61065271671335 -61065271684526 -61065271696880 -61065271706335 -61065271748145 -61065271763273 -61065271772559 -61065271814822 -61065271828041 -61065271840425 -61065271850116 -61065271892636 -61065271908192 -61065272037039 -61065272048909 -61065272057482 -61065272068846 -61065272079780 -61065272087497 -61065272131951 -61065272141166 -61065272152670 -61065272164550 -61065272172339 -61065272183639 -61065272191420 -61065272233797 -61065272245517 -61065272253596 -61065272265065 -61065272277008 -61065272285747 -61065272328909 -61065272341513 -61065272349243 -61065272360723 -61065272368466 -61065272410070 -61065272421245 -61065272428569 -61065272439063 -61065272446295 -61065272488568 -61065272499925 -61065272507938 -61065272519259 -61065272529368 -61065272540604 -61065272548479 -61065272559429 -61065272567204 -61065272575189 -61065272617279 -61065272628365 -61065272636618 -61065272648904 -61065272690131 -61065272700168 -61065272741634 -61065272753435 -61065272761640 -61065272772646 -61065272783723 -61065272791776 -61065272802087 -61065272844175 -61065272855488 -61065272863129 -61065272874631 -61065272884948 -61065272928209 -61065272937097 -61065272947665 -61065272958155 -61065272965520 -61065272976732 -61065272984827 -61065273026717 -61065273038726 -61065273046496 -61065273057577 -61065273068977 -61065273076590 -61065273120631 -61065273132462 -61065273143666 -61065273153838 -61065273165233 -61065273173081 -61065273184724 -61065273192610 -61065273200888 -61065273271048 -61065273282482 -61065273290193 -61065273301722 -61065273311577 -61065273353968 -61065273365381 -61065273376841 -61065273386899 -61065273428877 -61065273437271 -61065273447863 -61065273459113 -61065273469308 -61065273512960 -61065273529505 -61065273537374 -61065273548815 -61065273556657 -61065273599324 -61065273613093 -61065273632485 -61065273651760 -61065273698693 -61065273710113 -61065273721327 -61065273731325 -61065273799080 -61065273810963 -61065273822347 -61065273832552 -61065273874231 -61065273882366 -61065273893388 -61065273902876 -61065273912891 -61065273955897 -61065273970643 -61065273978419 -61065273988750 -61065274030318 -61065274041775 -61065274049473 -61065274091714 -61065274108395 -61065274121094 -61065274164077 -61065274178447 -61065274197980 -61065274245646 -61065274259667 -61065274314563 -61065274328746 -61065274346464 -61065274374421 -61065274420141 -61065274431927 -61065274439856 -61065274451370 -61065274462366 -61065274472736 -61065274515773 -61065274529666 -61065274537355 -61065274550392 -61065274561353 -61065274569205 -61065274613137 -61065274624466 -61065274635890 -61065274643639 -61065274686131 -61065274700313 -61065274708308 -61065274718519 -61065274760537 -61065274773037 -61065274824048 -61065274838717 -61065274847325 -61065274858549 -61065274866318 -61065274913802 -61065274978797 -61065274992126 -61065275003628 -61065275047518 -61065275059184 -61065275070415 -61065275085708 -61065275093373 -61065275155100 -61065275163925 -61065275205728 -61065275215847 -61065275227134 -61065275237250 -61065275248551 -61065275256234 -61065275264914 -61065275272813 -61065275314751 -61065275326904 -61065275334594 -61065275345928 -61065275355925 -61065275397954 -61065275406896 -61065275417832 -61065275428690 -61065275436656 -61065275447832 -61065275455573 -61065275497988 -61065275507923 -61065275519996 -61065275530865 -61065275538892 -61065275582560 -61065275591324 -61065275602576 -61065275615629 -61065275623303 -61065275694224 -61065275706246 -61065275713987 -61065275725246 -61065275738053 -61065275746098 -61065275787207 -61065275798819 -61065275806558 -61065275817943 -61065275828996 -61065275836738 -61065275848157 -61065275855762 -61065275867560 -61065275875151 -61065275883315 -61065275925379 -61065275936988 -61065275944663 -61065275956079 -61065275967127 -61065275974731 -61065275986269 -61065275993851 -61065276017326 -61065276061906 -61065276072935 -61065276088599 -61065276107035 -61065276154771 -61065276163840 -61065276206724 -61065276220659 -61065276231494 -61065276275251 -61065276287891 -61065276298816 -61065276307080 -61065276318131 -61065276325824 -61065276367311 -61065276378358 -61065276386103 -61065276397298 -61065276440732 -61065276454179 -61065276463897 -61065276506410 -61065276519825 -61065276527693 -61065276539501 -61065276550588 -61065276558310 -61065276569658 -61065276577447 -61065276620358 -61065276631882 -61065276643176 -61065276653048 -61065276664288 -61065276672057 -61065276685903 -61065276693716 -61065276701890 -61065276772724 -61065276786772 -61065276794707 -61065276805022 -61065276848522 -61065276860176 -61065276868230 -61065276879835 -61065276890877 -61065276898547 -61065276940802 -61065276953582 -61065276961313 -61065276972830 -61065276982814 -61065276996447 -61065277004152 -61065277047199 -61065277058427 -61065277066250 -61065277077427 -61065277088492 -61065277096177 -61065277107574 -61065277115791 -61065277127106 -61065277135191 -61065277180035 -61065277229024 -61065277238603 -61065277282980 -61065277295154 -61065277306241 -61065277314198 -61065277325583 -61065277333402 -61065277375164 -61065277386760 -61065277394442 -61065277406086 -61065277416057 -61065277458674 -61065277470163 -61065277480709 -61065277488072 -61065277531222 -61065277543002 -61065277550784 -61065277562694 -61065277573619 -61065277581333 -61065277624333 -61065277633596 -61065277644974 -61065277656159 -61065277664291 -61065277675467 -61065277685726 -61065277728635 -61065277737213 -61065277748281 -61065277759206 -61065277766875 -61065277778183 -61065277785985 -61065277828040 -61065277842200 -61065277849927 -61065277860440 -61065277902177 -61065277914143 -61065277921772 -61065277933089 -61065277944184 -61065277952078 -61065277963484 -61065277971473 -61065278015331 -61065278027311 -61065278071373 -61065278080158 -61065278123175 -61065278137845 -61065278148803 -61065278156528 -61065278167854 -61065278175618 -61065278217826 -61065278228793 -61065278247390 -61065278313457 -61065278322600 -61065278365696 -61065278380079 -61065278388074 -61065278398257 -61065278440892 -61065278457278 -61065278465029 -61065278476389 -61065278487462 -61065278498150 -61065278506870 -61065278607148 -61065278619300 -61065278632628 -61065278640256 -61065278651731 -61065278660004 -61065278702809 -61065278716144 -61065278759225 -61065278775144 -61065278783131 -61065278794168 -61065278805223 -61065278813217 -61065278859366 -61065278877054 -61065278888681 -61065278896980 -61065278940609 -61065278957355 -61065278965309 -61065278976502 -61065278987093 -61065278997666 -61065279006007 -61065279047720 -61065279061987 -61065279069798 -61065279080110 -61065279122226 -61065279223852 -61065279237685 -61065279248643 -61065279256522 -61065279267723 -61065279275352 -61065279321084 -61065279405304 -61065279420864 -61065279429360 -61065279440502 -61065279448259 -61065279491949 -61065279504215 -61065279512390 -61065279555338 -61065279566692 -61065279574433 -61065279585627 -61065279595751 -61065279606962 -61065279614676 -61065279626390 -61065279634325 -61065279676801 -61065279686500 -61065279730500 -61065279742422 -61065279750588 -61065279822158 -61065279834244 -61065279842327 -61065279853352 -61065279864414 -61065279872515 -61065279881483 -61065279923002 -61065279934946 -61065279943369 -61065279954340 -61065279962107 -61065280027108 -61065280038841 -61065280052457 -61065280062396 -61065280072917 -61065280117014 -61065280128802 -61065280140083 -61065280150020 -61065280158996 -61065280170341 -61065280178210 -61065280220538 -61065280228799 -61065280239984 -61065280253705 -61065280263497 -61065280306803 -61065280318734 -61065280329983 -61065280339888 -61065280385850 -61065280403599 -61065280428050 -61065280477336 -61065280490409 -61065280498245 -61065280509472 -61065280522705 -61065280530553 -61065280573173 -61065280584452 -61065280592330 -61065280603880 -61065280611756 -61065280655519 -61065280669810 -61065280680492 -61065280688591 -61065280699732 -61065280707462 -61065280750305 -61065280761909 -61065280770126 -61065280813531 -61065280825626 -61065280839091 -61065280847118 -61065280889670 -61065280901275 -61065280909209 -61065280920172 -61065280931314 -61065280939295 -61065280987029 -61065280997770 -61065281008815 -61065281051862 -61065281061443 -61065281105813 -61065281118390 -61065281127390 -61065281169637 -61065281181687 -61065281189920 -61065281232399 -61065281244164 -61065281252076 -61065281263206 -61065281274604 -61065281282293 -61065281293564 -61065281301778 -61065281344701 -61065281359229 -61065281370710 -61065281378570 -61065281390217 -61065281400637 -61065281443623 -61065281452188 -61065281463460 -61065281474640 -61065281493251 -61065281511292 -61065281562818 -61065281572385 -61065281615089 -61065281626707 -61065281634262 -61065281645857 -61065281656598 -61065281664187 -61065281707798 -61065281720659 -61065281728541 -61065281740157 -61065281751257 -61065281759092 -61065281770331 -61065281778156 -61065281789426 -61065281797154 -61065281805120 -61065281849898 -61065281861796 -61065281872165 -61065281915572 -61065281957676 -61065281976486 -61065281987194 -61065281994902 -61065282006210 -61065282013970 -61065282058207 -61065282071179 -61065282082455 -61065282090127 -61065282131533 -61065282143268 -61065282151420 -61065282193822 -61065282209651 -61065282223027 -61065282231580 -61065282274429 -61065282286068 -61065282294141 -61065282336824 -61065282352711 -61065282362504 -61065282372776 -61065282414240 -61065282425712 -61065282433837 -61065282444952 -61065282455926 -61065282465422 -61065282508202 -61065282524840 -61065282533005 -61065282545108 -61065282556838 -61065282606582 -61065282619062 -61065282629047 -61065282640310 -61065282648540 -61065282691169 -61065282702454 -61065282710149 -61065282721560 -61065282731551 -61065282774106 -61065282782899 -61065282794528 -61065282805472 -61065282813570 -61065282824456 -61065282832283 -61065282874336 -61065282885869 -61065282893438 -61065282904166 -61065282914003 -61065282956390 -61065282965451 -61065282976613 -61065282987573 -61065282995911 -61065283009804 -61065283051839 -61065283060697 -61065283072016 -61065283083232 -61065283092561 -61065283139324 -61065283150838 -61065283158979 -61065283169944 -61065283183005 -61065283191042 -61065283201144 -61065283242594 -61065283254763 -61065283262983 -61065283273967 -61065283284950 -61065283292842 -61065283301989 -61065283343994 -61065283355568 -61065283363528 -61065283373508 -61065283414827 -61065283458383 -61065283469962 -61065283481248 -61065283493239 -61065283501567 -61065283542420 -61065283551337 -61065283562029 -61065283572938 -61065283580859 -61065283592553 -61065283600297 -61065283647587 -61065283729021 -61065283745664 -61065283755659 -61065283765917 -61065283822887 -61065283834495 -61065283842505 -61065283853326 -61065283863287 -61065283930480 -61065283939542 -61065283952522 -61065283967648 -61065283975394 -61065284061443 -61065284071141 -61065284081598 -61065284125238 -61065284138257 -61065284145996 -61065284157461 -61065284167742 -61065284178973 -61065284186934 -61065284273578 -61065284283014 -61065284359717 -61065284371671 -61065284380065 -61065284391249 -61065284433759 -61065284447300 -61065284455747 -61065284466971 -61065284477949 -61065284485963 -61065284497251 -61065284505012 -61065284512954 -61065284555307 -61065284569588 -61065284577512 -61065284588717 -61065284598935 -61065284641910 -61065284657108 -61065284665101 -61065284676353 -61065284687748 -61065284696129 -61065284741835 -61065284763004 -61065284774330 -61065284783918 -61065284826949 -61065284838418 -61065284849643 -61065284860189 -61065284871584 -61065284879481 -61065284923401 -61065284932115 -61065284973296 -61065284984838 -61065284993512 -61065285004382 -61065285012209 -61065285054302 -61065285068404 -61065285076161 -61065285087296 -61065285098141 -61065285105805 -61065285174521 -61065285183395 -61065285225884 -61065285240395 -61065285248086 -61065285258616 -61065285300349 -61065285344138 -61065285355983 -61065285367124 -61065285377141 -61065285388914 -61065285397290 -61065285439413 -61065285450887 -61065285462149 -61065285472165 -61065285514557 -61065285523460 -61065285593152 -61065285604630 -61065285612315 -61065285623880 -61065285634866 -61065285642599 -61065285684957 -61065285694325 -61065285707695 -61065285717567 -61065285727891 -61065285769179 -61065285780916 -61065285788649 -61065285804443 -61065285824025 -61065285842685 -61065285850547 -61065285895516 -61065285906997 -61065285915102 -61065285926047 -61065285935891 -61065285978216 -61065285986508 -61065285997021 -61065286008266 -61065286015979 -61065286027016 -61065286034875 -61065286077028 -61065286086959 -61065286098248 -61065286111497 -61065286119258 -61065286128042 -61065286170537 -61065286182155 -61065286190102 -61065286201558 -61065286212906 -61065286220607 -61065286229394 -61065286272135 diff --git a/src/java/protocol/timestampByAlertId-2.txt b/src/java/protocol/timestampByAlertId-2.txt deleted file mode 100644 index 65e24cd..0000000 --- a/src/java/protocol/timestampByAlertId-2.txt +++ /dev/null @@ -1,9999 +0,0 @@ -61064426421576 -61064426583272 -61064427112403 -61064427246265 -61064427400427 -61064427899404 -61064428391238 -61064429293803 -61064429666486 -61064429786324 -61064430254009 -61064430665470 -61064430791616 -61064431539996 -61064432022580 -61064432160145 -61064432639642 -61064433236593 -61064433646634 -61064434141474 -61064434266235 -61064434467183 -61064434668105 -61064435405575 -61064436356245 -61064437032146 -61064437514535 -61064437971933 -61064438518540 -61064439420754 -61064440153008 -61064440738788 -61064441417042 -61064441901131 -61064442352804 -61064442841787 -61064442965341 -61064443423679 -61064443869244 -61064444591614 -61064445357189 -61064445803276 -61064446426422 -61064447077353 -61064447216708 -61064447748131 -61064447882893 -61064448041476 -61064448172958 -61064448634589 -61064449061466 -61064449714747 -61064449847579 -61064449974322 -61064450087109 -61064450195351 -61064450636675 -61064451375990 -61064451902665 -61064452608806 -61064453094010 -61064453218510 -61064453361981 -61064453790081 -61064454207750 -61064454718679 -61064454835410 -61064454951209 -61064455442217 -61064455555404 -61064455661285 -61064456579427 -61064457186579 -61064457627992 -61064457759979 -61064458222681 -61064458617251 -61064458727009 -61064458835672 -61064458949113 -61064459852039 -61064460434964 -61064461078259 -61064461227571 -61064461699741 -61064461847152 -61064462013636 -61064462511294 -61064462624081 -61064462755963 -61064463143376 -61064464757726 -61064464877117 -61064465611071 -61064466142216 -61064466282448 -61064466425811 -61064466545045 -61064467088856 -61064467536593 -61064468307858 -61064468794178 -61064468928775 -61064469456059 -61064469852823 -61064469944856 -61064470029290 -61064470111970 -61064470202918 -61064470307667 -61064470400624 -61064470500910 -61064471107694 -61064471219968 -61064471322653 -61064472060141 -61064472720076 -61064473260226 -61064474070347 -61064474499378 -61064474963360 -61064475555998 -61064476202681 -61064476341959 -61064476785055 -61064477455424 -61064477989591 -61064478447569 -61064479066210 -61064479524479 -61064480623910 -61064481054213 -61064481812472 -61064482315018 -61064482450931 -61064482572825 -61064483035435 -61064483397889 -61064483956253 -61064484549650 -61064485135504 -61064485482898 -61064485941226 -61064486632460 -61064487004805 -61064487096372 -61064487188464 -61064487823326 -61064488707672 -61064489106718 -61064489488979 -61064489903270 -61064490313465 -61064490640700 -61064491089401 -61064491409552 -61064491819925 -61064492160714 -61064492752602 -61064493062186 -61064493523495 -61064493601346 -61064493670437 -61064494138419 -61064494548556 -61064494639501 -61064494756195 -61064495336876 -61064495435072 -61064495531525 -61064495665371 -61064496210914 -61064496444605 -61064496756327 -61064497346662 -61064497794518 -61064498250131 -61064498744825 -61064499117091 -61064499571356 -61064500081897 -61064500176561 -61064500692551 -61064501236322 -61064501733246 -61064502057258 -61064502535002 -61064502618442 -61064502755765 -61064503132641 -61064503199478 -61064503252360 -61064503654472 -61064504051265 -61064504501780 -61064505025359 -61064505369705 -61064505721708 -61064505962800 -61064506336310 -61064506384488 -61064506797484 -61064506845366 -61064507276139 -61064507746694 -61064508156491 -61064508554842 -61064508620516 -61064508861585 -61064509237080 -61064509456342 -61064509809451 -61064510034062 -61064510340896 -61064510405932 -61064510458857 -61064510759101 -61064511030832 -61064511098590 -61064511359928 -61064511656517 -61064511996145 -61064512241133 -61064512721993 -61064513027478 -61064513281921 -61064513527938 -61064513595970 -61064513663096 -61064513896249 -61064514069253 -61064514135810 -61064514203824 -61064514390391 -61064514836106 -61064515255726 -61064515330457 -61064515389787 -61064515433784 -61064515626451 -61064515974179 -61064516481896 -61064517117741 -61064517423553 -61064517697609 -61064517887530 -61064517946802 -61064518000144 -61064518448051 -61064518749171 -61064519119176 -61064519798116 -61064520091885 -61064520392785 -61064520599140 -61064520813229 -61064521085169 -61064521261110 -61064521437415 -61064521649995 -61064521853364 -61064522149715 -61064522495537 -61064522709954 -61064523074238 -61064523130051 -61064523436918 -61064523663144 -61064524046074 -61064524274848 -61064524498306 -61064524703479 -61064524849442 -61064525012140 -61064525196013 -61064525332202 -61064525461533 -61064525593451 -61064525771708 -61064525909705 -61064526103741 -61064526238920 -61064526361292 -61064526531797 -61064526665894 -61064526801005 -61064526972610 -61064527146460 -61064527276816 -61064527345679 -61064527426023 -61064527537092 -61064527638444 -61064527753450 -61064527879881 -61064528027029 -61064528159031 -61064528277960 -61064528512094 -61064528580918 -61064528667140 -61064528802591 -61064528851033 -61064528972539 -61064529092332 -61064529134428 -61064529251945 -61064529366613 -61064529555946 -61064529602372 -61064529711162 -61064529897801 -61064530128661 -61064530278170 -61064530318671 -61064530359505 -61064530416520 -61064530593253 -61064530740290 -61064530781642 -61064530833928 -61064530869523 -61064530903772 -61064530933757 -61064530964377 -61064530993465 -61064531029570 -61064531066392 -61064531098093 -61064531139712 -61064531180731 -61064531210871 -61064531244851 -61064531273493 -61064531301841 -61064531331641 -61064531360581 -61064531399023 -61064531432051 -61064531460574 -61064531487903 -61064531521070 -61064531549635 -61064531584794 -61064531614039 -61064531642307 -61064531669971 -61064531697273 -61064531725318 -61064531752654 -61064531786482 -61064531836214 -61064531865118 -61064531893085 -61064531920652 -61064531948341 -61064531978722 -61064532048201 -61064532083993 -61064532112725 -61064532141000 -61064532171724 -61064532200816 -61064532231818 -61064532260038 -61064532291319 -61064532319713 -61064532352392 -61064532459496 -61064532493782 -61064532523977 -61064532558970 -61064532588163 -61064532622772 -61064532654577 -61064532682915 -61064532715170 -61064532766055 -61064532823236 -61064532857454 -61064532896905 -61064532932089 -61064532960959 -61064532991413 -61064533020358 -61064533052670 -61064533080902 -61064533109674 -61064533139642 -61064533167824 -61064533199553 -61064533227073 -61064533257658 -61064533286253 -61064533323609 -61064533352433 -61064533387072 -61064533415603 -61064533444783 -61064533472257 -61064533583837 -61064533612358 -61064533640273 -61064533667839 -61064533694804 -61064533722237 -61064533756073 -61064533783848 -61064533810319 -61064533838003 -61064533867170 -61064533894654 -61064533932779 -61064533961137 -61064533998767 -61064534026795 -61064534053281 -61064534079767 -61064534106973 -61064534142004 -61064534172042 -61064534201802 -61064534229216 -61064534256690 -61064534283776 -61064534313442 -61064534340646 -61064534367736 -61064534393919 -61064534434732 -61064534473911 -61064534511490 -61064534540324 -61064534573448 -61064534601393 -61064534633807 -61064534674625 -61064534702970 -61064534735706 -61064534763232 -61064534794832 -61064534829692 -61064534895242 -61064534924160 -61064534953774 -61064534980149 -61064535006748 -61064535033299 -61064535064704 -61064535091393 -61064535118266 -61064535144321 -61064535170761 -61064535196897 -61064535222840 -61064535252838 -61064535289946 -61064535327185 -61064535354871 -61064535380936 -61064535406642 -61064535432351 -61064535458099 -61064535488904 -61064535517800 -61064535543923 -61064535570193 -61064535595850 -61064535621182 -61064535647221 -61064535672876 -61064535699240 -61064535725385 -61064535751295 -61064535776969 -61064535815147 -61064535840642 -61064535866721 -61064535892295 -61064535921295 -61064535947278 -61064535972721 -61064535998051 -61064536049930 -61064536086630 -61064536122505 -61064536157536 -61064536184883 -61064536211564 -61064536237621 -61064536263953 -61064536289878 -61064536316410 -61064536355210 -61064536383916 -61064536412627 -61064536440619 -61064536466609 -61064536492317 -61064536518297 -61064536543739 -61064536570070 -61064536595767 -61064536622167 -61064536666612 -61064536703105 -61064536741276 -61064536769570 -61064536810487 -61064536837254 -61064536863127 -61064536889296 -61064536964151 -61064536992886 -61064537020859 -61064537048519 -61064537080443 -61064537107856 -61064537134622 -61064537160445 -61064537186743 -61064537221205 -61064537248325 -61064537274244 -61064537300790 -61064537327876 -61064537354409 -61064537380565 -61064537414178 -61064537440708 -61064537467651 -61064537494196 -61064537520623 -61064537546924 -61064537573961 -61064537600723 -61064537631880 -61064537658498 -61064537684168 -61064537716727 -61064537754465 -61064537792652 -61064537820769 -61064537847240 -61064537873674 -61064537906170 -61064537932623 -61064537958723 -61064537986246 -61064538018387 -61064538049715 -61064538153115 -61064538199182 -61064538224584 -61064538250377 -61064538275735 -61064538300455 -61064538325027 -61064538352832 -61064538380191 -61064538405032 -61064538428841 -61064538460787 -61064538486212 -61064538510339 -61064538537287 -61064538561652 -61064538585544 -61064538612357 -61064538651813 -61064538686837 -61064538716278 -61064538740136 -61064538764391 -61064538788181 -61064538811861 -61064538840798 -61064538864550 -61064538888771 -61064538913134 -61064538940708 -61064538964608 -61064538988732 -61064539012539 -61064539036328 -61064539062786 -61064539086552 -61064539109950 -61064539133528 -61064539156772 -61064539180674 -61064539204988 -61064539234541 -61064539269606 -61064539293770 -61064539317086 -61064539342222 -61064539380552 -61064539413929 -61064539445616 -61064539469673 -61064539493797 -61064539517720 -61064539543389 -61064539616116 -61064539642339 -61064539666380 -61064539689825 -61064539713884 -61064539737281 -61064539767354 -61064539791612 -61064539815003 -61064539846882 -61064539871417 -61064539910381 -61064539934487 -61064539958299 -61064539981804 -61064540051529 -61064540078284 -61064540102631 -61064540126825 -61064540202531 -61064540277192 -61064540309052 -61064540334471 -61064540359378 -61064540384591 -61064540409411 -61064540434524 -61064540463037 -61064540497515 -61064540534182 -61064540576964 -61064540605143 -61064540639896 -61064540665174 -61064540692898 -61064540718344 -61064540748920 -61064540782882 -61064540807827 -61064540832285 -61064540856171 -61064540880510 -61064540907784 -61064540932643 -61064540959628 -61064540984754 -61064541021495 -61064541057126 -61064541090129 -61064541114943 -61064541138949 -61064541163206 -61064541190881 -61064541216265 -61064541243880 -61064541268729 -61064541293082 -61064541317648 -61064541342076 -61064541365988 -61064541390729 -61064541414879 -61064541439116 -61064541468810 -61064541492842 -61064541517032 -61064541541059 -61064541564814 -61064541593422 -61064541618499 -61064541642147 -61064541665778 -61064541689647 -61064541713577 -61064541751114 -61064541775325 -61064541799467 -61064541823563 -61064541847782 -61064541871879 -61064541899180 -61064541928364 -61064541952597 -61064541978895 -61064542003183 -61064542027441 -61064542055898 -61064542080142 -61064542104009 -61064542127711 -61064542151672 -61064542189416 -61064542223851 -61064542256003 -61064542291652 -61064542316178 -61064542348533 -61064542373010 -61064542397639 -61064542429950 -61064542463100 -61064542488062 -61064542512948 -61064542537508 -61064542561893 -61064542586281 -61064542610520 -61064542634956 -61064542667544 -61064542714273 -61064542742222 -61064542766659 -61064542790429 -61064542814747 -61064542838765 -61064542862937 -61064542886688 -61064542911003 -61064542934514 -61064542960865 -61064542985019 -61064543008826 -61064543032242 -61064543055833 -61064543079837 -61064543103831 -61064543127870 -61064543152269 -61064543183259 -61064543207407 -61064543234745 -61064543261923 -61064543285806 -61064543309809 -61064543333831 -61064543359596 -61064543384865 -61064543408798 -61064543433293 -61064543458490 -61064543483101 -61064543507131 -61064543531094 -61064543555365 -61064543579646 -61064543604373 -61064543629112 -61064543659750 -61064543684300 -61064543709293 -61064543737261 -61064543761839 -61064543789376 -61064543813852 -61064543838245 -61064543862756 -61064543887013 -61064543921344 -61064543957733 -61064544061796 -61064544092571 -61064544117079 -61064544141371 -61064544165688 -61064544194006 -61064544218313 -61064544242774 -61064544269041 -61064544304071 -61064544338605 -61064544364546 -61064544396498 -61064544429402 -61064544454326 -61064544478465 -61064544503100 -61064544527577 -61064544584733 -61064544615489 -61064544640152 -61064544663808 -61064544688202 -61064544715497 -61064544769158 -61064544795875 -61064544821027 -61064544846039 -61064544871049 -61064544902580 -61064544928028 -61064544953061 -61064544978311 -61064545003077 -61064545030845 -61064545055589 -61064545080484 -61064545189601 -61064545223331 -61064545249864 -61064545274706 -61064545299455 -61064545324789 -61064545349809 -61064545374617 -61064545400142 -61064545425434 -61064545450671 -61064545475500 -61064545500333 -61064545524730 -61064545552226 -61064545577816 -61064545602553 -61064545634355 -61064545659755 -61064545690339 -61064545714211 -61064545738381 -61064545763375 -61064545788096 -61064545824522 -61064545862028 -61064545903474 -61064545929755 -61064545954148 -61064545984471 -61064546028687 -61064546060561 -61064546089407 -61064546119907 -61064546145349 -61064546170534 -61064546195323 -61064546219528 -61064546244669 -61064546269676 -61064546296726 -61064546321946 -61064546347192 -61064546371969 -61064546398604 -61064546423601 -61064546458458 -61064570863384 -61064570974241 -61064571015051 -61064571045060 -61064571067080 -61064571092834 -61064571118315 -61064571139137 -61064571168232 -61064571190583 -61064571212987 -61064571244599 -61064571266110 -61064571291221 -61064571317809 -61064571358012 -61064571385391 -61064571406286 -61064571432355 -61064571460190 -61064571482521 -61064571511759 -61064571533365 -61064571556621 -61064571592759 -61064571614030 -61064571644927 -61064571666974 -61064571692474 -61064571715135 -61064571737205 -61064571767018 -61064571788617 -61064571812560 -61064571836788 -61064571860933 -61064571883685 -61064571905378 -61064571927457 -61064571950711 -61064571972660 -61064571994380 -61064572033577 -61064572065149 -61064572091938 -61064572120097 -61064572141636 -61064572171766 -61064572193050 -61064572214805 -61064572235480 -61064572256413 -61064572277619 -61064572298480 -61064572322514 -61064572346585 -61064572368058 -61064572391285 -61064572413541 -61064572435658 -61064572458725 -61064572483753 -61064572579366 -61064572614544 -61064572634878 -61064572654982 -61064572675730 -61064572696517 -61064572717738 -61064572738397 -61064572759653 -61064572780321 -61064572802686 -61064572825938 -61064572852024 -61064572872841 -61064572893280 -61064572916188 -61064572936983 -61064572964831 -61064572985110 -61064573006719 -61064573028570 -61064573053790 -61064573075095 -61064573096441 -61064573117322 -61064573138410 -61064573159556 -61064573179602 -61064573200061 -61064573220684 -61064573243811 -61064573264803 -61064573285851 -61064573314398 -61064573337676 -61064573362037 -61064573407453 -61064573437101 -61064573457777 -61064573476983 -61064573497017 -61064573515999 -61064573539222 -61064573562802 -61064573587250 -61064573613733 -61064573634406 -61064573657175 -61064573676433 -61064573706101 -61064573726995 -61064573748970 -61064573772991 -61064573793713 -61064573814554 -61064573835468 -61064573865803 -61064573887193 -61064573907448 -61064573926820 -61064573946387 -61064573970242 -61064573990643 -61064574009596 -61064574027835 -61064574053856 -61064574072717 -61064574091560 -61064574119382 -61064574139041 -61064574158540 -61064574180429 -61064574204802 -61064574225624 -61064574244718 -61064574268807 -61064574287190 -61064574302109 -61064574384939 -61064574402731 -61064574420784 -61064574447526 -61064574473260 -61064574491278 -61064574508114 -61064574524981 -61064574541692 -61064574558699 -61064574575421 -61064574592254 -61064574609143 -61064574626404 -61064574643479 -61064574660201 -61064574679551 -61064574697649 -61064574714715 -61064574738902 -61064574755274 -61064574776784 -61064574794182 -61064574810743 -61064574827375 -61064574844924 -61064574861607 -61064574879000 -61064574897610 -61064574916799 -61064574936362 -61064574955427 -61064574972040 -61064574988707 -61064575005437 -61064575029582 -61064575047944 -61064575066757 -61064575083421 -61064575100338 -61064575117382 -61064575136083 -61064575156826 -61064575214735 -61064575248132 -61064575265080 -61064575281777 -61064575298730 -61064575320044 -61064575337824 -61064575354916 -61064575381655 -61064575399436 -61064575419852 -61064575438001 -61064575455896 -61064575474360 -61064575492622 -61064575510818 -61064575529264 -61064575547621 -61064575565888 -61064575584139 -61064575602358 -61064575622504 -61064575643171 -61064575664093 -61064575689990 -61064575708094 -61064575728016 -61064575746930 -61064575766745 -61064575785282 -61064575803461 -61064575821686 -61064575840372 -61064575859864 -61064575878213 -61064575896691 -61064575915259 -61064575933625 -61064575954177 -61064575973478 -61064576012780 -61064576036699 -61064576055963 -61064576069253 -61064576082535 -61064576131742 -61064576166813 -61064576183788 -61064576201666 -61064576218931 -61064576236163 -61064576253610 -61064576271072 -61064576290888 -61064576307539 -61064576324860 -61064576361887 -61064576383351 -61064576401984 -61064576421703 -61064576439506 -61064576456439 -61064576473689 -61064576491054 -61064576508367 -61064576525621 -61064576551797 -61064576569226 -61064576588531 -61064576606452 -61064576623108 -61064576640228 -61064576665027 -61064576681850 -61064576698968 -61064576716209 -61064576734215 -61064576754010 -61064576772507 -61064576790304 -61064576807164 -61064576826248 -61064576843386 -61064576860319 -61064576879460 -61064576898937 -61064576916212 -61064576934090 -61064576957893 -61064576971181 -61064576989178 -61064577009511 -61064577027411 -61064577045367 -61064577064584 -61064577086304 -61064577104790 -61064577125869 -61064577146587 -61064577165411 -61064577183767 -61064577204273 -61064577223320 -61064577241521 -61064577268099 -61064577287206 -61064577308159 -61064577328064 -61064577345541 -61064577363880 -61064577382039 -61064577400399 -61064577418712 -61064577439525 -61064577458335 -61064577477351 -61064577495959 -61064577515868 -61064577590563 -61064577625985 -61064577652579 -61064577671493 -61064577691930 -61064577711513 -61064577729980 -61064577751262 -61064577771160 -61064577789531 -61064577811652 -61064577828836 -61064577843414 -61064577856846 -61064577876385 -61064577893868 -61064577912018 -61064577929578 -61064577955226 -61064577971921 -61064577989407 -61064578008426 -61064578025782 -61064578043179 -61064578061253 -61064578079724 -61064578098427 -61064578115205 -61064578132582 -61064578149972 -61064578167624 -61064578184993 -61064578201966 -61064578221630 -61064578246730 -61064578264100 -61064578281452 -61064578299010 -61064578316188 -61064578336322 -61064578353593 -61064578370933 -61064578388342 -61064578405422 -61064578422805 -61064578444269 -61064578461253 -61064578478988 -61064578499352 -61064578518177 -61064578542964 -61064578562494 -61064578580475 -61064578597608 -61064578615335 -61064578632564 -61064578652509 -61064578672480 -61064578690322 -61064578707553 -61064578725925 -61064578742977 -61064578755818 -61064578768356 -61064578789775 -61064578808149 -61064578834310 -61064578852163 -61064578870212 -61064578888916 -61064578907541 -61064578925936 -61064578945574 -61064578965744 -61064578984900 -61064579003282 -61064579022175 -61064579040874 -61064579059705 -61064579078455 -61064579097195 -61064579115769 -61064579141170 -61064579161251 -61064579179527 -61064579197764 -61064579220356 -61064579277535 -61064579296731 -61064579315390 -61064579334467 -61064579360775 -61064579382014 -61064579400850 -61064579419965 -61064579438617 -61064579457222 -61064579475968 -61064579495078 -61064579587325 -61064579600253 -61064579626472 -61064579645367 -61064579662807 -61064579680202 -61064579697947 -61064579715018 -61064579732721 -61064579750072 -61064579767590 -61064579784958 -61064579802481 -61064579819639 -61064579837026 -61064579859116 -61064579876093 -61064579893299 -61064579920914 -61064579940023 -61064579957694 -61064579975119 -61064579992342 -61064580026603 -61064580044760 -61064580062270 -61064580084435 -61064580102950 -61064580120879 -61064580138312 -61064580155523 -61064580172670 -61064580190229 -61064580208216 -61064580237833 -61064580254825 -61064580272274 -61064580290750 -61064580312781 -61064580330353 -61064580347882 -61064580367399 -61064580385365 -61064580402698 -61064580420500 -61064580437423 -61064580455180 -61064580474190 -61064580487817 -61064580500885 -61064580531552 -61064580550074 -61064580568192 -61064580588615 -61064580609703 -61064580628599 -61064580647248 -61064580668199 -61064580688329 -61064580707034 -61064580725176 -61064580743616 -61064580761782 -61064580780004 -61064580798972 -61064580817859 -61064580844882 -61064580862544 -61064580880246 -61064580898526 -61064580916858 -61064580935261 -61064580953405 -61064580972171 -61064580993253 -61064581012168 -61064581031196 -61064581050709 -61064581069097 -61064581087847 -61064581106291 -61064581125001 -61064581150268 -61064581169691 -61064581188274 -61064581207283 -61064581225699 -61064581245746 -61064581264740 -61064581284733 -61064581306080 -61064581325373 -61064581344261 -61064581364147 -61064581381050 -61064581393001 -61064581404628 -61064581434869 -61064581459960 -61064581478126 -61064581495282 -61064581512471 -61064581529933 -61064581550280 -61064581568943 -61064581586452 -61064581604181 -61064581621374 -61064581638929 -61064581656746 -61064581674533 -61064581692122 -61064581709424 -61064581726295 -61064581753327 -61064581772306 -61064581791363 -61064581809817 -61064581827056 -61064581844474 -61064581861972 -61064581879641 -61064581897804 -61064581918575 -61064581935705 -61064581951926 -61064581969830 -61064581988972 -61064582007319 -61064582026436 -61064582052581 -61064582070317 -61064582087533 -61064582105437 -61064582122572 -61064582140072 -61064582157311 -61064582175169 -61064582196089 -61064582214332 -61064582233698 -61064582252030 -61064582270077 -61064582283225 -61064582295583 -61064582316423 -61064582344986 -61064582363197 -61064582380923 -61064582399700 -61064582418342 -61064582436673 -61064582457842 -61064582477908 -61064582497448 -61064582516105 -61064582534119 -61064582552587 -61064582571046 -61064582589692 -61064582609538 -61064582628411 -61064582653565 -61064582671753 -61064582693664 -61064582712895 -61064582731764 -61064582756295 -61064582775403 -61064582796664 -61064582815359 -61064582834002 -61064582852495 -61064582873993 -61064582892911 -61064582912343 -61064582930507 -61064582948937 -61064582974312 -61064582992279 -61064583010607 -61064583029120 -61064583047485 -61064583065843 -61064583084473 -61064583102764 -61064583122257 -61064583135909 -61064583148928 -61064583165409 -61064583185378 -61064583202981 -61064583220338 -61064583237621 -61064583262255 -61064583282273 -61064583299961 -61064583318114 -61064583335563 -61064583352943 -61064583370297 -61064583388012 -61064583409135 -61064583426893 -61064583444207 -61064583464615 -61064583484081 -61064583504802 -61064583524836 -61064583544828 -61064583571609 -61064583588437 -61064583605132 -61064583622581 -61064583640462 -61064583657656 -61064583674840 -61064583692422 -61064583709828 -61064583727709 -61064583745135 -61064583764723 -61064583782398 -61064583799985 -61064583818796 -61064583836837 -61064583863436 -61064583880826 -61064583897312 -61064583915060 -61064583934891 -61064583952543 -61064583970011 -61064583987185 -61064584017779 -61064584039369 -61064584055014 -61064584068393 -61064584090727 -61064584108022 -61064584125357 -61064584142991 -61064584169421 -61064584187744 -61064584206496 -61064584229582 -61064584249587 -61064584268452 -61064584287165 -61064584308425 -61064584326936 -61064584345613 -61064584364046 -61064584383200 -61064584403189 -61064584421613 -61064584439989 -61064584459132 -61064584485158 -61064584503108 -61064584521592 -61064584540358 -61064584559189 -61064584578325 -61064584598341 -61064584617607 -61064584636220 -61064584654897 -61064584675874 -61064584694450 -61064584712817 -61064584731164 -61064584749530 -61064584768783 -61064584794480 -61064584814910 -61064584833884 -61064584853944 -61064584874928 -61064584894923 -61064584912676 -61064584930849 -61064584948772 -61064584961566 -61064584974171 -61064584990244 -61064585009653 -61064585027683 -61064585047100 -61064585064897 -61064585096411 -61064585117831 -61064585135348 -61064585152678 -61064585172467 -61064585189547 -61064585207160 -61064585224121 -61064585241455 -61064585258706 -61064585279319 -61064585296765 -61064585314257 -61064585333400 -61064585350980 -61064585368148 -61064585391945 -61064585408717 -61064585425012 -61064585441661 -61064585458964 -61064585475981 -61064585493547 -61064585511218 -61064585528506 -61064585547373 -61064585564870 -61064585581872 -61064585601419 -61064585620847 -61064585653455 -61064585673164 -61064585690645 -61064585708044 -61064585725398 -61064585742405 -61064585760339 -61064585779445 -61064585797033 -61064585813864 -61064585835737 -61064585851634 -61064585864990 -61064585883790 -61064585901865 -61064585931350 -61064585950023 -61064585968130 -61064585986339 -61064586005156 -61064586023956 -61064586042432 -61064586062590 -61064586080678 -61064586099562 -61064586117987 -61064586136798 -61064586155312 -61064586176177 -61064586195042 -61064586213388 -61064586241204 -61064586260692 -61064586279924 -61064586301010 -61064586323428 -61064586343310 -61064586361831 -61064586380293 -61064586398635 -61064586417137 -61064586436750 -61064586455150 -61064586473732 -61064586492430 -61064586512841 -61064586531442 -61064586574134 -61064635184048 -61064635205241 -61064635219944 -61064635237967 -61064635260675 -61064635278388 -61064635293484 -61064635515055 -61064635533140 -61064635549920 -61064635563994 -61064635584399 -61064635605957 -61064635732568 -61064635764916 -61064636034275 -61064636161183 -61064636187297 -61064636216213 -61064636238953 -61064636260289 -61064636583246 -61064636608330 -61064636632439 -61064636654973 -61064636678137 -61064637003346 -61064637248412 -61064637276584 -61064637464047 -61064637507134 -61064637537201 -61064637565285 -61064637781628 -61064637813141 -61064637839346 -61064638048663 -61064638077636 -61064638101452 -61064638328215 -61064638357427 -61064638586630 -61064638613832 -61064638640769 -61064638808874 -61064638834908 -61064638861790 -61064638880079 -61064639094308 -61064639123930 -61064639142628 -61064639157574 -61064639266664 -61064639288013 -61064639319458 -61064639456500 -61064639479622 -61064639503554 -61064639643431 -61064639796113 -61064639817461 -61064640168109 -61064640189659 -61064640386605 -61064640579923 -61064640838760 -61064640857329 -61064640883460 -61064640905165 -61064641076013 -61064641107295 -61064641136254 -61064641360076 -61064641382910 -61064641408473 -61064641434227 -61064641696210 -61064641792200 -61064641819530 -61064641959660 -61064641981625 -61064642271747 -61064642287242 -61064642569774 -61064642757566 -61064642783976 -61064642801235 -61064642818048 -61064643005650 -61064643031994 -61064643055211 -61064643267636 -61064643292498 -61064643319014 -61064643564624 -61064643588673 -61064643607348 -61064643633267 -61064643650952 -61064643664453 -61064643852370 -61064643874262 -61064644184115 -61064644208181 -61064644235853 -61064644491007 -61064644728918 -61064644930338 -61064644957188 -61064645143542 -61064645411617 -61064645699545 -61064645939764 -61064645958161 -61064646151782 -61064646403232 -61064646624603 -61064646641862 -61064647168098 -61064647422377 -61064647441152 -61064647464513 -61064647478034 -61064647492687 -61064647741852 -61064647759327 -61064647771465 -61064648032069 -61064648047860 -61064648239024 -61064648254247 -61064648268655 -61064648279437 -61064648460411 -61064648626903 -61064648646161 -61064648664378 -61064648853396 -61064648880575 -61064649125521 -61064649159253 -61064649186396 -61064649471159 -61064649484598 -61064649495207 -61064649506083 -61064649516901 -61064649530519 -61064649739046 -61064650055557 -61064650193431 -61064650381827 -61064650541830 -61064650570832 -61064650674549 -61064650692272 -61064650712718 -61064650833443 -61064651021355 -61064651337302 -61064651506698 -61064651526070 -61064651546734 -61064651564113 -61064651581609 -61064651597636 -61064651611354 -61064651797947 -61064651955582 -61064652117330 -61064652243647 -61064652337994 -61064652361333 -61064652388086 -61064652414876 -61064652444475 -61064652469234 -61064652682436 -61064652869035 -61064653061593 -61064653084773 -61064653104362 -61064653130647 -61064653145064 -61064653321326 -61064653339203 -61064653359177 -61064653376111 -61064653392985 -61064653410238 -61064653527833 -61064653554710 -61064653581288 -61064653603815 -61064653621453 -61064653746480 -61064653765980 -61064653793554 -61064654000629 -61064654248933 -61064654272346 -61064654289678 -61064654313357 -61064654534607 -61064654553874 -61064654583019 -61064654769395 -61064654985532 -61064655003386 -61064655024176 -61064655240598 -61064655259767 -61064655276470 -61064655325618 -61064655530171 -61064655548304 -61064655570240 -61064655754400 -61064655791327 -61064655809415 -61064655827195 -61064655855463 -61064655869988 -61064656036896 -61064656057123 -61064656076791 -61064656116775 -61064656272668 -61064656319645 -61064656495354 -61064656518989 -61064656797796 -61064656826377 -61064656984930 -61064657136428 -61064657171566 -61064657386670 -61064657439092 -61064657461806 -61064657529480 -61064657647422 -61064657671049 -61064657771895 -61064657888782 -61064658002361 -61064658021081 -61064658136817 -61064658166605 -61064658208746 -61064658226595 -61064658285572 -61064658347345 -61064658367756 -61064658456223 -61064658484225 -61064658580410 -61064658668286 -61064658779723 -61064658803965 -61064658907638 -61064658934682 -61064659030718 -61064659119946 -61064659145163 -61064659231657 -61064659347371 -61064659444257 -61064659466224 -61064659575049 -61064659599207 -61064659616769 -61064659638316 -61064659725496 -61064659745535 -61064659869062 -61064659886758 -61064659911549 -61064659934219 -61064660063078 -61064660083894 -61064660136319 -61064660226284 -61064660251353 -61064660386616 -61064660414869 -61064660532439 -61064660561703 -61064660585338 -61064660725791 -61064660798903 -61064660817985 -61064660835334 -61064660851951 -61064660881923 -61064660901003 -61064660919062 -61064660937806 -61064660955158 -61064660973551 -61064660994418 -61064661013101 -61064661032277 -61064661050101 -61064661069067 -61064661087996 -61064661107361 -61064661126114 -61064661145795 -61064661163759 -61064661192806 -61064661211101 -61064661229564 -61064661248261 -61064661270923 -61064661290362 -61064661309098 -61064661327614 -61064661346511 -61064661365236 -61064661383337 -61064661400525 -61064661422390 -61064661442298 -61064661455417 -61064661469061 -61064661491265 -61064661504973 -61064661518420 -61064661532457 -61064661546309 -61064661559975 -61064661573332 -61064661587512 -61064661601807 -61064661615753 -61064661630159 -61064661646790 -61064661660731 -61064661674257 -61064661689924 -61064661703178 -61064661721106 -61064661733996 -61064661746705 -61064661759963 -61064661773229 -61064661786831 -61064661800109 -61064661813303 -61064661826502 -61064661839845 -61064661855197 -61064661868663 -61064661883767 -61064661897065 -61064661910890 -61064661924498 -61064661942271 -61064661956701 -61064661971679 -61064661984776 -61064661998484 -61064662012198 -61064662025367 -61064662039026 -61064662052601 -61064662066335 -61064662079801 -61064662097395 -61064662111641 -61064662125202 -61064662138813 -61064662152349 -61064662171690 -61064662186055 -61064662200009 -61064662213649 -61064662231635 -61064662245321 -61064662258549 -61064662273630 -61064662286584 -61064662301649 -61064662315332 -61064662328798 -61064662342534 -61064662358348 -61064662372266 -61064662388643 -61064662407156 -61064662420344 -61064662433292 -61064662446212 -61064662459160 -61064662471780 -61064662485152 -61064662498501 -61064662512164 -61064662525840 -61064662539423 -61064662627550 -61064662640974 -61064662654243 -61064662670219 -61064662683383 -61064662702818 -61064662715869 -61064662729238 -61064662745062 -61064662760729 -61064662775263 -61064662788717 -61064662802227 -61064662815698 -61064662828858 -61064662844116 -61064662857371 -61064662870683 -61064662883941 -61064662897257 -61064662913073 -61064662943041 -61064662958952 -61064662975121 -61064662993839 -61064663013775 -61064663033554 -61064663046786 -61064663064852 -61064663078152 -61064663093243 -61064663106772 -61064663120811 -61064663136159 -61064663152049 -61064663165831 -61064663179850 -61064663200124 -61064663213047 -61064663226091 -61064663239600 -61064663259353 -61064663279378 -61064663295563 -61064663308907 -61064663328042 -61064663347339 -61064663360774 -61064663376364 -61064663395106 -61064663414121 -61064663429938 -61064663443144 -61064663469845 -61064663486127 -61064663498997 -61064663512178 -61064663530502 -61064663549283 -61064663562520 -61064663575836 -61064663591758 -61064663614731 -61064663627868 -61064663641089 -61064663655973 -61064663676861 -61064663691286 -61064663705078 -61064663730975 -61064663750508 -61064663763892 -61064663777113 -61064663793535 -61064663814333 -61064663827819 -61064663840678 -61064663854758 -61064663876285 -61064663890962 -61064663904147 -61064663920284 -61064663941160 -61064663957142 -61064663970258 -61064663999383 -61064664037134 -61064664050764 -61064664063811 -61064664081591 -61064664101747 -61064664115542 -61064664128704 -61064664143986 -61064664164958 -61064664178861 -61064664191867 -61064664205010 -61064664225444 -61064664242114 -61064664255335 -61064664282025 -61064664303413 -61064664316578 -61064664329817 -61064664344358 -61064664365317 -61064664382561 -61064664395573 -61064664408757 -61064664429426 -61064664445676 -61064664459079 -61064664475487 -61064664497148 -61064664513174 -61064664526328 -61064664546728 -61064664569982 -61064664583982 -61064664596957 -61064664611069 -61064664631459 -61064664647526 -61064664660744 -61064664674226 -61064664694078 -61064664712020 -61064664725150 -61064664738584 -61064664757283 -61064664776228 -61064664789474 -61064664808218 -61064664831365 -61064664848335 -61064664861835 -61064664875229 -61064664894330 -61064664913002 -61064664926317 -61064664939310 -61064664956131 -61064664977973 -61064664990887 -61064665004082 -61064665020012 -61064665041463 -61064665057407 -61064665084215 -61064665105926 -61064665125891 -61064665143020 -61064665160188 -61064665178887 -61064665201023 -61064665219585 -61064665238063 -61064665257992 -61064665277526 -61064665296495 -61064665318121 -61064665336794 -61064665355313 -61064665376854 -61064665407874 -61064665427781 -61064665451960 -61064665473509 -61064665495191 -61064665516933 -61064665539341 -61064665561635 -61064665583422 -61064665597641 -61064665610482 -61064665624065 -61064665637066 -61064665650773 -61064665664461 -61064665677406 -61064665698321 -61064665710941 -61064665723554 -61064665736594 -61064665752968 -61064665766438 -61064665804398 -61064665825862 -61064665851068 -61064665866273 -61064665880502 -61064665897499 -61064665911956 -61064665925926 -61064665939857 -61064665954154 -61064665976867 -61064665992181 -61064666006707 -61064666021370 -61064666038043 -61064666052551 -61064666070567 -61064666092332 -61064666115021 -61064666128573 -61064666142573 -61064666163634 -61064666186029 -61064666199995 -61064666214056 -61064666235449 -61064666259208 -61064666275080 -61064666293967 -61064666317627 -61064666367380 -61064666389191 -61064666403844 -61064666416936 -61064666433938 -61064666454505 -61064666470722 -61064666483955 -61064666497055 -61064666515952 -61064666534689 -61064666547662 -61064666566829 -61064666586630 -61064666604392 -61064666617605 -61064666633853 -61064666653770 -61064666671770 -61064666687999 -61064666701383 -61064666723205 -61064666741375 -61064666754579 -61064666767712 -61064666786488 -61064666805642 -61064666819274 -61064666838614 -61064666858828 -61064666876251 -61064666889402 -61064666903309 -61064666922991 -61064666942916 -61064666956428 -61064666969481 -61064666986371 -61064667007077 -61064667021038 -61064667034425 -61064667049688 -61064667071303 -61064667085415 -61064667104426 -61064667123003 -61064667143072 -61064667156361 -61064667172379 -61064667189973 -61064667210605 -61064667224716 -61064667237655 -61064667252980 -61064667277187 -61064667290824 -61064667304128 -61064667319094 -61064667340270 -61064667354293 -61064667375084 -61064667412301 -61064667434272 -61064667449843 -61064667463940 -61064667482086 -61064667503825 -61064667519491 -61064667536305 -61064667556720 -61064667577341 -61064667592831 -61064667607362 -61064667632596 -61064667656937 -61064667672390 -61064667700582 -61064667719207 -61064667733370 -61064667753174 -61064667775547 -61064667798069 -61064667819817 -61064667834216 -61064667856828 -61064667875773 -61064667889213 -61064667903443 -61064667925165 -61064667944035 -61064667958427 -61064667972604 -61064668020278 -61064668045364 -61064668067682 -61064668090971 -61064668114841 -61064668131080 -61064668145209 -61064668160714 -61064668184652 -61064668200350 -61064668214253 -61064668229989 -61064668251614 -61064668272194 -61064668286055 -61064668300896 -61064668335942 -61064668350267 -61064668364491 -61064668385484 -61064668405928 -61064668420297 -61064668434053 -61064668454069 -61064668474158 -61064668488498 -61064668502837 -61064668522249 -61064668542979 -61064668557247 -61064668571354 -61064668590768 -61064668610859 -61064668624992 -61064668638909 -61064668658394 -61064668678250 -61064668692355 -61064668706192 -61064668725771 -61064668746585 -61064668760747 -61064668798372 -61064668818246 -61064668842121 -61064668860495 -61064668882239 -61064668896367 -61064668916088 -61064668937621 -61064668955458 -61064668969344 -61064668983411 -61064669004695 -61064669023344 -61064669037403 -61064669073698 -61064669097183 -61064669110183 -61064669123221 -61064669141874 -61064669162181 -61064669183344 -61064669197236 -61064669216851 -61064669230678 -61064669244582 -61064669258339 -61064669274405 -61064669296522 -61064669310378 -61064669323249 -61064669337381 -61064669358801 -61064669373949 -61064669387050 -61064669400269 -61064669420525 -61064669437891 -61064669451139 -61064669471354 -61064669494035 -61064669507760 -61064669520702 -61064669533621 -61064669552874 -61064669570903 -61064669583970 -61064669597207 -61064669615615 -61064669636439 -61064669728225 -61064669747364 -61064669768472 -61064669782036 -61064669795431 -61064669822707 -61064669840392 -61064669853958 -61064669866928 -61064669885341 -61064669903595 -61064669917256 -61064669930749 -61064669947038 -61064669967819 -61064669981496 -61064669994866 -61064670009337 -61064670031569 -61064670045908 -61064670059591 -61064670082398 -61064670102881 -61064670116411 -61064670130305 -61064670145695 -61064670167199 -61064670180919 -61064670194917 -61064670209666 -61064670231215 -61064670247606 -61064670261592 -61064670274702 -61064670295186 -61064670312108 -61064670325889 -61064670346291 -61064670369497 -61064670383198 -61064670395882 -61064670409883 -61064670429895 -61064670446402 -61064670460379 -61064670473806 -61064670492808 -61064670513628 -61064670528437 -61064670541845 -61064670562969 -61064670580585 -61064670597143 -61064670622742 -61064670644162 -61064670657898 -61064670671195 -61064670688507 -61064670709370 -61064670723668 -61064670737400 -61064670753793 -61064670774934 -61064670791826 -61064670806076 -61064670826570 -61064670845802 -61064670859778 -61064670873318 -61064670900747 -61064670919729 -61064670936174 -61064670951176 -61064670973790 -61064670987599 -61064671000096 -61064671013286 -61064671033427 -61064671051281 -61064671064857 -61064671083458 -61064671104899 -61064671121120 -61064671134474 -61064671151671 -61064671181227 -61064671194362 -61064671207245 -61064671222716 -61064671247235 -61064671261051 -61064671274671 -61064671294438 -61064671315112 -61064671330879 -61064671344675 -61064671362421 -61064671382209 -61064671398187 -61064671412419 -61064671429677 -61064671455863 -61064671469073 -61064671481423 -61064671500060 -61064671519654 -61064671532906 -61064671545654 -61064671562529 -61064671583785 -61064671597235 -61064671610212 -61064671627180 -61064671648863 -61064671662510 -61064671676788 -61064671693091 -61064671720601 -61064671734199 -61064671747130 -61064671768169 -61064671789371 -61064671803456 -61064671816274 -61064671835576 -61064671854693 -61064671868276 -61064671885858 -61064671907233 -61064671924655 -61064671937936 -61064671952077 -61064671975513 -61064672013537 -61064672039457 -61064672056561 -61064672069611 -61064672087527 -61064672108486 -61064672122590 -61064672140807 -61064672160632 -61064672178725 -61064672191952 -61064672205540 -61064672227003 -61064672248415 -61064672261708 -61064672275017 -61064672303353 -61064672318461 -61064672330919 -61064672343671 -61064672362375 -61064672380621 -61064672396527 -61064672409893 -61064672428955 -61064672447885 -61064672461249 -61064672474858 -61064672492074 -61064672511942 -61064672527621 -61064672540713 -61064672574803 -61064672588540 -61064672601136 -61064672614197 -61064672634668 -61064672651967 -61064672665389 -61064672678790 -61064672697664 -61064672718411 -61064672731371 -61064672744367 -61064672763285 -61064672781863 -61064672795395 -61064672808505 -61064672834371 -61064672851739 -61064672864378 -61064672877426 -61064672894066 -61064672913881 -61064672927387 -61064672941598 -61064672957335 -61064672978481 -61064672992369 -61064673005700 -61064673023519 -61064673045155 -61064673058734 -61064673071661 -61064673095147 -61064673114886 -61064673127650 -61064673140538 -61064673154942 -61064673176269 -61064673190336 -61064673203372 -61064673216802 -61064673237361 -61064673254097 -61064673267267 -61064673280645 -61064673306289 -61064673322679 -61064673337986 -61064673365038 -61064673384265 -61064673397414 -61064673410050 -61064673425351 -61064673446856 -61064673462929 -61064673476162 -61064673491132 -61064673512526 -61064673526767 -61064673539789 -61064673557603 -61064673579414 -61064673599939 -61064673616684 -61064673645944 -61064673661590 -61064673674434 -61064673687217 -61064673707250 -61064673725193 -61064673738474 -61064673751897 -61064673770878 -61064673789296 -61064673802103 -61064673814867 -61064673831044 -61064673852278 -61064673866117 -61064673878959 -61064673903718 -61064673925298 -61064673938708 -61064673953389 -61064673972403 -61064673990927 -61064674004297 -61064674017381 -61064674034423 -61064674054544 -61064674070135 -61064674083312 -61064674099670 -61064674120774 -61064674134057 -61064674151472 -61064674178353 -61064674194270 -61064674206990 -61064674219398 -61064674237543 -61064674255931 -61064674269253 -61064674282306 -61064674301422 -61064674322145 -61064674335845 -61064674348653 -61064674368148 -61064674387762 -61064674400731 -61064674415934 -61064674442749 -61064674460582 -61064674476024 -61064674489799 -61064674509527 -61064674527168 -61064674541145 -61064674554633 -61064674572982 -61064674591352 -61064674604667 -61064674617918 -61064674634029 -61064674655016 -61064674668727 -61064674681781 -61064674706547 -61064674724916 -61064674740652 -61064674754258 -61064674774551 -61064674793503 -61064674806907 -61064674820202 -61064674840862 -61064674859918 -61064674873460 -61064674888901 -61064674907466 -61064674926284 -61064674939777 -61064674953236 -61064674979474 -61064674996847 -61064675010313 -61064675023596 -61064675042428 -61064675060474 -61064675076532 -61064675089800 -61064675108032 -61064675126816 -61064675140416 -61064675153524 -61064675172780 -61064675192537 -61064675206189 -61064675219460 -61064675243790 -61064675263880 -61064675279346 -61064675292431 -61064675311970 -61064675330420 -61064675343922 -61064675357173 -61064675377347 -61064675395780 -61064675411827 -61064675425327 -61064675444447 -61064675463540 -61064675476915 -61064675490589 -61064675517528 -61064675533808 -61064675547028 -61064675637655 -61064675691484 -61064675716156 -61064675802117 -61064675821663 -61064675933441 -61064676041044 -61064676066401 -61064676085825 -61064676226827 -61064676315800 -61064676334961 -61064676409656 -61064676536204 -61064676614731 -61064676704522 -61064676739208 -61064676767014 -61064676849401 -61064676878386 -61064676902529 -61064676923188 -61064676949496 -61064677043462 -61064677062928 -61064677095007 -61064677126764 -61064677147772 -61064677218792 -61064677277605 -61064677335304 -61064677364696 -61064677389061 -61064677453379 -61064677532414 -61064677603218 -61064677669968 -61064677763182 -61064677827523 -61064677906590 -61064677934780 -61064678045543 -61064678127322 -61064678181650 -61064678276671 -61064678304791 -61064678424492 -61064678458992 -61064678577726 -61064678710813 -61064678837698 -61064678892984 -61064678946884 -61064679001705 -61064679019723 -61064679036856 -61064679150327 -61064679168723 -61064679263750 -61064679349740 -61064679413626 -61064679561859 -61064679589927 -61064679669879 -61064679694122 -61064679818737 -61064679937598 -61064679973657 -61064680018243 -61064680131664 -61064680164026 -61064680194007 -61064680380299 -61064680505709 -61064680536551 -61064680622944 -61064680650780 -61064680936919 -61064681096440 -61064681123755 -61064681190973 -61064681219951 -61064681241576 -61064681267524 -61064681294444 -61064681323633 -61064681398452 -61064681460078 -61064681520874 -61064681580202 -61064681639618 -61064681698566 -61064681757996 -61064681815973 -61064681875570 -61064681951226 -61064681979955 -61064682039978 -61064682105203 -61064682165362 -61064682241281 -61064682269210 -61064682415174 -61064682612341 -61064682753983 -61064682933021 -61064682968219 -61064682997290 -61064683181998 -61064683217004 -61064683244922 -61064683367925 -61064683519401 -61064683539485 -61064683570837 -61064683596539 -61064683717206 -61064683744362 -61064683873759 -61064683899126 -61064683994187 -61064684199418 -61064684373514 -61064684399697 -61064684593327 -61064684622808 -61064684648435 -61064684673479 -61064684840947 -61064684871496 -61064685186164 -61064685336402 -61064685464956 -61064685634635 -61064685660682 -61064685838755 -61064686057498 -61064686077562 -61064686095276 -61064686113693 -61064686129145 -61064686326059 -61064686350647 -61064686526367 -61064686663684 -61064686709006 -61064686871613 -61064687035852 -61064687065840 -61064687088843 -61064687231007 -61064687388682 -61064687406563 -61064687497189 -61064687515442 -61064687685339 -61064687711981 -61064687846524 -61064687874380 -61064687904875 -61064687930859 -61064688350148 -61064688383148 -61064688400998 -61064688421914 -61064688436401 -61064688645699 -61064688896556 -61064688922060 -61064688955647 -61064688980128 -61064689144876 -61064689355273 -61064689585268 -61064689703466 -61064689839666 -61064689879219 -61064689912727 -61064690109764 -61064690147421 -61064690222883 -61064690246083 -61064690420598 -61064690440903 -61064690458179 -61064690606536 -61064690638769 -61064690738316 -61064690947336 -61064690980218 -61064690999780 -61064691025995 -61064691163721 -61064691297303 -61064691436648 -61064691467106 -61064691633620 -61064691660262 -61064691684700 -61064691725754 -61064691994725 -61064692034587 -61064692054229 -61064692072816 -61064692093620 -61064692112220 -61064692141476 -61064692159707 -61064692177456 -61064692196076 -61064692213881 -61064692232457 -61064692251385 -61064692274837 -61064692294934 -61064692317399 -61064692337921 -61064692358982 -61064692379454 -61064692401815 -61064692428096 -61064692445975 -61064692635874 -61064692653975 -61064692870443 -61064692899747 -61064692924411 -61064692942921 -61064692960448 -61064692978325 -61064692996950 -61064693014883 -61064693038189 -61064693268424 -61064693297684 -61064693322164 -61064693342026 -61064693613696 -61064693814115 -61064693859056 -61064693880932 -61064694007891 -61064694059246 -61064694084442 -61064694311915 -61064694340114 -61064694356067 -61064694383725 -61064694624964 -61064694654742 -61064694874779 -61064695039254 -61064695198928 -61064695235358 -61064695257821 -61064695494331 -61064695523330 -61064695551079 -61064695749353 -61064695865663 -61064695907357 -61064695929539 -61064696330988 -61064696362914 -61064696388497 -61064696554944 -61064696570524 -61064696584451 -61064696754084 -61064696775421 -61064696791453 -61064696806453 -61064696818924 -61064697007741 -61064697038037 -61064697087371 -61064697236874 -61064697264898 -61064697293265 -61064697312187 -61064697336417 -61064697498329 -61064697540080 -61064697565834 -61064697727074 -61064697755685 -61064697780634 -61064697806692 -61064698025521 -61064698064100 -61064698252284 -61064698281849 -61064698317139 -61064698433402 -61064698546485 -61064698657250 -61064698774527 -61064698884993 -61064699019156 -61064699264080 -61064699407452 -61064699451427 -61064699478810 -61064699589925 -61064699633937 -61064699908721 -61064699928143 -61064699946729 -61064699964612 -61064699979200 -61064700217436 -61064700235392 -61064700252816 -61064700271355 -61064700297956 -61064700431300 -61064700457696 -61064700571647 -61064700590387 -61064700607703 -61064700695485 -61064700714989 -61064700728811 -61064700751949 -61064700879509 -61064701011643 -61064701041957 -61064701150564 -61064701270647 -61064701416789 -61064701438937 -61064701456905 -61064701668208 -61064701705573 -61064701731121 -61064701919672 -61064702289294 -61064702339089 -61064702373473 -61064702407947 -61064702727920 -61064702767993 -61064702834729 -61064702857667 -61064702883414 -61064703094489 -61064703214610 -61064703258389 -61064703400329 -61064703434277 -61064703553962 -61064703602478 -61064703736262 -61064703845519 -61064703974546 -61064704036870 -61064704065736 -61064704340675 -61064704376723 -61064704426209 -61064704671995 -61064704911109 -61064704949526 -61064704984854 -61064705120844 -61064705157289 -61064705327843 -61064705391498 -61064705432390 -61064705464370 -61064705656881 -61064705862967 -61064706068879 -61064706102206 -61064706129195 -61064706372510 -61064706515181 -61064706734530 -61064706888644 -61064707071826 -61064707219279 -61064707385966 -61064707409432 -61064707636995 -61064707663932 -61064707696284 -61064707876337 -61064708044464 -61064708076904 -61064708100016 -61064708408474 -61064708591377 -61064708618491 -61064708745955 -61064708789012 -61064708815267 -61064708949383 -61064708975585 -61064708999669 -61064709025178 -61064709229085 -61064709260369 -61064709304135 -61064709481668 -61064709511167 -61064709539860 -61064709568823 -61064709692951 -61064709929792 -61064710145027 -61064710174588 -61064710200337 -61064710383804 -61064710410929 -61064710594445 -61064710722375 -61064710866671 -61064711136530 -61064711166000 -61064711302039 -61064711328862 -61064711352844 -61064711479699 -61064711573939 -61064711673190 -61064711863186 -61064711886072 -61064711986472 -61064712113656 -61064712350020 -61064712376497 -61064712397770 -61064712435726 -61064712712957 -61064712743015 -61064712789365 -61064712815380 -61064712839105 -61064712977527 -61064713004184 -61064713030641 -61064713056510 -61064713395619 -61064713435099 -61064713684277 -61064713722602 -61064713748455 -61064713773310 -61064713891891 -61064714112639 -61064714352602 -61064714378941 -61064714404326 -61064714429607 -61064714454458 -61064714602247 -61064714918629 -61064715121590 -61064715889847 -61064715933532 -61064716190680 -61064716231209 -61064716269707 -61064716459394 -61064716479303 -61064716716349 -61064716749717 -61064716773974 -61064716788742 -61064717007382 -61064717160358 -61064717186862 -61064717205206 -61064717258707 -61064717286363 -61064717467400 -61064717608470 -61064717796761 -61064717841533 -61064717867194 -61064718016173 -61064718045974 -61064718218457 -61064718236637 -61064718257929 -61064718274617 -61064718291362 -61064718460950 -61064718482893 -61064718499573 -61064718516573 -61064718533307 -61064718550114 -61064718576276 -61064718686508 -61064718850940 -61064718882035 -61064719052242 -61064719187766 -61064719218519 -61064719246568 -61064719519845 -61064719646340 -61064719877123 -61064719902725 -61064719927306 -61064719950786 -61064720198003 -61064720235221 -61064720417386 -61064720443444 -61064720469236 -61064720494598 -61064720730048 -61064720775184 -61064720809887 -61064720844065 -61064720879535 -61064721037778 -61064721208836 -61064721407930 -61064721432862 -61064721644298 -61064721895518 -61064722181130 -61064722338117 -61064722587749 -61064722711982 -61064722744747 -61064722875536 -61064723055002 -61064723204712 -61064723377427 -61064723702341 -61064723868939 -61064724055133 -61064724154250 -61064724288416 -61064724444642 -61064724615085 -61064724709827 -61064724842686 -61064725058406 -61064725250554 -61064725460037 -61064725478082 -61064725495451 -61064725514954 -61064725740117 -61064725758128 -61064725775643 -61064725903490 -61064725922410 -61064725957485 -61064725979848 -61064726008329 -61064726126457 -61064726332726 -61064726546674 -61064726764480 -61064726967356 -61064727119626 -61064727139091 -61064727429998 -61064727472637 -61064727506009 -61064727671854 -61064727713889 -61064727754102 -61064728033409 -61064728074399 -61064728107333 -61064728349792 -61064728377753 -61064728413410 -61064728445138 -61064728483605 -61064728667729 -61064728706630 -61064728743936 -61064728826532 -61064728865049 -61064728902633 -61064728959588 -61064729067047 -61064729108544 -61064729145400 -61064729313523 -61064729348035 -61064729465114 -61064729503731 -61064729637181 -61064729677062 -61064729709395 -61064729853584 -61064730036345 -61064730080935 -61064730122353 -61064730322139 -61064730363599 -61064730399909 -61064730499350 -61064730539678 -61064730615518 -61064730704474 -61064730744651 -61064730775597 -61064730866336 -61064730901195 -61064730931389 -61064731017095 -61064731054459 -61064731085058 -61064731206537 -61064731351316 -61064731496277 -61064731530460 -61064731647834 -61064731756827 -61064731795183 -61064731830479 -61064732058001 -61064732098869 -61064732139077 -61064732343259 -61064732549058 -61064732573310 -61064732636546 -61064732659780 -61064732770473 -61064732789291 -61064732819599 -61064732843985 -61064732894872 -61064732959707 -61064732980408 -61064733002457 -61064733019230 -61064733032302 -61064733045219 -61064733064914 -61064733083489 -61064733096687 -61064733109727 -61064733136457 -61064733154747 -61064733167497 -61064733180514 -61064733199669 -61064733218708 -61064733234691 -61064733248452 -61064733269453 -61064733287938 -61064733301381 -61064733314355 -61064733335702 -61064733356327 -61064733373442 -61064733387347 -61064733415133 -61064733430713 -61064733444326 -61064733458750 -61064733479719 -61064733495831 -61064733508987 -61064733527139 -61064733548701 -61064733564081 -61064733577297 -61064733590642 -61064733610797 -61064733628569 -61064733641664 -61064733654844 -61064733682216 -61064733699615 -61064733713117 -61064733730023 -61064733751014 -61064733770492 -61064733784087 -61064733797087 -61064733817578 -61064733838767 -61064733851318 -61064733864597 -61064733884992 -61064733904133 -61064733917312 -61064733930637 -61064733958114 -61064733975278 -61064733987809 -61064733999995 -61064734018902 -61064734037648 -61064734050935 -61064734063976 -61064734081150 -61064734101430 -61064734114945 -61064734128195 -61064734143181 -61064734164643 -61064734178603 -61064734194685 -61064734218998 -61064734239219 -61064734251711 -61064734264292 -61064734279681 -61064734301560 -61064734318450 -61064734331829 -61064734348265 -61064734369551 -61064734383328 -61064734399125 -61064734419317 -61064734438604 -61064734454194 -61064734468801 -61064734503548 -61064734527024 -61064734544183 -61064734569467 -61064734590851 -61064734609777 -61064734628695 -61064734648871 -61064734672537 -61064734696012 -61064734715551 -61064734736256 -61064734756184 -61064734775260 -61064734795527 -61064734815774 -61064734844452 -61064734866951 -61064734890538 -61064734912802 -61064734930579 -61064734948526 -61064734967457 -61064734986538 -61064735006370 -61064735026640 -61064735049551 -61064735068543 -61064735089477 -61064735109749 -61064735130905 -61064735152060 -61064735189071 -61064735214613 -61064735228244 -61064735241262 -61064735254525 -61064735270897 -61064735284158 -61064735297665 -61064735311041 -61064735324326 -61064735337094 -61064735350224 -61064735363496 -61064735376902 -61064735390157 -61064735403489 -61064735422091 -61064735435846 -61064735448630 -61064735482230 -61064735496014 -61064735509981 -61064735523885 -61064735538198 -61064735555116 -61064735569039 -61064735583020 -61064735597154 -61064735611021 -61064735625132 -61064735639012 -61064735652906 -61064735670943 -61064735685617 -61064735699402 -61064735713122 -61064735727077 -61064735741131 -61064735755357 -61064735769497 -61064735783561 -61064735797483 -61064735811816 -61064735833884 -61064735850496 -61064735864384 -61064735891533 -61064735906770 -61064735921728 -61064735935899 -61064735952229 -61064735965965 -61064735980708 -61064735994853 -61064736033901 -61064736057490 -61064736078226 -61064736092804 -61064736116213 -61064736136115 -61064736154535 -61064736184122 -61064736207111 -61064736230235 -61064736251199 -61064736272424 -61064736287547 -61064736301599 -61064736320742 -61064736343328 -61064736358103 -61064736372186 -61064736396107 -61064736418344 -61064736439479 -61064736455590 -61064736477775 -61064736505152 -61064736520894 -61064736542084 -61064736566094 -61064736584880 -61064736600267 -61064736622632 -61064736641180 -61064736655091 -61064736674632 -61064736697156 -61064736719111 -61064736733118 -61064736753032 -61064736778180 -61064736792419 -61064736814373 -61064736839238 -61064736854399 -61064736868469 -61064736885503 -61064736908212 -61064736923444 -61064737027293 -61064737083425 -61064737105678 -61064737120563 -61064737136571 -61064737150618 -61064737171889 -61064737190137 -61064737204243 -61064737226686 -61064737250431 -61064737264257 -61064737277918 -61064737297518 -61064737317259 -61064737330610 -61064737344184 -61064737360923 -61064737384078 -61064737404043 -61064737417237 -61064737435798 -61064737457410 -61064737473379 -61064737486962 -61064737512326 -61064737530475 -61064737543241 -61064737559496 -61064737580405 -61064737597973 -61064737611478 -61064737627204 -61064737647853 -61064737666253 -61064737682593 -61064737696065 -61064737716532 -61064737734073 -61064737750021 -61064737764355 -61064737792290 -61064737813177 -61064737826447 -61064737845295 -61064737864416 -61064737880429 -61064737893494 -61064737911111 -61064737931407 -61064737944738 -61064737957780 -61064737977192 -61064737998554 -61064738013962 -61064738027153 -61064738044521 -61064738072821 -61064738088757 -61064738102541 -61064738124407 -61064738140988 -61064738154450 -61064738167643 -61064738191533 -61064738209915 -61064738222447 -61064738236155 -61064738257413 -61064738273447 -61064738286857 -61064738300087 -61064738319635 -61064738348640 -61064738368180 -61064738389044 -61064738404952 -61064738418397 -61064738431828 -61064738447643 -61064738467536 -61064738488557 -61064738502291 -61064738515394 -61064738535455 -61064738554435 -61064738567704 -61064738580661 -61064738599307 -61064738624532 -61064738638911 -61064738651763 -61064738670692 -61064738689138 -61064738702836 -61064738716338 -61064738735025 -61064738754378 -61064738767867 -61064738780697 -61064738796774 -61064738818482 -61064738834457 -61064738847375 -61064738862739 -61064738894408 -61064738911484 -61064738925919 -61064738971628 -61064738985874 -61064739004659 -61064739023444 -61064739037042 -61064739049805 -61064739070981 -61064739090125 -61064739103624 -61064739116539 -61064739135453 -61064739156011 -61064739172141 -61064739192358 -61064739215133 -61064739234459 -61064739255256 -61064739274323 -61064739294108 -61064739307885 -61064739321253 -61064739337248 -61064739358245 -61064739371433 -61064739384853 -61064739402931 -61064739424630 -61064739438655 -61064739451998 -61064739472776 -61064739495813 -61064739509594 -61064739522821 -61064739537736 -61064739559320 -61064739573447 -61064739586685 -61064739600291 -61064739621370 -61064739637170 -61064739650568 -61064739663745 -61064739682644 -61064739701406 -61064739737399 -61064739767040 -61064739786376 -61064739799695 -61064739819109 -61064739839405 -61064739853824 -61064739868187 -61064739888129 -61064739907833 -61064739921685 -61064739935679 -61064739955645 -61064739975550 -61064739989871 -61064740022614 -61064740045770 -61064740065781 -61064740081871 -61064740106094 -61064740121383 -61064740135361 -61064740150527 -61064740174580 -61064740189854 -61064740203881 -61064740219306 -61064740242481 -61064740257798 -61064740271653 -61064740286271 -61064740308219 -61064740327593 -61064740346770 -61064740367546 -61064740388077 -61064740402822 -61064740416634 -61064740437493 -61064740457708 -61064740472372 -61064740486384 -61064740513823 -61064740530437 -61064740545049 -61064740560761 -61064740583930 -61064740600930 -61064740615136 -61064740637164 -61064740663798 -61064740687271 -61064740705867 -61064740729867 -61064740745026 -61064740759129 -61064740774941 -61064740801649 -61064740826683 -61064740847788 -61064740870700 -61064740885744 -61064740899858 -61064740917131 -61064740940032 -61064740961301 -61064740976948 -61064740999107 -61064741016489 -61064741030739 -61064741045953 -61064741068629 -61064741085691 -61064741100597 -61064741115963 -61064741172755 -61064741190965 -61064741212137 -61064741225825 -61064741238979 -61064741253676 -61064741281213 -61064741298227 -61064741310758 -61064741329799 -61064741349010 -61064741362149 -61064741375932 -61064741392211 -61064741413846 -61064741430208 -61064741443579 -61064741464836 -61064741483285 -61064741496029 -61064741508788 -61064741523819 -61064741550607 -61064741567329 -61064741580635 -61064741600500 -61064741620157 -61064741633500 -61064741646476 -61064741663819 -61064741684519 -61064741698320 -61064741711955 -61064741728038 -61064741749608 -61064741763622 -61064741776638 -61064741790994 -61064741817867 -61064741836458 -61064741850052 -61064741876378 -61064741894661 -61064741908194 -61064741921250 -61064741941447 -61064741962430 -61064741976836 -61064741989893 -61064742010913 -61064742029570 -61064742051914 -61064742075169 -61064742100565 -61064742128739 -61064742154718 -61064742170995 -61064742190033 -61064742213247 -61064742232792 -61064742247747 -61064742268211 -61064742290297 -61064742307647 -61064742346276 -61064742377401 -61064742394283 -61064742473352 -61064742536536 -61064742565320 -61064742643185 -61064742661541 -61064742680258 -61064742848901 -61064742874798 -61064742895409 -61064742915147 -61064742936100 -61064742956722 -61064742977228 -61064743003008 -61064743024418 -61064743045420 -61064743065294 -61064743085839 -61064743106673 -61064743138956 -61064743159907 -61064743180178 -61064743206634 -61064743228028 -61064743246287 -61064743265520 -61064743284881 -61064743304579 -61064743324806 -61064743345476 -61064743366074 -61064743387600 -61064743412118 -61064743433902 -61064743461509 -61064743496400 -61064743519393 -61064743552152 -61064743625379 -61064743699708 -61064743785441 -61064743849607 -61064743913061 -61064743976362 -61064744102206 -61064744166931 -61064744286723 -61064744319875 -61064744349169 -61064744427689 -61064744485235 -61064744595086 -61064744630148 -61064744658777 -61064744829742 -61064744850797 -61064744872993 -61064744904047 -61064744927462 -61064744958407 -61064744980885 -61064745065699 -61064745839960 -61064745905491 -61064745968855 -61064746048446 -61064746113120 -61064746176463 -61064746239357 -61064746302744 -61064746366818 -61064746461790 -61064746522058 -61064746583173 -61064746642551 -61064746728463 -61064746789673 -61064746849682 -61064746909786 -61064746985701 -61064747013961 -61064747075057 -61064747134334 -61064747193246 -61064747263677 -61064747408072 -61064747425562 -61064747445807 -61064747552524 -61064747578446 -61064747657614 -61064747688651 -61064747722862 -61064747805004 -61064747855932 -61064747900433 -61064747934237 -61064748020469 -61064748122703 -61064748163953 -61064748194979 -61064748297008 -61064748352716 -61064748519962 -61064748558308 -61064748682477 -61064748860141 -61064748907884 -61064748942372 -61064749035589 -61064749072159 -61064749108061 -61064749234853 -61064749364563 -61064749566441 -61064749609536 -61064749646929 -61064749860352 -61064750094104 -61064750309548 -61064750455416 -61064750477437 -61064750495063 -61064750512607 -61064750618405 -61064750637013 -61064750653662 -61064750669916 -61064750687176 -61064750792571 -61064750952949 -61064750972383 -61064750989102 -61064751010055 -61064751103414 -61064751126305 -61064751165565 -61064751190602 -61064751418673 -61064751437997 -61064751615298 -61064751639231 -61064751662275 -61064751680176 -61064751695531 -61064751889977 -61064751916300 -61064752408932 -61064752427040 -61064752451356 -61064752472148 -61064752485999 -61064752718668 -61064752755396 -61064752795877 -61064752842333 -61064753093703 -61064753135131 -61064753177477 -61064753221417 -61064753463008 -61064753680915 -61064753925678 -61064753955948 -61064754068276 -61064754271382 -61064754466118 -61064754662024 -61064754911553 -61064754944994 -61064754990423 -61064755017152 -61064755219976 -61064755466390 -61064755493918 -61064755517592 -61064755541053 -61064755567068 -61064755776743 -61064755812126 -61064755835279 -61064755852460 -61064756061038 -61064756083074 -61064756184602 -61064756587004 -61064756631660 -61064756660088 -61064756830161 -61064756859811 -61064756991588 -61064757023752 -61064757051931 -61064757200346 -61064757322881 -61064757341890 -61064757359887 -61064757377404 -61064757395350 -61064757544543 -61064757578326 -61064757618220 -61064757741468 -61064757906924 -61064757933589 -61064757961174 -61064758134366 -61064758175334 -61064758202146 -61064758423445 -61064758658168 -61064758816382 -61064758846682 -61064758872146 -61064759041535 -61064759180312 -61064759412100 -61064759626217 -61064759655708 -61064759676627 -61064759908897 -61064759934775 -61064759952756 -61064759981279 -61064760158510 -61064760186560 -61064760313330 -61064760597960 -61064760626863 -61064760814892 -61064761001134 -61064761103787 -61064761126554 -61064761343293 -61064761484423 -61064761587011 -61064761808811 -61064761823862 -61064762018141 -61064762043450 -61064762068749 -61064762087224 -61064762308066 -61064762339234 -61064762538375 -61064762775517 -61064763065804 -61064763096302 -61064763136623 -61064763160153 -61064763193921 -61064763407962 -61064763440676 -61064763621621 -61064763638287 -61064763764366 -61064764131640 -61064764171684 -61064764245411 -61064764288853 -61064764322278 -61064764576721 -61064764611500 -61064764647756 -61064764762469 -61064764796010 -61064765049421 -61064765181840 -61064765456610 -61064765480811 -61064765502011 -61064765515843 -61064765737369 -61064765758533 -61064765787287 -61064765948714 -61064765968507 -61064766001819 -61064766020169 -61064766167260 -61064766198773 -61064766312653 -61064766340726 -61064766361983 -61064766382089 -61064766413815 -61064766653576 -61064766891171 -61064766917488 -61064766939635 -61064766967273 -61064766986714 -61064767138729 -61064767158421 -61064767210997 -61064767228135 -61064767245276 -61064767260971 -61064767464807 -61064767483675 -61064767500584 -61064767514459 -61064767695670 -61064767718438 -61064767737620 -61064767754470 -61064768023810 -61064768042904 -61064768059545 -61064768075704 -61064768092832 -61064768115157 -61064768314041 -61064768344155 -61064768601941 -61064768620801 -61064768636040 -61064768849822 -61064768864905 -61064768888937 -61064769177400 -61064769237058 -61064769270530 -61064769455195 -61064769496349 -61064769535673 -61064769674092 -61064769902489 -61064769943646 -61064769987710 -61064770169717 -61064770207749 -61064770245434 -61064770383448 -61064770429282 -61064770472811 -61064770527289 -61064770685041 -61064770730341 -61064770775792 -61064771012326 -61064771041713 -61064771101316 -61064771130101 -61064771145003 -61064771401254 -61064771431129 -61064771624139 -61064771873119 -61064772127986 -61064772334833 -61064772597877 -61064772618114 -61064772635394 -61064772877492 -61064772909108 -61064772934089 -61064773086031 -61064773189544 -61064773220177 -61064773245175 -61064773404478 -61064773515801 -61064773664254 -61064773694607 -61064773850069 -61064773890748 -61064774075689 -61064774265974 -61064774299601 -61064774326033 -61064774350797 -61064774529959 -61064774565152 -61064774714097 -61064774741661 -61064774858471 -61064775040545 -61064775231023 -61064775400919 -61064775441899 -61064775476282 -61064775707348 -61064775730947 -61064775761366 -61064775785339 -61064776022615 -61064776139315 -61064776346476 -61064776367034 -61064776525417 -61064776552435 -61064776748414 -61064776771657 -61064776808485 -61064776834734 -61064776996642 -61064777022156 -61064777150563 -61064777280793 -61064777553915 -61064777686176 -61064777705173 -61064777905268 -61064777929774 -61064777950694 -61064778217611 -61064778244015 -61064778422042 -61064778587843 -61064778608424 -61064778635517 -61064778788889 -61064779004480 -61064779210043 -61064779316770 -61064779343535 -61064779370983 -61064779520077 -61064781798961 -61064781829103 -61064781996892 -61064782156024 -61064782179240 -61064782221720 -61064782887629 -61064782910270 -61064783106329 -61064783135315 -61064783285207 -61064783302136 -61064783510090 -61064783779762 -61064783946244 -61064784297397 -61064784556120 -61064784713593 -61064784811328 -61064784953310 -61064785046688 -61064785150990 -61064785305076 -61064785430979 -61064785591025 -61064785736025 -61064785863024 -61064786011155 -61064786141421 -61064786244997 -61064786392129 -61064786535551 -61064786769541 -61064786896199 -61064787004485 -61064787098244 -61064787198522 -61064787337089 -61064787518828 -61064787639471 -61064787769464 -61064787914524 -61064788023228 -61064788155740 -61064788246926 -61064788348348 -61064788493404 -61064788634847 -61064788744792 -61064788774251 -61064788899737 -61064789105963 -61064789198229 -61064789327229 -61064789517360 -61064789603765 -61064789721051 -61064789809246 -61064789931059 -61064790017491 -61064790262716 -61064790478272 -61064790643892 -61064790809739 -61064790847308 -61064790876634 -61064791001134 -61064791103102 -61064791233225 -61064791330983 -61064791426775 -61064791460097 -61064791618105 -61064791735745 -61064791870995 -61064791908507 -61064791939271 -61064792090724 -61064792130918 -61064792166287 -61064792313641 -61064792351692 -61064792387737 -61064792580199 -61064792617095 -61064792843492 -61064792886638 -61064793011102 -61064793203766 -61064793239986 -61064793419781 -61064793680996 -61064793861543 -61064794139697 -61064794178531 -61064794217516 -61064794447336 -61064794486951 -61064794518124 -61064794747007 -61064794781145 -61064795051849 -61064795091538 -61064795318044 -61064795356981 -61064795391193 -61064795425127 -61064795724805 -61064795793433 -61064795835657 -61064795978148 -61064796035025 -61064796096508 -61064796231264 -61064796272729 -61064796309901 -61064796514163 -61064796887725 -61064797399054 -61064797422168 -61064797438033 -61064797456999 -61064797476017 -61064797506335 -61064797520415 -61064797730041 -61064797756109 -61064797773376 -61064797996664 -61064798039123 -61064798059802 -61064798070881 -61064798387768 -61064798406948 -61064798424262 -61064798704214 -61064798725471 -61064798739080 -61064798763443 -61064799042672 -61064799062854 -61064799239120 -61064799271313 -61064799296691 -61064799541027 -61064799575079 -61064799601216 -61064799793079 -61064799812543 -61064799939342 -61064799957070 -61064800093015 -61064800218822 -61064800236817 -61064800482497 -61064800505206 -61064800521890 -61064800538833 -61064800660395 -61064800682959 -61064800700150 -61064800717406 -61064800861754 -61064801021760 -61064801226184 -61064801243540 -61064801424330 -61064801442763 -61064801460105 -61064801578679 -61064801822246 -61064801839346 -61064802040245 -61064802058833 -61064802083227 -61064802233521 -61064802251849 -61064802270822 -61064802297319 -61064802313555 -61064802534489 -61064802564519 -61064802712545 -61064802734530 -61064803024583 -61064803055716 -61064803307545 -61064803581066 -61064803608715 -61064803780703 -61064803889992 -61064804032210 -61064804153456 -61064804183257 -61064804200498 -61064804294500 -61064804382416 -61064804399898 -61064804417210 -61064804448453 -61064804592342 -61064804718554 -61064804736917 -61064804846927 -61064804949874 -61064805048508 -61064805180855 -61064805268427 -61064805286257 -61064805383805 -61064805480892 -61064805497581 -61064805514733 -61064805531439 -61064805633917 -61064805752311 -61064805879634 -61064805980186 -61064806077892 -61064806251751 -61064806372593 -61064806470984 -61064806574031 -61064806591947 -61064806608968 -61064806697108 -61064806803489 -61064806972673 -61064807114278 -61064807132862 -61064807231627 -61064807328760 -61064807446737 -61064807574446 -61064807673118 -61064807691288 -61064807711513 -61064807728332 -61064807837996 -61064807870123 -61064807888940 -61064807991908 -61064808148902 -61064808291460 -61064808318229 -61064808335477 -61064808461640 -61064808570347 -61064808674123 -61064808861349 -61064808879802 -61064808897662 -61064809109604 -61064809294098 -61064809313585 -61064809465220 -61064809606675 -61064809633298 -61064809827658 -61064809847075 -61064809971751 -61064810001489 -61064810025002 -61064810219035 -61064810359961 -61064810556715 -61064810680046 -61064810821076 -61064810938543 -61064811059196 -61064811091658 -61064811119045 -61064811237455 -61064811367544 -61064811393713 -61064811520837 -61064811608728 -61064811631150 -61064811725588 -61064811873989 -61064811893200 -61064811919947 -61064812025352 -61064812136102 -61064812439150 -61064812469684 -61064812484244 -61064812502009 -61064812539167 -61064812727283 -61064812745956 -61064812764078 -61064812784643 -61064812885399 -61064812905463 -61064812923391 -61064812943943 -61064812964330 -61064812979018 -61064813074494 -61064813102619 -61064813129678 -61064813148438 -61064813183124 -61064813350656 -61064813390875 -61064813426042 -61064813591708 -61064813783694 -61064813824917 -61064813858863 -61064814032548 -61064814239433 -61064814269043 -61064814428525 -61064814581227 -61064814789059 -61064814827496 -61064814875484 -61064814919005 -61064814958242 -61064814993124 -61064815113259 -61064815148726 -61064815178619 -61064815412753 -61064815454198 -61064815486146 -61064815616414 -61064815648520 -61064815845727 -61064816052141 -61064816089654 -61064816289462 -61064816484146 -61064816522603 -61064816555857 -61064816587982 -61064816799386 -61064816997077 -61064817170052 -61064817207438 -61064817240835 -61064817479642 -61064817514689 -61064817548813 -61064817720111 -61064817752700 -61064817793981 -61064817833577 -61064818005681 -61064818040336 -61064818069885 -61064818202978 -61064818238255 -61064818268637 -61064818395409 -61064818430637 -61064818460370 -61064818654220 -61064818693836 -61064818731360 -61064818855277 -61064818893585 -61064818938295 -61064818970192 -61064819116485 -61064819153738 -61064819199234 -61064819348609 -61064819385759 -61064819419388 -61064819450624 -61064819642015 -61064819683919 -61064819721561 -61064819947962 -61064819984361 -61064820152847 -61064820189830 -61064820338686 -61064820369106 -61064820478770 -61064820520414 -61064820550258 -61064820740617 -61064820780377 -61064820817356 -61064821042239 -61064821080366 -61064821285729 -61064821322251 -61064821352775 -61064821486697 -61064821594789 -61064821642386 -61064821672437 -61064821781867 -61064821946734 -61064822072317 -61064822168902 -61064822265629 -61064822407443 -61064822500174 -61064822624683 -61064822809793 -61064822915756 -61064823043443 -61064823186208 -61064823402155 -61064823431327 -61064823674149 -61064823708524 -61064823906255 -61064823944721 -61064823976478 -61064824178557 -61064824467412 -61064824510351 -61064824550429 -61064824747958 -61064824789477 -61064824826343 -61064824952401 -61064825003344 -61064825158088 -61064825195806 -61064825227821 -61064825431848 -61064825464172 -61064825672849 -61064825812783 -61064826148023 -61064826502119 -61064826678414 -61064826701808 -61064826730824 -61064826868007 -61064827043086 -61064827218561 -61064827248681 -61064827273005 -61064827410638 -61064827562272 -61064827732446 -61064827878459 -61064827987188 -61064828028239 -61064828052149 -61064828177181 -61064828207182 -61064828232115 -61064828410735 -61064828637756 -61064828756588 -61064828785938 -61064829088218 -61064829119247 -61064829147786 -61064829175958 -61064829364547 -61064829488516 -61064829624371 -61064829654229 -61064829679549 -61064829847906 -61064829948131 -61064830123592 -61064830349858 -61064830518212 -61064830548823 -61064830573625 -61064830664571 -61064830682110 -61064830706168 -61064830723495 -61064830830132 -61064830847433 -61064830966376 -61064830983809 -61064831105365 -61064831123624 -61064831136962 -61064831154061 -61064831247847 -61064831267278 -61064831359118 -61064831547387 -61064831643124 -61064831661548 -61064831750457 -61064831768560 -61064831785421 -61064831885270 -61064831900845 -61064831918059 -61064831935668 -61064831951940 -61064831969397 -61064832181325 -61064832285132 -61064832301871 -61064832318480 -61064832338229 -61064832352714 -61064832368996 -61064832381007 -61064832472289 -61064832487611 -61064832500416 -61064832695924 -61064832725756 -61064832754362 -61064833010901 -61064833029206 -61064833057455 -61064833071844 -61064833287792 -61064833305092 -61064833322817 -61064833336973 -61064833354141 -61064833733622 -61064833757121 -61064833861082 -61064834052632 -61064834071770 -61064834087443 -61064834102525 -61064834116574 -61064834260529 -61064834279882 -61064834295424 -61064834310507 -61064834453021 -61064834469693 -61064834484185 -61064834498748 -61064834514520 -61064834605290 -61064834739973 -61064834758901 -61064834778468 -61064834873940 -61064834907551 -61064835038153 -61064835068382 -61064835165140 -61064835197741 -61064835221035 -61064835238671 -61064835364195 -61064835384925 -61064835543099 -61064835562550 -61064835589764 -61064835614677 -61064835755650 -61064835922471 -61064836046029 -61064836153806 -61064836190242 -61064836312203 -61064836331053 -61064836357589 -61064836483864 -61064836586602 -61064836791931 -61064836891761 -61064836918336 -61064837038278 -61064837056809 -61064837075376 -61064837276482 -61064837415048 -61064837440054 -61064837555991 -61064837579998 -61064837759179 -61064837777552 -61064837898098 -61064838013084 -61064838032824 -61064838161677 -61064838337711 -61064838361821 -61064838544325 -61064838578154 -61064838677363 -61064838705297 -61064838820651 -61064838966558 -61064839068105 -61064839187464 -61064839281610 -61064839477361 -61064839615368 -61064839714083 -61064839839842 -61064839967659 -61064840100191 -61064840236624 -61064840379818 -61064840408398 -61064840571358 -61064840619282 -61064840730350 -61064840768249 -61064840802255 -61064840955824 -61064841070515 -61064841206606 -61064841246794 -61064841273990 -61064841400893 -61064841543908 -61064841643185 -61064841766732 -61064841865815 -61064842007202 -61064842033702 -61064842175108 -61064842314377 -61064842404011 -61064842503925 -61064842642949 -61064842784953 -61064842916108 -61064843054409 -61064843175408 -61064843268579 -61064843366540 -61064843387240 -61064843511707 -61064843615879 -61064843633957 -61064843762773 -61064843784959 -61064843900179 -61064843918291 -61064843935934 -61064844108455 -61064844223433 -61064844241702 -61064844258388 -61064844275291 -61064844418076 -61064844435457 -61064844452271 -61064844614593 -61064844702354 -61064844719850 -61064844799854 -61064844966010 -61064845051166 -61064845160569 -61064845179884 -61064845207050 -61064845232069 -61064845249282 -61064845345129 -61064845365739 -61064845384197 -61064845541910 -61064845636017 -61064845817117 -61064846066119 -61064846246379 -61064846267895 -61064846464677 -61064846563093 -61064846654923 -61064846746107 -61064846863304 -61064846987763 -61064847276458 -61064847300430 -61064847329649 -61064847342686 -61064847542499 -61064847580400 -61064847759230 -61064847785878 -61064847806881 -61064847824451 -61064847853777 -61064847871814 -61064848045725 -61064848245831 -61064848344239 -61064848455723 -61064848474450 -61064848592970 -61064848619687 -61064848651412 -61064848843926 -61064849031203 -61064849049131 -61064849193403 -61064849318912 -61064849347775 -61064849509978 -61064849624445 -61064849728692 -61064849854855 -61064849881734 -61064850011951 -61064850112899 -61064850237927 -61064850347255 -61064850440933 -61064850554158 -61064850584029 -61064850730624 -61064850877178 -61064850969587 -61064851157677 -61064851246155 -61064851376895 -61064851536184 -61064851671131 -61064851792408 -61064851810010 -61064851911989 -61064851989653 -61064852151248 -61064852188507 -61064852217384 -61064852357360 -61064852445462 -61064852549005 -61064852703909 -61064852731609 -61064852865102 -61064853001285 -61064853241826 -61064853273391 -61064853430150 -61064853461329 -61064853483818 -61064853499358 -61064853682246 -61064853699118 -61064853719435 -61064853737192 -61064853753693 -61064853949583 -61064854145208 -61064854168592 -61064854186234 -61064854204028 -61064854225855 -61064854239817 -61064854459234 -61064854635602 -61064854657750 -61064854675080 -61064854692318 -61064854710178 -61064854894932 -61064854916193 -61064854934057 -61064854951437 -61064854968954 -61064854983382 -61064855189846 -61064855221235 -61064855244765 -61064855256326 -61064855354215 -61064855372340 -61064855572821 -61064855831969 -61064855851714 -61064855869292 -61064855959555 -61064855995987 -61064856143722 -61064856163422 -61064856182630 -61064856199449 -61064856358583 -61064856378654 -61064856396699 -61064856410980 -61064856425713 -61064856445126 -61064856455871 -61064856552460 -61064856668897 -61064856687246 -61064856778414 -61064856795905 -61064856812520 -61064856900547 -61064856920454 -61064857042470 -61064857060791 -61064857227996 -61064857316429 -61064857443339 -61064857535025 -61064857638315 -61064857809169 -61064857919491 -61064857938370 -61064858052134 -61064858155790 -61064858331404 -61064858348888 -61064858440091 -61064858540599 -61064858670395 -61064858769978 -61064858923518 -61064859084301 -61064859187173 -61064859290552 -61064859422313 -61064859542902 -61064859644013 -61064859767254 -61064859785272 -61064859910780 -61064859929350 -61064859946558 -61064859963325 -61064860157864 -61064860254171 -61064860271993 -61064860422021 -61064860441578 -61064860533069 -61064860552948 -61064860697014 -61064860820851 -61064860927301 -61064860946509 -61064861036622 -61064861054222 -61064861153551 -61064861299064 -61064861401939 -61064861520976 -61064861547087 -61064861569584 -61064861747492 -61064861882006 -61064862046935 -61064862065857 -61064862210390 -61064862229898 -61064862353102 -61064862487088 -61064862512814 -61064862611330 -61064862753696 -61064862846538 -61064862940694 -61064863057290 -61064863075222 -61064863165887 -61064863287452 -61064863418309 -61064863539136 -61064863624534 -61064863797969 -61064863942008 -61064864088209 -61064864106620 -61064864200504 -61064864219235 -61064864236810 -61064864339729 -61064864357930 -61064864374750 -61064864462506 -61064864485083 -61064864512118 -61064864604035 -61064864723518 -61064864904862 -61064864991431 -61064865110940 -61064865201560 -61064865304015 -61064865322527 -61064865524599 -61064865558411 -61064865671431 -61064865762850 -61064865907210 -61064866014046 -61064866033020 -61064866219736 -61064866238975 -61064866260339 -61064866405856 -61064866502448 -61064866599601 -61064866689711 -61064866791328 -61064866934065 -61064867085276 -61064867212123 -61064867338026 -61064867355628 -61064867387938 -61064867511224 -61064867530574 -61064867692604 -61064867711468 -61064867728310 -61064867748320 -61064867902904 -61064867920753 -61064868048056 -61064868063927 -61064868078127 -61064868094405 -61064868108960 -61064868120290 -61064868220582 -61064868302668 -61064868318054 -61064868478182 -61064868496330 -61064868511504 -61064868668027 -61064868684751 -61064868703574 -61064868718361 -61064868806742 -61064868824296 -61064868839350 -61064868853877 -61064868993200 -61064869010347 -61064869030833 -61064869049836 -61064869061572 -61064869144896 -61064869160773 -61064869175520 -61064869193485 -61064869271305 -61064869288111 -61064869302099 -61064869316716 -61064869331334 -61064869445498 -61064869463206 -61064869481217 -61064869610514 -61064869631408 -61064869902315 -61064870070290 -61064870087990 -61064870271482 -61064870289109 -61064870461800 -61064870608051 -61064870629889 -61064870646827 -61064870664237 -61064870842582 -61064870946667 -61064870964162 -61064870987483 -61064871208673 -61064871373441 -61064871391798 -61064871558324 -61064871576727 -61064871593856 -61064871771033 -61064871790061 -61064871919264 -61064871954889 -61064871980035 -61064871997481 -61064872186182 -61064872203956 -61064872374794 -61064872586315 -61064872603487 -61064872622417 -61064872779493 -61064872886419 -61064872904117 -61064872920812 -61064873054293 -61064873070389 -61064873082056 -61064873096215 -61064873278364 -61064873298882 -61064873405437 -61064873497277 -61064873607225 -61064873736885 -61064873802056 -61064873832579 -61064873994312 -61064874018072 -61064874101645 -61064874121230 -61064874134963 -61064874257301 -61064874274855 -61064874291658 -61064874421577 -61064874438997 -61064874455661 -61064874577146 -61064874594652 -61064874704601 -61064874792980 -61064874877299 -61064874895117 -61064874981447 -61064874998966 -61064875016620 -61064875100930 -61064875118670 -61064875202003 -61064875220156 -61064875239690 -61064875257338 -61064875280225 -61064875373897 -61064875391531 -61064875408558 -61064875495349 -61064875580975 -61064875599064 -61064875685285 -61064875702837 -61064875788378 -61064875805995 -61064875891664 -61064875909191 -61064876022436 -61064876156867 -61064876331095 -61064876349538 -61064876366228 -61064876463279 -61064876613963 -61064876723196 -61064876828155 -61064876945648 -61064877051590 -61064877169013 -61064877272797 -61064877423854 -61064877441718 -61064877582158 -61064877693982 -61064877778632 -61064877883677 -61064877986910 -61064878090878 -61064878196573 -61064878307047 -61064878411833 -61064878516107 -61064878533496 -61064878623522 -61064878751998 -61064878769817 -61064878956001 -61064878991833 -61064879030862 -61064879135391 -61064879255528 -61064879409157 -61064879552456 -61064879756840 -61064879954418 -61064880138232 -61064880313404 -61064880418062 -61064880521413 -61064880624926 -61064880801332 -61064880986407 -61064881034430 -61064881064732 -61064881226315 -61064881261771 -61064881290126 -61064881395972 -61064881487756 -61064881577894 -61064881727694 -61064881844556 -61064881948430 -61064882049381 -61064882200352 -61064882377311 -61064882476472 -61064882592692 -61064882701562 -61064882801987 -61064882898882 -61064883095177 -61064883256737 -61064883347902 -61064883460010 -61064883585008 -61064883708447 -61064883834262 -61064883853552 -61064884029619 -61064884048717 -61064884072505 -61064884090647 -61064884283245 -61064884304008 -61064884432456 -61064884451545 -61064884537451 -61064884681088 -61064884699081 -61064884783542 -61064884875892 -61064884987563 -61064885083957 -61064885261416 -61064885376374 -61064885512622 -61064885531538 -61064885635512 -61064885758459 -61064885863531 -61064885882634 -61064886005524 -61064886131477 -61064886246140 -61064886382749 -61064886481698 -61064886614671 -61064886709977 -61064886834847 -61064886939535 -61064887097736 -61064887236130 -61064887370146 -61064887507287 -61064887631119 -61064887726842 -61064887825067 -61064887910861 -61064888033996 -61064888165309 -61064888183519 -61064888298551 -61064888396339 -61064888414073 -61064888484456 -61064888508165 -61064888680021 -61064888697832 -61064888726170 -61064888748716 -61064888873880 -61064888891795 -61064889042651 -61064889059595 -61064889175695 -61064889194065 -61064889213141 -61064889310701 -61064889329582 -61064889350260 -61064889568904 -61064889595832 -61064889684429 -61064889701949 -61064889718822 -61064889736233 -61064889838524 -61064889853580 -61064889867438 -61064889881297 -61064889895972 -61064890052844 -61064890069152 -61064890083344 -61064890101041 -61064890122216 -61064890258417 -61064890288455 -61064890311311 -61064890404895 -61064890562203 -61064890585398 -61064890740956 -61064890758706 -61064890775095 -61064890791280 -61064890915947 -61064890933293 -61064891046298 -61064891198325 -61064891225968 -61064891389953 -61064891408179 -61064891425081 -61064891532764 -61064891550173 -61064891676153 -61064891693578 -61064891780651 -61064891798439 -61064891815383 -61064891911591 -61064892108255 -61064892262419 -61064892279890 -61064892378305 -61064892471474 -61064892489535 -61064892577500 -61064892666193 -61064892688368 -61064892705186 -61064892739652 -61064892829275 -61064892847624 -61064892974389 -61064892994316 -61064893008204 -61064893022544 -61064893033456 -61064893177220 -61064893193202 -61064893305306 -61064893320539 -61064893334192 -61064893347603 -61064893361956 -61064893375806 -61064893465844 -61064893639181 -61064893654233 -61064893667773 -61064893681665 -61064893696429 -61064893709183 -61064893870784 -61064893899620 -61064894006831 -61064894034415 -61064894057481 -61064894172456 -61064894189703 -61064894306278 -61064894323257 -61064894443707 -61064894459009 -61064894472823 -61064894486670 -61064894499567 -61064894596212 -61064894610857 -61064894634751 -61064894724620 -61064894740013 -61064894753796 -61064894767247 -61064894850040 -61064894865534 -61064894879276 -61064894893021 -61064894907601 -61064894918565 -61064895003696 -61064895018452 -61064895032355 -61064895045792 -61064895059692 -61064895160851 -61064895180616 -61064895197248 -61064895339516 -61064895434402 -61064895536276 -61064895553061 -61064895655227 -61064895672915 -61064895691600 -61064895787589 -61064895804550 -61064895889005 -61064895906365 -61064895922344 -61064896070431 -61064896087017 -61064896199462 -61064896214499 -61064896315928 -61064896334244 -61064896352106 -61064896494317 -61064896521495 -61064896546961 -61064896560719 -61064896788797 -61064896976343 -61064897144625 -61064897289974 -61064897586975 -61064897614532 -61064897638510 -61064897897169 -61064897913549 -61064897929763 -61064898148000 -61064898164360 -61064898184039 -61064898386490 -61064898403870 -61064898420882 -61064898444676 -61064898632098 -61064898737493 -61064898761175 -61064898775987 -61064898790601 -61064898801641 -61064898815868 -61064898827009 -61064899003202 -61064899017949 -61064899124136 -61064899139915 -61064899150489 -61064899164544 -61064899178642 -61064899192318 -61064899310256 -61064899325670 -61064899350777 -61064899373525 -61064899488483 -61064899506056 -61064899528617 -61064899636528 -61064899650970 -61064899664384 -61064899678686 -61064899754067 -61064899769569 -61064899783200 -61064899793475 -61064899807285 -61064899818031 -61064899942730 -61064900149519 -61064900165414 -61064900179495 -61064900314817 -61064900330702 -61064900344742 -61064900354998 -61064900483994 -61064900499814 -61064900527873 -61064900549964 -61064900749073 -61064900780437 -61064900808502 -61064901008912 -61064901172623 -61064901303094 -61064901469385 -61064901617985 -61064901641034 -61064901862932 -61064901893561 -61064901919013 -61064902138666 -61064902264675 -61064902294724 -61064902319200 -61064902342869 -61064902513512 -61064902779214 -61064902817544 -61064902988245 -61064903019311 -61064903048252 -61064903204522 -61064903393905 -61064903493601 -61064903523919 -61064903548456 -61064903676711 -61064903696995 -61064903860646 -61064903880892 -61064903904321 -61064903942091 -61064903978094 -61064904141115 -61064904158701 -61064904188162 -61064904222521 -61064904378565 -61064904531090 -61064904548515 -61064904564763 -61064904723141 -61064904747697 -61064904778169 -61064904800940 -61064904814624 -61064904826133 -61064904968083 -61064904987169 -61064905001100 -61064905200999 -61064905216978 -61064905231472 -61064905247461 -61064905262090 -61064905398550 -61064905421264 -61064905437684 -61064905453825 -61064905470489 -61064905641406 -61064905778372 -61064905923261 -61064906101808 -61064906118760 -61064906143628 -61064906160328 -61064906173202 -61064906358751 -61064906564562 -61064906584466 -61064906719740 -61064906736662 -61064906753746 -61064906769687 -61064906781217 -61064906955201 -61064906970129 -61064906997723 -61064907009345 -61064907100866 -61064907116346 -61064907131023 -61064907213269 -61064907246585 -61064907279385 -61064907409808 -61064907425051 -61064907543005 -61064907576452 -61064907606160 -61064907766321 -61064907781355 -61064907802262 -61064907951587 -61064908071569 -61064908088960 -61064908105200 -61064908121332 -61064908205996 -61064908222799 -61064908241908 -61064908258355 -61064908274809 -61064908466668 -61064908481269 -61064908495650 -61064908510014 -61064908521016 -61064908661317 -61064908695041 -61064908721930 -61064908959734 -61064909100766 -61064909132492 -61064909159357 -61064909342594 -61064909374062 -61064909400098 -61064909623274 -61064909654126 -61064909682612 -61064909850610 -61064909875862 -61064910114667 -61064910141207 -61064910303674 -61064910330252 -61064910361948 -61064910387440 -61064910642087 -61064910674136 -61064910700327 -61064910840362 -61064910867327 -61064911023218 -61064911051197 -61064911184649 -61064911363642 -61064911544370 -61064911571588 -61064911801186 -61064911992389 -61064912045481 -61064912074068 -61064912231932 -61064912360479 -61064912510522 -61064912642562 -61064912788198 -61064913121436 -61064913149963 -61064913176504 -61064913196658 -61064913382210 -61064913534274 -61064913701538 -61064913880179 -61064913906877 -61064913937866 -61064913962510 -61064913987540 -61064914111628 -61064914142457 -61064914167628 -61064914377023 -61064914484472 -61064914512059 -61064914605846 -61064914653867 -61064914678956 -61064914811331 -61064914963495 -61064915135058 -61064915236759 -61064915345708 -61064915369453 -61064915477153 -61064915604051 -61064915750703 -61064915774253 -61064915794926 -61064915816501 -61064916021377 -61064916061098 -61064916156210 -61064916317326 -61064916341138 -61064916473162 -61064916679486 -61064916842627 -61064917000775 -61064917159005 -61064917183451 -61064917372414 -61064917422520 -61064917454817 -61064917617171 -61064917768143 -61064917888854 -61064917971724 -61064917989175 -61064918005732 -61064918030378 -61064918182459 -61064918312084 -61064918329887 -61064918346784 -61064918366028 -61064918393669 -61064918679765 -61064918699715 -61064918880537 -61064918903941 -61064919070896 -61064919086087 -61064919102962 -61064919119031 -61064919133434 -61064919290022 -61064919305782 -61064919324401 -61064919462780 -61064919554995 -61064919573095 -61064919588009 -61064919692307 -61064919709396 -61064919724006 -61064919871559 -61064919887696 -61064919902411 -61064919919796 -61064920040277 -61064920068866 -61064920213075 -61064920228502 -61064920244899 -61064920373183 -61064920391031 -61064920408700 -61064920420882 -61064920614717 -61064920633049 -61064920819256 -61064920835155 -61064920849236 -61064920860638 -61064921012096 -61064921036369 -61064921056155 -61064921250992 -61064921267220 -61064921281275 -61064921292128 -61064921489717 -61064921504653 -61064921519131 -61064921529751 -61064921544009 -61064921558800 -61064921671894 -61064921686686 -61064921700423 -61064921714193 -61064921735953 -61064921750404 -61064921877434 -61064921893355 -61064922007881 -61064922023504 -61064922037159 -61064922047925 -61064922140584 -61064922155667 -61064922260195 -61064922275956 -61064922305671 -61064922337882 -61064922364888 -61064922469854 -61064922485702 -61064922619231 -61064922634052 -61064922648194 -61064922662910 -61064922846576 -61064922862751 -61064922877614 -61064923001395 -61064923020566 -61064923035838 -61064923047216 -61064923272390 -61064923288218 -61064923302734 -61064923559819 -61064923729925 -61064923747248 -61064923760325 -61064923773850 -61064923898161 -61064923915078 -61064923929487 -61064924075267 -61064924092823 -61064924107487 -61064924121745 -61064924334198 -61064924357008 -61064924475844 -61064924639488 -61064924810993 -61064924825884 -61064924921265 -61064924936717 -61064924951607 -61064925198918 -61064925410379 -61064925514645 -61064925646809 -61064925670999 -61064925687860 -61064925699076 -61064925810465 -61064925920760 -61064926052485 -61064926064961 -61064926078945 -61064926092690 -61064926106783 -61064926121491 -61064926329625 -61064926514396 -61064926620552 -61064926816747 -61064926843646 -61064926946895 -61064927102734 -61064927258242 -61064927395701 -61064927490639 -61064935994859 -61064936043126 -61064936285874 -61064936482879 -61064936515498 -61064936537643 -61064936693007 -61064936851929 -61064937036629 -61064937065587 -61064937087661 -61064937284216 -61064937472588 -61064937589144 -61064937618327 -61064937641712 -61064937739004 -61064937891918 -61064937924574 -61064938037413 -61064938057972 -61064938089287 -61064938227882 -61064938253322 -61064938410822 -61064938513451 -61064938678839 -61064938809541 -61064938956089 -61064938984300 -61064939172947 -61064939200391 -61064939388556 -61064939419158 -61064939578054 -61064939764328 -61064939935986 -61064940079557 -61064940238942 -61064940257946 -61064940274437 -61064940302937 -61064940425839 -61064940458342 -61064940486531 -61064940733001 -61064940770153 -61064940935519 -61064940967584 -61064940990079 -61064941015445 -61064941154889 -61064941179909 -61064941281784 -61064941418855 -61064941438929 -61064941553004 -61064941573710 -61064941595018 -61064941613028 -61064941824643 -61064941846117 -61064941867182 -61064942129216 -61064942270341 -61064942308527 -61064942519945 -61064942795968 -61064942831337 -61064943032654 -61064943060534 -61064943177726 -61064943359126 -61064943383826 -61064943557359 -61064943582812 -61064943600134 -61064943723354 -61064943821021 -61064943851310 -61064943941722 -61064944097382 -61064944256897 -61064944279093 -61064944295737 -61064944322919 -61064944510835 -61064944544473 -61064944561851 -61064944681958 -61064944885189 -61064944917291 -61064944941728 -61064944968716 -61064945134364 -61064945151562 -61064945352161 -61064945372098 -61064945388468 -61064945405852 -61064945421100 -61064945520662 -61064945537991 -61064945554404 -61064945570330 -61064945684323 -61064945703893 -61064945841841 -61064945862204 -61064945892555 -61064945917053 -61064945930693 -61064946026345 -61064946207336 -61064946236459 -61064946326809 -61064946449318 -61064946585904 -61064946752707 -61064946772585 -61064946971858 -61064946990487 -61064947007361 -61064947023607 -61064947122498 -61064947139833 -61064947156112 -61064947172710 -61064947189261 -61064947208838 -61064947222342 -61064947380389 -61064947502653 -61064947519964 -61064947536802 -61064947556211 -61064947802541 -61064947819663 -61064947835920 -61064947855544 -61064948038500 -61064948056278 -61064948079994 -61064948104253 -61064948243895 -61064948260923 -61064948282776 -61064948497934 -61064948521929 -61064948680415 -61064948700248 -61064948716329 -61064948744067 -61064948762709 -61064948925271 -61064948950909 -61064948967331 -61064949127029 -61064949150789 -61064949243834 -61064949416874 -61064949435846 -61064949458619 -61064949479800 -61064949564136 -61064949614257 -61064949649721 -61064949775407 -61064949917764 -61064949940125 -61064949957806 -61064950085905 -61064950268060 -61064950289697 -61064950306375 -61064950332840 -61064950347681 -61064950454407 -61064950478544 -61064950494757 -61064950664086 -61064950759924 -61064950786517 -61064950809574 -61064950929811 -61064951128073 -61064951154178 -61064951170803 -61064951187123 -61064951272575 -61064951291145 -61064951310559 -61064951326398 -61064951483628 -61064951504509 -61064951521422 -61064951714126 -61064951732187 -61064951750849 -61064951768375 -61064951789620 -61064951931461 -61064952069751 -61064952089638 -61064952204487 -61064952331543 -61064952348213 -61064952364998 -61064952381343 -61064952396662 -61064952485256 -61064952502735 -61064952519024 -61064952676452 -61064952697016 -61064952715884 -61064952796944 -61064952813861 -61064952830033 -61064952846335 -61064952862637 -61064952975876 -61064952993472 -61064953129343 -61064953146196 -61064953162816 -61064953179146 -61064953195972 -61064953380261 -61064953398152 -61064953414262 -61064953431095 -61064953446478 -61064953463142 -61064953650081 -61064953667816 -61064953787939 -61064953804967 -61064953821536 -61064953838117 -61064953855983 -61064954035216 -61064954053392 -61064954072159 -61064954085807 -61064954214037 -61064954231133 -61064954335665 -61064954352444 -61064954472089 -61064954596622 -61064954614523 -61064954632123 -61064954816146 -61064954833081 -61064954849785 -61064954966220 -61064955152560 -61064955169967 -61064955186563 -61064955275102 -61064955292349 -61064955308778 -61064955416913 -61064955434245 -61064955450668 -61064955555046 -61064955572757 -61064955592149 -61064955738061 -61064956069666 -61064956088516 -61064956265458 -61064956407347 -61064956594719 -61064956733171 -61064956878784 -61064956991437 -61064957093591 -61064957215682 -61064957232318 -61064957248572 -61064957264784 -61064957281123 -61064957411080 -61064957533872 -61064957656940 -61064957784990 -61064957983949 -61064958136226 -61064958259789 -61064958462704 -61064958477860 -61064958489027 -61064958621993 -61064958637061 -61064958651654 -61064958665999 -61064958680702 -61064958695002 -61064958706290 -61064958857137 -61064958872571 -61064958886813 -61064958900710 -61064958916885 -61064958939402 -61064959033288 -61064959055833 -61064959070585 -61064959092054 -61064959102918 -61064959229065 -61064959243771 -61064959258041 -61064959272119 -61064959285721 -61064959423225 -61064959440515 -61064959459228 -61064959612906 -61064959627478 -61064959641638 -61064959655864 -61064959841149 -61064959956164 -61064959972898 -61064960169039 -61064960183805 -61064960197671 -61064960211280 -61064960224502 -61064960434981 -61064960655697 -61064960782647 -61064960797777 -61064960812162 -61064960831669 -61064960911985 -61064960926937 -61064960940737 -61064960955162 -61064961036264 -61064961052339 -61064961067060 -61064961081670 -61064961092934 -61064961230296 -61064961245732 -61064961259962 -61064961275128 -61064961289475 -61064961300931 -61064961430107 -61064961445063 -61064961547985 -61064961565769 -61064961579237 -61064961594346 -61064961605296 -61064961687079 -61064961701944 -61064961715693 -61064961729530 -61064961743032 -61064961864585 -61064961882326 -61064961899035 -61064961913269 -61064961927445 -61064961942209 -61064961953691 -61064962167702 -61064962375654 -61064962489068 -61064962506744 -61064962521530 -61064962634984 -61064962651880 -61064962667142 -61064962681929 -61064962694244 -61064962778078 -61064962794015 -61064962877572 -61064962893141 -61064962906917 -61064962921769 -61064963013067 -61064963029555 -61064963043728 -61064963058978 -61064963075192 -61064963189639 -61064963336729 -61064963354505 -61064963371644 -61064963387814 -61064963550281 -61064963578733 -61064963595936 -61064963720923 -61064963855158 -61064963975160 -61064964132214 -61064964164220 -61064964188093 -61064964395204 -61064964577576 -61064964595437 -61064964695879 -61064964719463 -61064964736678 -61064964821444 -61064964847220 -61064965010181 -61064965150566 -61064965280979 -61064965309414 -61064965410741 -61064965599225 -61064965736663 -61064965844275 -61064965953941 -61064965977827 -61064966155750 -61064966178776 -61064966277920 -61064966511898 -61064966666443 -61064966683712 -61064966770306 -61064966887985 -61064966987209 -61064967081329 -61064967202173 -61064967219245 -61064967235623 -61064967323543 -61064967492857 -61064967510268 -61064967622869 -61064967640296 -61064967726834 -61064967825601 -61064967929651 -61064968100113 -61064968189027 -61064968295752 -61064968315182 -61064968436385 -61064968456552 -61064968472724 -61064968619592 -61064968640104 -61064968660919 -61064968819237 -61064968838680 -61064968858794 -61064969020719 -61064969042924 -61064969169136 -61064969183667 -61064969197501 -61064969355423 -61064969373253 -61064969389612 -61064969566561 -61064969696525 -61064969853556 -61064970003634 -61064970128221 -61064970258170 -61064970439513 -61064970457035 -61064970476904 -61064970493299 -61064970511829 -61064970641130 -61064970775632 -61064970927276 -61064971126466 -61064971328239 -61064971345805 -61064971364896 -61064971387266 -61064971518292 -61064971643788 -61064971667563 -61064971682055 -61064971881855 -61064972053297 -61064972071981 -61064972089185 -61064972105751 -61064972122114 -61064972135145 -61064972287012 -61064972304433 -61064972320958 -61064972337297 -61064972474689 -61064972492737 -61064972509098 -61064972528204 -61064972544008 -61064972661851 -61064972680283 -61064972693332 -61064972781086 -61064972796921 -61064972813212 -61064972831570 -61064972987298 -61064973010722 -61064973027023 -61064973040417 -61064973135574 -61064973153103 -61064973173270 -61064973302056 -61064973319637 -61064973334927 -61064973355029 -61064973370468 -61064973459612 -61064973476554 -61064973492866 -61064973509115 -61064973524806 -61064973613577 -61064973630395 -61064973647007 -61064973663921 -61064973683622 -61064973780552 -61064973796385 -61064973885941 -61064973903336 -61064973919523 -61064973935878 -61064973952337 -61064974062586 -61064974080280 -61064974097913 -61064974197569 -61064974214813 -61064974231929 -61064974257815 -61064974344874 -61064974362245 -61064974387136 -61064974478150 -61064974495824 -61064974586906 -61064974612402 -61064974628836 -61064974652825 -61064974861972 -61064974880112 -61064974897522 -61064975096926 -61064975116191 -61064975134645 -61064975151230 -61064975168411 -61064975181709 -61064975272157 -61064975310784 -61064975328544 -61064975346137 -61064975363517 -61064975494532 -61064975514115 -61064975531237 -61064975548528 -61064975565632 -61064975579634 -61064975672804 -61064975690429 -61064975708267 -61064975801640 -61064975820938 -61064975834702 -61064975928857 -61064975947123 -61064975964809 -61064975983008 -61064976000010 -61064976220155 -61064976402694 -61064976541939 -61064976562856 -61064976698875 -61064976728172 -61064976972549 -61064977141359 -61064977361382 -61064977380218 -61064977403607 -61064977423245 -61064977536107 -61064977556818 -61064977573335 -61064977591948 -61064977714157 -61064977748615 -61064977764985 -61064977781486 -61064977805271 -61064977895599 -61064977913769 -61064977938185 -61064978037712 -61064978054524 -61064978076572 -61064978249098 -61064978266356 -61064978292225 -61064978442699 -61064978460246 -61064978583453 -61064978603780 -61064978629254 -61064978741027 -61064978835864 -61064978852897 -61064978878225 -61064978899306 -61064979040405 -61064979059429 -61064979193012 -61064979219728 -61064979381088 -61064979408987 -61064979439704 -61064979588726 -61064979614696 -61064979803998 -61064979823567 -61064979841291 -61064979859094 -61064979881160 -61064979976440 -61064980203114 -61064980222481 -61064980240486 -61064980259116 -61064980277378 -61064980376271 -61064980403532 -61064980600600 -61064980619527 -61064980637455 -61064980654014 -61064980675231 -61064980693120 -61064980934401 -61064981063708 -61064981084919 -61064981102957 -61064981120742 -61064981134964 -61064981226482 -61064981245225 -61064981298705 -61064981315493 -61064981331798 -61064981414962 -61064981531587 -61064981550184 -61064981716382 -61064981741390 -61064981758218 -61064981878887 -61064982096169 -61064982202733 -61064982221601 -61064982239444 -61064982257402 -61064982281729 -61064982384284 -61064982403096 -61064982423632 -61064982443882 -61064982594900 -61064982613202 -61064982745803 -61064982842641 -61064982975810 -61064983084080 -61064983102595 -61064983120062 -61064983137602 -61064983155283 -61064983171793 -61064983287637 -61064983390764 -61064983409479 -61064983431931 -61064983599907 -61064983619862 -61064983633916 -61064983741782 -61064983765293 -61064983783696 -61064983802800 -61064983899083 -61064983918723 -61064983936257 -61064983953797 -61064983971387 -61064983985231 -61064984142872 -61064984161578 -61064984179064 -61064984196546 -61064984214092 -61064984312782 -61064984332681 -61064984350152 -61064984367782 -61064984385432 -61064984487228 -61064984506755 -61064984524523 -61064984542039 -61064984562824 -61064984577174 -61064984673277 -61064984691397 -61064984708568 -61064984726191 -61064984743991 -61064984857398 -61064984889711 -61064985099988 -61064985126344 -61064985155532 -61064985362807 -61064985379995 -61064985404088 -61064985525698 -61064985559849 -61064985577578 -61064985712693 -61064985843810 -61064985872934 -61064986020394 -61064986158965 -61064986354510 -61064986387410 -61064986418257 -61064986447666 -61064986587716 -61064986619985 -61064986654314 -61064986693772 -61064986842314 -61064986879377 -61064986905444 -61064987157834 -61064987201074 -61064987237840 -61064987459929 -61064987500255 -61064987538025 -61064987570182 -61064987768324 -61064987811496 -61064987842854 -61064987957982 -61064988018697 -61064988055055 -61064988237680 -61064988275179 -61064988309952 -61064988466718 -61064988486379 -61064988513447 -61064988767638 -61064988795393 -61064988898217 -61064989028207 -61064989132816 -61064989279514 -61064989296389 -61064989312508 -61064989329077 -61064989348276 -61064989509881 -61064989529467 -61064989546521 -61064989563186 -61064989579733 -61064989593017 -61064989732725 -61064989750183 -61064989766886 -61064989910033 -61064989927309 -61064989944060 -61064989960869 -61064989978051 -61064990097167 -61064990133805 -61064990284811 -61064990303549 -61064990319955 -61064990336137 -61064990352631 -61064990365981 -61064990507309 -61064990523947 -61064990541187 -61064990558604 -61064990673502 -61064990691225 -61064990707586 -61064990724220 -61064990740664 -61064990753995 -61064990848729 -61064990866083 -61064990950896 -61064990969294 -61064990986224 -61064991002598 -61064991019919 -61064991033187 -61064991119132 -61064991146970 -61064991346008 -61064991506679 -61064991534930 -61064991737722 -61064991753201 -61064991872480 -61064991889213 -61064991905819 -61064991944205 -61064992074967 -61064992094537 -61064992112231 -61064992129779 -61064992274341 -61064992409062 -61064992632513 -61064992651923 -61064992670118 -61064992692263 -61064992709155 -61064992874518 -61064993037381 -61064993056226 -61064993073827 -61064993198995 -61064993325336 -61064993344363 -61064993483211 -61064993634979 -61064993657239 -61064993673843 -61064993690788 -61064993711526 -61064993837968 -61064993856961 -61064994010662 -61064994153131 -61064994172103 -61064994189040 -61064994420882 -61064994591628 -61064994621375 -61064994648946 -61064994805339 -61064994836143 -61064994961177 -61064994992390 -61064995138282 -61064995363231 -61064995565938 -61064995738046 -61064995886387 -61064996109511 -61064996253160 -61064996290976 -61064996521038 -61064996549482 -61064996587285 -61064996810832 -61064996845935 -61064997094894 -61064997381331 -61064997418461 -61064997444842 -61064997637074 -61064997656347 -61064997674179 -61064997691536 -61064997712850 -61064997869436 -61064998032777 -61064998237741 -61064998427017 -61064998445324 -61064998462743 -61064998480109 -61064998494641 -61064998704832 -61064998722976 -61064998741002 -61064998759047 -61064998780226 -61064999025079 -61064999043778 -61064999061319 -61064999082064 -61064999096483 -61064999342433 -61064999485485 -61064999510234 -61064999672068 -61064999690238 -61064999724912 -61064999879708 -61064999900987 -61065000139747 -61065000174620 -61065000365495 -61065000387579 -61065000486820 -61065000670141 -61065000695345 -61065000827401 -61065000845031 -61065000949768 -61065000967952 -61065000988777 -61065001190314 -61065001212235 -61065001225585 -61065001467927 -61065001484813 -61065001699178 -61065001716579 -61065001733002 -61065001749335 -61065001951508 -61065002114212 -61065002132222 -61065002152312 -61065002310703 -61065002328811 -61065002381356 -61065002398180 -61065002568120 -61065002587276 -61065002601555 -61065002612670 -61065002781062 -61065002984868 -61065003004868 -61065003171616 -61065003366693 -61065003616358 -61065003655794 -61065003691961 -61065003819246 -61065003859367 -61065003892616 -61065004149456 -61065004178604 -61065004383416 -61065004428844 -61065004498880 -61065004635247 -61065004674202 -61065004704963 -61065004921289 -61065004945385 -61065005125160 -61065005244639 -61065005403816 -61065005423623 -61065005440062 -61065005456083 -61065005473544 -61065005658393 -61065005756212 -61065005775427 -61065005793279 -61065005917643 -61065006038599 -61065006057461 -61065006072116 -61065006083139 -61065006322009 -61065006337254 -61065006533665 -61065006550545 -61065006567483 -61065006583847 -61065006596864 -61065006825730 -61065006859303 -61065006893910 -61065006918409 -61065007070576 -61065007232763 -61065007403093 -61065007600404 -61065007627301 -61065007896524 -61065008214710 -61065008429317 -61065008719927 -61065009031350 -61065009081045 -61065009279141 -61065009300315 -61065009318046 -61065009537518 -61065009774331 -61065009953052 -61065009975603 -61065010190348 -61065010356352 -61065010373341 -61065010390099 -61065010500485 -61065010682118 -61065010813285 -61065010988605 -61065011007961 -61065011022541 -61065011036586 -61065011047199 -61065011197391 -61065011326391 -61065011436628 -61065011464444 -61065011648262 -61065011677798 -61065011701678 -61065011866215 -61065012124717 -61065012151421 -61065012347518 -61065012540274 -61065012758865 -61065012789410 -61065012956907 -61065012999494 -61065013026785 -61065013264463 -61065013299196 -61065013323247 -61065013521218 -61065013554225 -61065013577039 -61065013777297 -61065013935490 -61065013955339 -61065013972807 -61065013997148 -61065014216790 -61065014235562 -61065014366912 -61065014385187 -61065014403268 -61065014421349 -61065014439224 -61065014453393 -61065014614250 -61065014632214 -61065014650357 -61065014792690 -61065014951013 -61065014969859 -61065015168840 -61065015186909 -61065015205085 -61065015422671 -61065015441207 -61065015683468 -61065015716609 -61065015745649 -61065015847411 -61065016087035 -61065016102568 -61065016113658 -61065016393899 -61065016415179 -61065016440937 -61065016463691 -61065016477835 -61065016663836 -61065016678456 -61065016696520 -61065016838162 -61065016948630 -61065016970290 -61065017109691 -61065017147258 -61065017176042 -61065017377343 -61065017397313 -61065017515901 -61065017534729 -61065017552290 -61065017782433 -61065017800874 -61065017818502 -61065017837927 -61065017979057 -61065018000024 -61065018034303 -61065018221080 -61065018243207 -61065018260362 -61065018283492 -61065018420874 -61065018440762 -61065018665288 -61065018841124 -61065018865196 -61065018885454 -61065018900267 -61065019129293 -61065019154812 -61065019342637 -61065019370911 -61065019395408 -61065019541974 -61065019562001 -61065019591719 -61065019605963 -61065019787193 -61065019805094 -61065019821682 -61065019834947 -61065019942561 -61065019959752 -61065019975722 -61065019991694 -61065020151011 -61065020209516 -61065020241675 -61065020455592 -61065020614651 -61065020780859 -61065020915896 -61065021079847 -61065021198804 -61065021217834 -61065021383441 -61065021519781 -61065021537750 -61065021555251 -61065021577439 -61065021669639 -61065021693110 -61065021710757 -61065021727764 -61065021892989 -61065022012562 -61065022030568 -61065022046701 -61065022062656 -61065022079507 -61065022246487 -61065022388506 -61065022526021 -61065022619635 -61065022793196 -61065022919034 -61065023010904 -61065023113032 -61065023288650 -61065023488839 -61065023625397 -61065023651606 -61065023682020 -61065023826858 -61065023846812 -61065023867009 -61065023991769 -61065024037508 -61065024135325 -61065024272819 -61065024388783 -61065024524925 -61065024554807 -61065024717244 -61065024870377 -61065024898682 -61065025059576 -61065025080094 -61065025103862 -61065025126449 -61065025280167 -61065025300279 -61065025328692 -61065025448458 -61065025474696 -61065025581780 -61065025671925 -61065025797516 -61065025901552 -61065025927391 -61065026161878 -61065026189535 -61065026208528 -61065026226278 -61065026247858 -61065026360080 -61065026383113 -61065026486506 -61065026504782 -61065026659199 -61065026762178 -61065026788226 -61065026916819 -61065027019786 -61065027047405 -61065027070875 -61065027087460 -61065027104870 -61065027229772 -61065027256117 -61065027343826 -61065027365492 -61065027454075 -61065027471665 -61065027488181 -61065027504862 -61065027521533 -61065027534575 -61065027688878 -61065027706978 -61065027720716 -61065027894698 -61065028049224 -61065028226644 -61065028252670 -61065028465898 -61065028491749 -61065028518068 -61065028657492 -61065028689455 -61065028713675 -61065028945098 -61065029164092 -61065029308343 -61065029497760 -61065029645230 -61065029673665 -61065029700414 -61065029887115 -61065029916142 -61065029943421 -61065030087926 -61065030234780 -61065030255963 -61065030415916 -61065030604119 -61065030785756 -61065030925783 -61065031105769 -61065031244636 -61065031455355 -61065031629580 -61065031664713 -61065031693483 -61065031856302 -61065031967063 -61065032148994 -61065032309350 -61065032344075 -61065032368286 -61065032510255 -61065032527908 -61065032623892 -61065032642525 -61065032821625 -61065032987698 -61065033153664 -61065033289309 -61065033313059 -61065033435028 -61065033457775 -61065033608618 -61065033631122 -61065033823821 -61065033983799 -61065034146490 -61065034339959 -61065034528777 -61065034691101 -61065034845022 -61065035023529 -61065035155900 -61065035191001 -61065035225652 -61065035385716 -61065035410886 -61065035538485 -61065035686395 -61065035846442 -61065035991226 -61065036283072 -61065036310590 -61065036335615 -61065036547086 -61065036718658 -61065036875974 -61065037053762 -61065037216789 -61065037381797 -61065037600041 -61065037772527 -61065037933374 -61065038149313 -61065038326114 -61065038492892 -61065038664465 -61065038695199 -61065038884347 -61065038915120 -61065038948539 -61065038975219 -61065039156739 -61065039290407 -61065039399706 -61065039580801 -61065039714174 -61065039898388 -61065039923489 -61065040135574 -61065040233073 -61065040402273 -61065040418440 -61065040545671 -61065040561182 -61065040649519 -61065040665284 -61065040679072 -61065040692908 -61065040706913 -61065040805830 -61065040839041 -61065040869027 -61065041036524 -61065041072011 -61065041105016 -61065041132469 -61065041252514 -61065041430947 -61065041463595 -61065041637922 -61065041746858 -61065041782928 -61065041814199 -61065042019672 -61065042057781 -61065042087467 -61065042196528 -61065042227740 -61065042265722 -61065042479948 -61065042514426 -61065042548544 -61065042578729 -61065042723098 -61065042759711 -61065042801173 -61065042909901 -61065042947848 -61065043057012 -61065043094540 -61065043132187 -61065043280925 -61065043317646 -61065043432587 -61065043583487 -61065043607560 -61065043633886 -61065043824676 -61065043849188 -61065044072618 -61065044096665 -61065044290160 -61065044324767 -61065044347994 -61065044498594 -61065044605172 -61065044789716 -61065044976826 -61065045162661 -61065045355981 -61065045388794 -61065045590323 -61065045618774 -61065045636840 -61065045654610 -61065045787370 -61065045817277 -61065045840018 -61065046063904 -61065046272129 -61065046296615 -61065046495551 -61065046518068 -61065046627374 -61065046653224 -61065046822146 -61065046847574 -61065046868699 -61065046972457 -61065046995402 -61065047125590 -61065047148208 -61065047300164 -61065047327069 -61065047349036 -61065047439883 -61065047568675 -61065047779308 -61065047802442 -61065047824901 -61065047987903 -61065048028594 -61065048050998 -61065048071690 -61065048180700 -61065048334318 -61065048356548 -61065048530170 -61065048552776 -61065048574357 -61065048743098 -61065048834071 -61065048968329 -61065049164022 -61065049286074 -61065049301451 -61065049315843 -61065049329943 -61065049344535 -61065049355431 -61065049475282 -61065049498516 -61065049515257 -61065049531655 -61065049544432 -61065049676158 -61065049694383 -61065049819765 -61065049837899 -61065049949963 -61065049966655 -61065049983541 -61065049999146 -61065050011702 -61065050024689 -61065050041566 -61065050231879 -61065050428650 -61065050591541 -61065050725844 -61065050904896 -61065051002837 -61065051173476 -61065051190308 -61065051207381 -61065051294761 -61065051441266 -61065051592040 -61065051761977 -61065051895260 -61065052079249 -61065052096513 -61065052205562 -61065052222791 -61065052366109 -61065052387596 -61065052407999 -61065052424679 -61065052443535 -61065052562787 -61065052680508 -61065052819708 -61065052834246 -61065052848251 -61065052862093 -61065053075257 -61065053108341 -61065053125338 -61065053261807 -61065053292218 -61065053477362 -61065053502391 -61065053515708 -61065053536523 -61065053775623 -61065053810019 -61065053844369 -61065054000286 -61065054031231 -61065054239986 -61065054279123 -61065054435005 -61065054471245 -61065054504467 -61065054523977 -61065054697062 -61065054714203 -61065054740359 -61065054770556 -61065054904170 -61065054926973 -61065055095396 -61065055116076 -61065055241663 -61065055267685 -61065055419445 -61065055553868 -61065055570795 -61065055587215 -61065055608329 -61065055839620 -61065055860390 -61065056022552 -61065056048411 -61065056062632 -61065056076519 -61065056090586 -61065056103811 -61065056269225 -61065056322044 -61065056332463 -61065056350055 -61065056366593 -61065056411164 -61065056444939 -61065056629144 -61065056656276 -61065056676617 -61065056832392 -61065056861990 -61065056886806 -61065057101110 -61065057119008 -61065057148307 -61065057358803 -61065057401697 -61065057424396 -61065057592522 -61065057639391 -61065057664371 -61065057682163 -61065057708290 -61065057992982 -61065058015806 -61065058038099 -61065058238832 -61065058259340 -61065058280614 -61065058413540 -61065058460124 -61065058605241 -61065058773980 -61065058807725 -61065058848488 -61065058898508 -61065059080505 -61065059100313 -61065059117586 -61065059146858 -61065059275419 -61065059324645 -61065059351284 -61065059372209 -61065059534841 -61065059558631 -61065059583658 -61065059601175 -61065059620949 -61065059742661 -61065059877782 -61065059896229 -61065060225451 -61065060401789 -61065060434694 -61065060629903 -61065060765806 -61065060924860 -61065060942268 -61065060959731 -61065061124012 -61065061142253 -61065061286153 -61065061398361 -61065061573057 -61065061592721 -61065061732140 -61065061835929 -61065061854156 -61065061990958 -61065062016992 -61065062039883 -61065062121805 -61065062292661 -61065062410416 -61065062434815 -61065062565180 -61065062747086 -61065062764873 -61065062924889 -61065062948435 -61065062964598 -61065063128856 -61065063146659 -61065063311005 -61065063331737 -61065063485603 -61065063659970 -61065063784824 -61065063942996 -61065064143076 -61065064171779 -61065064259527 -61065064476833 -61065064505007 -61065064521952 -61065064675253 -61065064708249 -61065064848094 -61065065001280 -61065065151393 -61065065169647 -61065065423099 -61065065536269 -61065065558967 -61065065669385 -61065065688936 -61065065812767 -61065066012448 -61065066126365 -61065066147514 -61065066269400 -61065066446736 -61065066469598 -61065066491889 -61065066517853 -61065066535143 -61065066865368 -61065066880773 -61065066909096 -61065067156093 -61065067199474 -61065067214091 -61065067390801 -61065067407916 -61065067428390 -61065067521180 -61065067537824 -61065067744568 -61065067944058 -61065067974609 -61065068156872 -61065068179633 -61065068196542 -61065068219488 -61065068240758 -61065068432405 -61065068643727 -61065068884102 -61065069081657 -61065069099623 -61065069223978 -61065069352114 -61065069566979 -61065069729533 -61065069924609 -61065070109547 -61065070319557 -61065070454523 -61065070515040 -61065070677710 -61065070697641 -61065070828089 -61065070964612 -61065070988641 -61065071131171 -61065071152936 -61065071282234 -61065071300835 -61065071424402 -61065071554371 -61065071692488 -61065071886973 -61065071904923 -61065071931861 -61065072127769 -61065072142457 -61065072166077 -61065072185186 -61065072201436 -61065072224356 -61065072349728 -61065072394054 -61065072408753 -61065072556973 -61065072583790 -61065072597115 -61065072622104 -61065072788543 -61065072810452 -61065072841417 -61065072957088 -61065072978359 -61065073120081 -61065073147146 -61065073168185 -61065073303458 -61065073450410 -61065073546606 -61065073570852 -61065073717102 -61065073819521 -61065073972657 -61065074002719 -61065074020744 -61065074112727 -61065074296493 -61065074330151 -61065074486466 -61065074505586 -61065074603705 -61065074642413 -61065074676322 -61065074794239 -61065074947317 -61065074963458 -61065074979988 -61065074995165 -61065075129223 -61065075330265 -61065075347325 -61065075363254 -61065075599082 -61065075613912 -61065075627848 -61065075743767 -61065075760028 -61065075774718 -61065075788267 -61065075928937 -61065075944023 -61065076135689 -61065076150215 -61065076385002 -61065076539049 -61065076553402 -61065076567438 -61065076581128 -61065076595790 -61065076609310 -61065076713137 -61065076727837 -61065076741498 -61065076755176 -61065076839089 -61065076854573 -61065076868871 -61065076883424 -61065076894730 -61065077053624 -61065077068660 -61065077083327 -61065077321944 -61065077350904 -61065077521166 -61065077692579 -61065077841884 -61065078011397 -61065078146471 -61065078327775 -61065078358128 -61065078545440 -61065078662932 -61065078822667 -61065079025580 -61065079193012 -61065079216001 -61065079233505 -61065079255454 -61065079413134 -61065079604469 -61065079791068 -61065079956245 -61065080149175 -61065080175834 -61065080198235 -61065080220381 -61065080342724 -61065080366902 -61065080508412 -61065080536932 -61065080561338 -61065080719642 -61065080921442 -61065081090556 -61065081222386 -61065081243872 -61065081264817 -61065081415131 -61065081438304 -61065081604086 -61065081626497 -61065081647614 -61065081811221 -61065081969862 -61065082063447 -61065082086329 -61065082178520 -61065082348685 -61065082479929 -61065082651032 -61065082679976 -61065082847069 -61065083013663 -61065083177714 -61065083272779 -61065083402778 -61065083560088 -61065083710897 -61065083871839 -61065084030785 -61065084052975 -61065084078711 -61065084100516 -61065084227237 -61065084348092 -61065084371862 -61065084397989 -61065084538411 -61065084685386 -61065084883876 -61065084909446 -61065084931631 -61065085155385 -61065085178449 -61065085415832 -61065085449237 -61065085482042 -61065085507938 -61065085529482 -61065085700334 -61065085751241 -61065085772785 -61065085795780 -61065085981458 -61065086172935 -61065086195697 -61065086385435 -61065086569842 -61065086764556 -61065086928531 -61065087082014 -61065087259163 -61065087420809 -61065087582565 -61065087604040 -61065087762357 -61065087917990 -61065088081017 -61065088176107 -61065088353030 -61065088487090 -61065088508627 -61065088648222 -61065088678418 -61065088699776 -61065088723974 -61065088882385 -61065088911043 -61065088932352 -61065088955941 -61065089043458 -61065089073402 -61065089164130 -61065089321944 -61065089488492 -61065089639408 -61065089841146 -61065090041494 -61065090067370 -61065090089581 -61065090109859 -61065090303511 -61065090442197 -61065090634740 -61065090785201 -61065090940660 -61065091100452 -61065091247930 -61065091418736 -61065091436245 -61065091578602 -61065091698349 -61065091728298 -61065091746025 -61065091758869 -61065091908702 -61065091933502 -61065092102513 -61065092119922 -61065092140130 -61065092163465 -61065092309744 -61065092471632 -61065092601453 -61065092631639 -61065092651546 -61065092667335 -61065092838242 -61065092942903 -61065093059795 -61065093150842 -61065093173092 -61065093352302 -61065093372963 -61065093597219 -61065093625955 -61065093775001 -61065093948122 -61065093989887 -61065094006526 -61065094028668 -61065094176392 -61065094196809 -61065094213727 -61065094229874 -61065094254990 -61065094369829 -61065094413038 -61065094450090 -61065094471617 -61065094713963 -61065094764100 -61065094995810 -61065095028827 -61065095241971 -61065095264262 -61065095465512 -61065095504238 -61065095540750 -61065095767433 -61065095786332 -61065095809192 -61065095950644 -61065096169421 -61065096187394 -61065096203353 -61065096225430 -61065096444148 -61065096630622 -61065096656578 -61065096801763 -61065096907669 -61065097030640 -61065097163383 -61065097281906 -61065097486367 -61065097511745 -61065097611644 -61065097709204 -61065097840546 -61065098046966 -61065098226872 -61065098354723 -61065098375329 -61065098489371 -61065098511280 -61065098674804 -61065098796861 -61065098819296 -61065098840356 -61065098940749 -61065098963661 -61065098987630 -61065099008533 -61065099029020 -61065099173061 -61065099197675 -61065099226922 -61065099249097 -61065099419084 -61065099439972 -61065099539235 -61065099646145 -61065099816584 -61065099993540 -61065100171293 -61065100290939 -61065100415587 -61065100445564 -61065100468122 -61065100621715 -61065100735127 -61065100876205 -61065101114221 -61065101284296 -61065101443924 -61065101469024 -61065101675435 -61065101700477 -61065101827242 -61065101974958 -61065102003659 -61065102035642 -61065102058714 -61065102155635 -61065102178869 -61065102199616 -61065102299875 -61065102494648 -61065102518575 -61065102705918 -61065102730928 -61065102754976 -61065102775555 -61065102955714 -61065102980014 -61065103001950 -61065103164118 -61065103277251 -61065103299315 -61065103469898 -61065103506204 -61065103631168 -61065103658764 -61065103783393 -61065103921962 -61065103951935 -61065104071473 -61065104097591 -61065104232446 -61065104256333 -61065104422508 -61065104590411 -61065104612815 -61065104730277 -61065104826834 -61065104848459 -61065104999862 -61065105159222 -61065105296042 -61065105475641 -61065105610134 -61065105744305 -61065105931112 -61065106080904 -61065106212697 -61065106392084 -61065106566610 -61065106740798 -61065106769387 -61065106792143 -61065106811260 -61065106983177 -61065107004685 -61065107172766 -61065107336147 -61065107359878 -61065107394310 -61065107414418 -61065107512567 -61065107653963 -61065107790178 -61065107939994 -61065108110723 -61065108138055 -61065108159513 -61065108183298 -61065108203723 -61065108220880 -61065108416272 -61065108438426 -61065108458425 -61065108483206 -61065108628176 -61065108746979 -61065108870084 -61065108995413 -61065109139471 -61065109345995 -61065109470506 -61065109491859 -61065109516284 -61065109559689 -61065109726540 -61065109750063 -61065109841515 -61065109865716 -61065109885510 -61065109976971 -61065110100697 -61065110195050 -61065110348488 -61065110471291 -61065110564288 -61065110629267 -61065110669402 -61065110884803 -61065110912127 -61065110934446 -61065111096275 -61065111122676 -61065111341609 -61065111382348 -61065111399023 -61065111522631 -61065111561115 -61065111586148 -61065111608411 -61065111721859 -61065111760076 -61065111781209 -61065111803292 -61065112028543 -61065112050082 -61065112072622 -61065112092270 -61065112269304 -61065112307618 -61065112325090 -61065112350158 -61065112490852 -61065112527778 -61065112546515 -61065112567049 -61065112602057 -61065112643149 -61065112662777 -61065112678974 -61065112839966 -61065112861888 -61065112882315 -61065113091313 -61065113112685 -61065113240245 -61065113262110 -61065113360415 -61065113383226 -61065113404629 -61065113574869 -61065113725547 -61065113811449 -61065113831266 -61065114021159 -61065114057128 -61065114220613 -61065114248868 -61065114268636 -61065114367708 -61065114396258 -61065114416556 -61065114627486 -61065114648598 -61065114844750 -61065115033770 -61065115253344 -61065115277816 -61065115303039 -61065115468309 -61065115658738 -61065115787985 -61065115812395 -61065115853468 -61065116048403 -61065116183660 -61065116432596 -61065116613298 -61065116634072 -61065116655668 -61065116675911 -61065116871444 -61065116895171 -61065117158285 -61065117383572 -61065117408652 -61065117433434 -61065117574129 -61065117603687 -61065117625062 -61065117845257 -61065117865983 -61065117886009 -61065117908580 -61065117929162 -61065117945464 -61065117966257 -61065118063577 -61065118086697 -61065118289585 -61065118312917 -61065118333861 -61065118353812 -61065118374291 -61065118390592 -61065118483369 -61065118643054 -61065118834506 -61065118990555 -61065119012999 -61065119176735 -61065119306405 -61065119332704 -61065119499701 -61065119533000 -61065119554949 -61065119760802 -61065119782639 -61065119802679 -61065119825811 -61065119846008 -61065119988952 -61065120114303 -61065120315022 -61065120425756 -61065120447575 -61065120640801 -61065120927621 -61065121076756 -61065121098362 -61065121118581 -61065121250429 -61065121427648 -61065121625930 -61065121645093 -61065121812073 -61065121832970 -61065121858106 -61065121967001 -61065122128782 -61065122147063 -61065122162315 -61065122305302 -61065122331214 -61065122436579 -61065122646868 -61065122668944 -61065122684615 -61065122700378 -61065122860218 -61065122876329 -61065122888764 -61065122911825 -61065123046342 -61065123187658 -61065123326883 -61065123342970 -61065123368941 -61065123498125 -61065123524423 -61065123659137 -61065123675179 -61065123799267 -61065123816722 -61065123931203 -61065123947474 -61065123972531 -61065124106284 -61065124122589 -61065124241248 -61065124257478 -61065124393257 -61065124419040 -61065124439179 -61065124591877 -61065124608179 -61065124623719 -61065124639471 -61065124732007 -61065124747654 -61065124881848 -61065125055574 -61065125207021 -61065125223186 -61065125238776 -61065125254581 -61065125397429 -61065125531946 -61065125548983 -61065125564605 -61065125580603 -61065125592269 -61065125606608 -61065125726579 -61065125825822 -61065125844083 -61065125859560 -61065126061795 -61065126085419 -61065126105944 -61065126270830 -61065126421397 -61065126536314 -61065126730789 -61065126865753 -61065127003026 -61065127019365 -61065127034870 -61065127050387 -61065127065990 -61065127211216 -61065127346299 -61065127504477 -61065127680695 -61065127697098 -61065127809394 -61065127969296 -61065128111101 -61065128127075 -61065128138393 -61065128478847 -61065128494992 -61065128510253 -61065128524913 -61065128539884 -61065128676010 -61065128935585 -61065129137544 -61065129338778 -61065129365181 -61065129393000 -61065129528086 -61065129546054 -61065129691231 -61065129815549 -61065129842997 -61065129861174 -61065129877218 -61065129899013 -61065129991914 -61065130009297 -61065130029279 -61065130053583 -61065130215357 -61065130241457 -61065130262470 -61065130361520 -61065130498716 -61065130657399 -61065130799618 -61065130816376 -61065130836562 -61065130961800 -61065130991238 -61065131024644 -61065131145399 -61065131157381 -61065131180913 -61065131201170 -61065131390555 -61065131541229 -61065131563549 -61065131588268 -61065131790162 -61065131805412 -61065131916360 -61065131931802 -61065131947312 -61065132087064 -61065132104453 -61065132144031 -61065132162762 -61065132290156 -61065132305936 -61065132324082 -61065132349386 -61065132541471 -61065132567325 -61065132665549 -61065132777273 -61065132794112 -61065132809283 -61065132904587 -61065133047345 -61065133063093 -61065133188679 -61065133207817 -61065133301074 -61065133402449 -61065133432998 -61065133449951 -61065133579723 -61065133595632 -61065133698029 -61065133797457 -61065133824206 -61065133925963 -61065133946776 -61065133969030 -61065134126440 -61065134151996 -61065134172915 -61065134307526 -61065134323304 -61065134439832 -61065134455768 -61065134677058 -61065134702365 -61065134825208 -61065134844337 -61065134987639 -61065135153475 -61065135170695 -61065135273591 -61065135294202 -61065135388863 -61065135522565 -61065135658131 -61065135686973 -61065135704053 -61065135819851 -61065135837385 -61065135853875 -61065135945664 -61065135967803 -61065136077588 -61065136102820 -61065136118484 -61065136134951 -61065136289922 -61065136310565 -61065136425282 -61065136597817 -61065136624873 -61065136643102 -61065136771066 -61065136786945 -61065136886993 -61065137044899 -61065137060839 -61065137203265 -61065137364443 -61065137380855 -61065137508279 -61065137524301 -61065137660936 -61065137778903 -61065137892783 -61065137911669 -61065138015719 -61065138110278 -61065138126391 -61065138153180 -61065138364120 -61065138381864 -61065138584620 -61065138747778 -61065138767307 -61065138782888 -61065138801159 -61065138959923 -61065138978925 -61065139132142 -61065139150212 -61065139165695 -61065139255629 -61065139405813 -61065139422414 -61065139437532 -61065139598115 -61065139615386 -61065139631631 -61065139647715 -61065139664165 -61065139676399 -61065139784478 -61065139801435 -61065139949074 -61065140065246 -61065140081332 -61065140223425 -61065140256980 -61065140268968 -61065140298890 -61065140314446 -61065140329468 -61065140463473 -61065140497212 -61065140509668 -61065140522055 -61065140693136 -61065140727346 -61065140739463 -61065140758457 -61065140774410 -61065140789091 -61065140896717 -61065140931197 -61065140943029 -61065140959619 -61065140974789 -61065140990280 -61065141083272 -61065141100855 -61065141117033 -61065141135043 -61065141151422 -61065141163478 -61065141378796 -61065141539851 -61065141574951 -61065141586619 -61065141605592 -61065141621362 -61065141643220 -61065141809079 -61065141833562 -61065141947103 -61065141972498 -61065142020219 -61065142042431 -61065142170524 -61065142194797 -61065142210631 -61065142235261 -61065142357481 -61065142485774 -61065142632601 -61065142654316 -61065142777223 -61065142909313 -61065142925904 -61065143052479 -61065143211249 -61065143227218 -61065143242799 -61065143406934 -61065143424973 -61065143440541 -61065143458291 -61065143588332 -61065143609481 -61065143685946 -61065143793643 -61065143924855 -61065143998399 -61065144144699 -61065144161218 -61065144294711 -61065144392216 -61065144408425 -61065144424042 -61065144439752 -61065144583498 -61065144717045 -61065144846809 -61065144979334 -61065145130920 -61065145249787 -61065145380538 -61065145518058 -61065145627048 -61065145643108 -61065145832027 -61065146027085 -61065146166941 -61065146285037 -61065146419213 -61065146548005 -61065146564525 -61065146580444 -61065146596047 -61065146691388 -61065146709656 -61065146726114 -61065146859411 -61065146881483 -61065146897874 -61065147007769 -61065147035795 -61065147199927 -61065147219200 -61065147401409 -61065147419233 -61065147563855 -61065147581930 -61065147656675 -61065147801680 -61065147818481 -61065147836456 -61065147917879 -61065147934833 -61065147963339 -61065147991065 -61065148029805 -61065148041323 -61065148230678 -61065148244853 -61065148258235 -61065148271551 -61065148285199 -61065148298301 -61065148407625 -61065148421382 -61065148434308 -61065148588439 -61065148812129 -61065149034362 -61065149059499 -61065149314963 -61065149336363 -61065149346744 -61065149644036 -61065149658679 -61065149672309 -61065149686797 -61065149700851 -61065149837255 -61065149853130 -61065149866930 -61065149880902 -61065149894619 -61065150017211 -61065150032043 -61065150153167 -61065150168102 -61065150181900 -61065150195323 -61065150205695 -61065150350315 -61065150369667 -61065150380183 -61065150393272 -61065150406311 -61065150420113 -61065150429624 -61065150558370 -61065150682016 -61065150759158 -61065150773342 -61065150786422 -61065150800290 -61065150815589 -61065150827904 -61065150934891 -61065151089651 -61065151106331 -61065151116831 -61065151130531 -61065151143708 -61065151157725 -61065151254368 -61065151414892 -61065151428441 -61065151441436 -61065151455211 -61065151468228 -61065151584480 -61065151598239 -61065151611562 -61065151626782 -61065151639868 -61065151779981 -61065151794991 -61065151807568 -61065151820553 -61065151835654 -61065151849679 -61065151969085 -61065151982185 -61065151995320 -61065152031941 -61065152266127 -61065152468521 -61065152499549 -61065152527615 -61065152554826 -61065152772879 -61065152900552 -61065152914505 -61065152927101 -61065152939913 -61065152953141 -61065153094930 -61065153111263 -61065153121611 -61065153361133 -61065153607561 -61065153796461 -61065153899413 -61065154089734 -61065154107148 -61065154122524 -61065154324290 -61065154501259 -61065154523106 -61065154668437 -61065154691400 -61065154712498 -61065154771640 -61065154789096 -61065154900631 -61065154918060 -61065155037427 -61065155122668 -61065155214374 -61065155235552 -61065155280947 -61065155317267 -61065155463893 -61065155491908 -61065155508126 -61065155525526 -61065155678432 -61065155699786 -61065155839340 -61065155968568 -61065156068793 -61065156295533 -61065156313144 -61065156328786 -61065156436349 -61065156453621 -61065156534141 -61065156658897 -61065156834673 -61065156977668 -61065157087032 -61065157192622 -61065157394854 -61065157444653 -61065157473215 -61065157607231 -61065157624340 -61065157794876 -61065157813042 -61065157828193 -61065157999976 -61065158015776 -61065158169746 -61065158331538 -61065158347462 -61065158472857 -61065158488815 -61065158503998 -61065158519372 -61065158534750 -61065158653604 -61065158789369 -61065158805907 -61065158925928 -61065158942058 -61065158957022 -61065158971124 -61065158986419 -61065159001621 -61065159175828 -61065159316206 -61065159510652 -61065159526870 -61065159542155 -61065159556284 -61065159604166 -61065159818895 -61065159920814 -61065160158666 -61065160291978 -61065160423414 -61065160740825 -61065160756724 -61065160932642 -61065160951275 -61065160971692 -61065161198219 -61065161382477 -61065161398716 -61065161414391 -61065161445237 -61065161634351 -61065161663610 -61065161679827 -61065161692291 -61065161708230 -61065161964674 -61065162143680 -61065162160250 -61065162179196 -61065162286589 -61065162421456 -61065162441750 -61065162675584 -61065162692025 -61065162713097 -61065162875783 -61065162892184 -61065162918085 -61065162937371 -61065163036632 -61065163065267 -61065163081250 -61065163096809 -61065163287187 -61065163315795 -61065163341593 -61065163356595 -61065163487537 -61065163515020 -61065163532901 -61065163548224 -61065163765867 -61065163779976 -61065163994002 -61065164035914 -61065164130284 -61065164147832 -61065164178857 -61065164267815 -61065164297269 -61065164319076 -61065164331008 -61065164479469 -61065164670662 -61065164815612 -61065164840774 -61065164925815 -61065164950219 -61065165095259 -61065165111141 -61065165126079 -61065165300411 -61065165316483 -61065165341683 -61065165360558 -61065165480241 -61065165498157 -61065165655928 -61065165683173 -61065165701275 -61065165828538 -61065165849947 -61065165874389 -61065166058330 -61065166079353 -61065166174620 -61065166318712 -61065166340309 -61065166474404 -61065166590140 -61065166610135 -61065166826164 -61065166996817 -61065167012293 -61065167165329 -61065167186771 -61065167362080 -61065167387445 -61065167586118 -61065167715891 -61065167816954 -61065167838975 -61065168071355 -61065168185758 -61065168220277 -61065168238185 -61065168259088 -61065168273825 -61065168434340 -61065168458792 -61065168606619 -61065168777449 -61065168811258 -61065168829583 -61065168848122 -61065168863390 -61065168879142 -61065168900911 -61065168918405 -61065169040756 -61065169058179 -61065169204382 -61065169330260 -61065169469463 -61065169496036 -61065169513875 -61065169674081 -61065169694514 -61065169839615 -61065169968076 -61065170053787 -61065170078121 -61065170260215 -61065170408695 -61065170509649 -61065170536034 -61065170675802 -61065170692436 -61065170840293 -61065170869808 -61065171003326 -61065171025416 -61065171052413 -61065171214297 -61065171244483 -61065171260922 -61065171402350 -61065171555330 -61065171576665 -61065171755293 -61065171777012 -61065171976090 -61065171997942 -61065172185776 -61065172346885 -61065172369542 -61065172484876 -61065172633695 -61065172745734 -61065172766265 -61065172935043 -61065172964385 -61065173117137 -61065173150257 -61065173166896 -61065173347617 -61065173364688 -61065173613226 -61065173630243 -61065173796185 -61065173816822 -61065173941611 -61065173957930 -61065174120877 -61065174145383 -61065174293519 -61065174479525 -61065174706317 -61065174727175 -61065174858570 -61065175037805 -61065175057195 -61065175076161 -61065175093806 -61065175116874 -61065175135090 -61065175214773 -61065175409744 -61065175576401 -61065175592904 -61065175795484 -61065175926179 -61065176142099 -61065176312974 -61065176483451 -61065176503440 -61065176645856 -61065176782798 -61065177011455 -61065177028822 -61065177151908 -61065177343869 -61065177537752 -61065177553910 -61065177581853 -61065177603144 -61065177797594 -61065177991281 -61065178190712 -61065178383240 -61065178399367 -61065178555292 -61065178582295 -61065178598073 -61065178610275 -61065178748148 -61065178856673 -61065178872837 -61065178980328 -61065178996529 -61065179170157 -61065179305280 -61065179321015 -61065179337730 -61065179514874 -61065179532018 -61065179701491 -61065179886679 -61065179902551 -61065180070673 -61065180091913 -61065180247822 -61065180371327 -61065180527913 -61065180654960 -61065180819422 -61065180973025 -61065181121966 -61065181144659 -61065181160176 -61065181175439 -61065181199330 -61065181303889 -61065181330311 -61065181351969 -61065181455484 -61065181480559 -61065181498743 -61065181577190 -61065181694193 -61065181832173 -61065182063848 -61065182220682 -61065182248579 -61065182264588 -61065182279202 -61065182302129 -61065182322332 -61065182479582 -61065182507379 -61065182524932 -61065182652032 -61065182748352 -61065182881259 -61065183023590 -61065183044395 -61065183135593 -61065183272180 -61065183425105 -61065183608184 -61065183627745 -61065183745906 -61065183763286 -61065183778018 -61065183927464 -61065183951773 -61065184117665 -61065184305167 -61065184481685 -61065184671951 -61065184695157 -61065184889224 -61065185058301 -61065185078926 -61065185211577 -61065185228080 -61065185411913 -61065185558901 -61065185582607 -61065185727663 -61065185745892 -61065185760711 -61065185952856 -61065186133707 -61065186290120 -61065186317194 -61065186464727 -61065186487436 -61065186510711 -61065186660221 -61065186675831 -61065186697127 -61065186928125 -61065186949586 -61065186972858 -61065187052011 -61065187221030 -61065187242484 -61065187392079 -61065187540370 -61065187562798 -61065187713290 -61065187839579 -61065187854665 -61065188079628 -61065188101585 -61065188296063 -61065188312368 -61065188326857 -61065188347533 -61065188490532 -61065188507184 -61065188526484 -61065188543363 -61065188563661 -61065188741374 -61065188762455 -61065188902597 -61065189064143 -61065189085144 -61065189279893 -61065189371010 -61065189480523 -61065189613667 -61065189740102 -61065189755611 -61065189772095 -61065189894964 -61065190005001 -61065190020537 -61065190188323 -61065190203886 -61065190218547 -61065190239339 -61065190427889 -61065190544703 -61065190569242 -61065190588778 -61065190603847 -61065190713790 -61065190730634 -61065190745519 -61065190775423 -61065190921728 -61065190938077 -61065191016543 -61065191045158 -61065191060874 -61065191079277 -61065191196563 -61065191213374 -61065191236234 -61065191388698 -61065191581807 -61065191770659 -61065191923539 -61065192109577 -61065192130143 -61065192145598 -61065192284377 -61065192336018 -61065192506030 -61065192520818 -61065192669102 -61065192683961 -61065192697455 -61065192719000 -61065192819888 -61065192936479 -61065193017058 -61065193031368 -61065193167849 -61065193193021 -61065193213318 -61065193230940 -61065193247514 -61065193458670 -61065193590926 -61065193663354 -61065193785295 -61065193800075 -61065193813712 -61065193828396 -61065193848254 -61065193944812 -61065193959297 -61065193972782 -61065193991607 -61065194010028 -61065194040171 -61065194185559 -61065194373931 -61065194402995 -61065194441182 -61065194454963 -61065194617134 -61065194652344 -61065194790934 -61065194822574 -61065194836308 -61065194856485 -61065195013498 -61065195027858 -61065195047751 -61065195206127 -61065195512685 -61065195534794 -61065195637800 -61065195653516 -61065195663906 -61065195837521 -61065196028319 -61065196040125 -61065196121167 -61065196135938 -61065196145780 -61065196163478 -61065196183216 -61065196197324 -61065196325284 -61065196341931 -61065196361456 -61065196439816 -61065196560628 -61065196580386 -61065196727529 -61065196907769 -61065197037954 -61065197161060 -61065197176340 -61065197195721 -61065197217057 -61065197228184 -61065197245168 -61065197326606 -61065197351920 -61065197467574 -61065197486524 -61065197608904 -61065197623863 -61065197801776 -61065197818615 -61065197935633 -61065198090066 -61065198111791 -61065198297758 -61065198319651 -61065198514406 -61065198529283 -61065198542574 -61065198560233 -61065198680997 -61065198802533 -61065198923798 -61065199062589 -61065199154118 -61065199169433 -61065199358191 -61065199373061 -61065199391859 -61065199517933 -61065199687731 -61065199849558 -61065199868747 -61065199882210 -61065199895636 -61065200028984 -61065200046731 -61065200060551 -61065200074089 -61065200094310 -61065200238931 -61065200378812 -61065200395641 -61065200414609 -61065200436028 -61065200446813 -61065200526601 -61065200558497 -61065200595903 -61065200607320 -61065200629270 -61065200799741 -61065200822484 -61065200841654 -61065201018226 -61065201039511 -61065201053138 -61065201067812 -61065201222297 -61065201236722 -61065201250755 -61065201267471 -61065201461661 -61065201645768 -61065201686443 -61065201706027 -61065201720631 -61065201730925 -61065201748589 -61065201769849 -61065201886848 -61065201923165 -61065201933266 -61065202033098 -61065202047618 -61065202060840 -61065202079579 -61065202174289 -61065202188436 -61065202204516 -61065202346283 -61065202369014 -61065202497580 -61065202511640 -61065202638722 -61065202660647 -61065202825914 -61065202843418 -61065202959288 -61065203141293 -61065203325707 -61065203339949 -61065203473710 -61065203634114 -61065203772965 -61065203788984 -61065203876568 -61065203897319 -61065204000074 -61065204100797 -61065204115914 -61065204128997 -61065204146515 -61065204332044 -61065204449361 -61065204565892 -61065204654079 -61065204676421 -61065204692097 -61065204702847 -61065204829572 -61065204849406 -61065204871165 -61065204884076 -61065204904626 -61065204925253 -61065204942780 -61065204956111 -61065205178823 -61065205330945 -61065205351035 -61065205377902 -61065205392806 -61065205405415 -61065205423664 -61065205544350 -61065205572733 -61065205732285 -61065205753166 -61065205862004 -61065205950640 -61065206064170 -61065206147057 -61065206308921 -61065206455019 -61065206484058 -61065206663834 -61065206753526 -61065206778207 -61065206798822 -61065206817589 -61065206911300 -61065207082748 -61065207283504 -61065207442283 -61065207659085 -61065207896017 -61065207926282 -61065208070581 -61065208103767 -61065208132249 -61065208268562 -61065208296784 -61065208425699 -61065208494179 -61065208520089 -61065208668381 -61065208689518 -61065208839533 -61065209002870 -61065209128912 -61065209295657 -61065209408163 -61065209526580 -61065209551406 -61065209579238 -61065209603641 -61065209937695 -61065209962302 -61065209980435 -61065210146890 -61065210167714 -61065210190894 -61065210208589 -61065210342189 -61065210447978 -61065210465876 -61065210482296 -61065210499104 -61065210705397 -61065210727214 -61065210746552 -61065210764675 -61065210782864 -61065210800243 -61065210980123 -61065211135869 -61065211349980 -61065211387548 -61065211525356 -61065211664236 -61065211681629 -61065211697856 -61065211713835 -61065211729747 -61065211746528 -61065211835731 -61065211854132 -61065211872217 -61065211888209 -61065212056195 -61065212074870 -61065212091382 -61065212127676 -61065212144606 -61065212414185 -61065212723112 -61065212756320 -61065212937316 -61065212956273 -61065213123996 -61065213142719 -61065213160514 -61065213177715 -61065213195784 -61065213213088 -61065213430844 -61065213450497 -61065213463179 -61065213480651 -61065213658527 -61065213679581 -61065213692976 -61065213955399 -61065213978577 -61065213999442 -61065214015042 -61065214035725 -61065214209204 -61065214231547 -61065214252297 -61065214267799 -61065214496925 -61065214513783 -61065214657599 -61065214669694 -61065214902156 -61065214916299 -61065214930301 -61065214949915 -61065214967096 -61065214980065 -61065214989599 -61065215124418 -61065215144835 -61065215162529 -61065215175825 -61065215187828 -61065215315859 -61065215337079 -61065215355599 -61065215368371 -61065215483732 -61065215499789 -61065215512883 -61065215526380 -61065215685717 -61065215705032 -61065215719354 -61065215802870 -61065215821425 -61065215837177 -61065215850501 -61065215868410 -61065215988976 -61065216023196 -61065216212499 -61065216226198 -61065216239079 -61065216256924 -61065216404613 -61065216418012 -61065216431282 -61065216588760 -61065216614000 -61065216627092 -61065216641146 -61065216806455 -61065216820105 -61065216833425 -61065216857567 -61065216942965 -61065216957044 -61065216972231 -61065216994850 -61065217026369 -61065217043241 -61065217063197 -61065217154116 -61065217165176 -61065217186806 -61065217203764 -61065217333823 -61065217344967 -61065217358083 -61065217372012 -61065217390706 -61065217401916 -61065217521762 -61065217536796 -61065217546111 -61065217673557 -61065217692963 -61065217828965 -61065217851551 -61065217865850 -61065218105918 -61065218131181 -61065218515527 -61065218742100 -61065218943658 -61065218969533 -61065218994245 -61065219228780 -61065219253767 -61065219278306 -61065219304565 -61065219512002 -61065219641638 -61065219661206 -61065219679577 -61065219784870 -61065219973885 -61065220148180 -61065220312893 -61065220331859 -61065220460062 -61065220591958 -61065220609112 -61065220711208 -61065220789227 -61065220810573 -61065220931987 -61065220950262 -61065221193428 -61065221210767 -61065221230163 -61065221420298 -61065221438250 -61065221581182 -61065221724418 -61065221740649 -61065221882266 -61065222056630 -61065222168754 -61065222312269 -61065222499960 -61065222648203 -61065222771869 -61065222788335 -61065222804114 -61065222819673 -61065222834856 -61065222855625 -61065222976051 -61065223087468 -61065223229713 -61065223247578 -61065223371803 -61065223390641 -61065223407825 -61065223428357 -61065223531206 -61065223550393 -61065223646448 -61065223746129 -61065223766639 -61065223790148 -61065223917748 -61065223942362 -61065224198810 -61065224230490 -61065224259543 -61065224406605 -61065224421719 -61065224435063 -61065224451074 -61065224582806 -61065224601876 -61065224716929 -61065224734274 -61065224939189 -61065224956776 -61065224970303 -61065225069479 -61065225197400 -61065225332077 -61065225483243 -61065225505863 -61065225525481 -61065225545511 -61065225563185 -61065225583903 -61065225728144 -61065225909656 -61065225932953 -61065226170005 -61065226190000 -61065226343131 -61065226356955 -61065226373714 -61065226546137 -61065226564053 -61065226741089 -61065226764776 -61065226784169 -61065226793660 -61065226945138 -61065227112613 -61065227126384 -61065227148590 -61065227267793 -61065227294521 -61065227307472 -61065227316776 -61065227466692 -61065227603849 -61065227787373 -61065227807887 -61065227823082 -61065227912979 -61065227988385 -61065228022228 -61065228200743 -61065228428299 -61065228661216 -61065228821167 -61065229074453 -61065229097820 -61065229115133 -61065229133930 -61065229151756 -61065229334010 -61065229354359 -61065229560691 -61065229580830 -61065229598966 -61065229613696 -61065229782638 -61065229800852 -61065229817608 -61065229835128 -61065230064199 -61065230089545 -61065230110706 -61065230128331 -61065230146121 -61065230163460 -61065230299341 -61065230324447 -61065230343032 -61065230530513 -61065230550478 -61065230568309 -61065230585707 -61065230808879 -61065231056599 -61065231319979 -61065231339392 -61065231357271 -61065231372913 -61065231390300 -61065231456139 -61065231692441 -61065231712193 -61065231730174 -61065231747401 -61065231799088 -61065231811458 -61065231970591 -61065232207956 -61065232229472 -61065232246284 -61065232262725 -61065232276019 -61065232391680 -61065232409873 -61065232431394 -61065232448133 -61065232460605 -61065232476600 -61065232491003 -61065232606572 -61065232623502 -61065232638820 -61065232650994 -61065232784870 -61065232803503 -61065232815228 -61065232937578 -61065232953331 -61065232964790 -61065233055473 -61065233068381 -61065233192582 -61065233208068 -61065233219645 -61065233383527 -61065233402262 -61065233417729 -61065233433234 -61065233448894 -61065233464546 -61065233581759 -61065233597425 -61065233615315 -61065233632663 -61065233648136 -61065233754601 -61065233771147 -61065233787751 -61065233900179 -61065233981143 -61065233997912 -61065234113905 -61065234248985 -61065234408008 -61065234424607 -61065234441436 -61065234567293 -61065234693304 -61065234827205 -61065234843710 -61065234867816 -61065234963872 -61065234982885 -61065234999169 -61065235015405 -61065235154133 -61065235269778 -61065235287569 -61065235303017 -61065235319936 -61065235336375 -61065235408989 -61065235573184 -61065235590177 -61065235684437 -61065235861581 -61065236023854 -61065236043390 -61065236072876 -61065236175607 -61065236353686 -61065236373561 -61065236561627 -61065236577989 -61065236647734 -61065236664491 -61065236680821 -61065236696835 -61065236782467 -61065236860879 -61065236877784 -61065236893902 -61065237055151 -61065237188141 -61065237204437 -61065237220016 -61065237389891 -61065237522605 -61065237540038 -61065237557430 -61065237641008 -61065237657613 -61065237673363 -61065237688913 -61065237704552 -61065237720533 -61065237895702 -61065237912086 -61065237927531 -61065237942697 -61065238013623 -61065238033017 -61065238216864 -61065238242336 -61065238273038 -61065238382249 -61065238398345 -61065238412871 -61065238427454 -61065238448550 -61065238465328 -61065238611342 -61065238631497 -61065238647472 -61065238665558 -61065238697208 -61065238791803 -61065238807052 -61065238919448 -61065238938353 -61065239106535 -61065239122116 -61065239139242 -61065239154562 -61065239181937 -61065239196962 -61065239293727 -61065239440278 -61065239455500 -61065239470024 -61065239582109 -61065239597677 -61065239688101 -61065239704506 -61065239720392 -61065239736076 -61065239950260 -61065240039657 -61065240113583 -61065240230456 -61065240336977 -61065240353255 -61065240368195 -61065240448532 -61065240463676 -61065240478897 -61065240493335 -61065240508035 -61065240623889 -61065240705904 -61065240724555 -61065240760155 -61065240774725 -61065240790567 -61065240802896 -61065240976155 -61065240991413 -61065241006656 -61065241021922 -61065241129539 -61065241145145 -61065241159901 -61065241244475 -61065241439928 -61065241455644 -61065241485374 -61065241500138 -61065241514720 -61065241718031 -61065241869043 -61065241887507 -61065241902884 -61065241918583 -61065242022917 -61065242040326 -61065242055772 -61065242071567 -61065242221768 -61065242239121 -61065242255051 -61065242270737 -61065242286525 -61065242299379 -61065242457118 -61065242473504 -61065242589841 -61065242713487 -61065242745371 -61065242765231 -61065242911966 -61065243007102 -61065243076021 -61065243157526 -61065243174844 -61065243338479 -61065243354458 -61065243370060 -61065243385408 -61065243400796 -61065243416581 -61065243488894 -61065243599151 -61065243743475 -61065243873441 -61065243901732 -61065243919722 -61065244128995 -61065244241712 -61065244403373 -61065244419639 -61065244431520 -61065244450129 -61065244590725 -61065244613356 -61065244629561 -61065244641831 -61065244746361 -61065244765775 -61065244777775 -61065244934256 -61065245067932 -61065245087793 -61065245233870 -61065245254859 -61065245267465 -61065245384178 -61065245400713 -61065245415985 -61065245431332 -61065245444755 -61065245586741 -61065245787530 -61065245803433 -61065245820127 -61065245836429 -61065245850667 -61065245984294 -61065246003331 -61065246024723 -61065246038155 -61065246188777 -61065246210511 -61065246231376 -61065246368830 -61065246383106 -61065246405278 -61065246422553 -61065246635075 -61065246648871 -61065246665500 -61065246677947 -61065246694712 -61065246825928 -61065246843681 -61065246858639 -61065247051257 -61065247073680 -61065247225149 -61065247238611 -61065247255568 -61065247278348 -61065247290823 -61065247401602 -61065247419727 -61065247433683 -61065247649470 -61065247667171 -61065247680782 -61065247801820 -61065247819457 -61065247836762 -61065247857733 -61065247874723 -61065247887799 -61065248099217