diff --git a/README.md b/README.md index 066addf..bdb90f0 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Unless required by applicable law or agreed to in writing, software distributed 1. This program downloads the complete list of public INSDC sequence accessions and their last updated dates (if available) for the requested type using the ENA Portal API. e.g. for sequence: -https://www.ebi.ac.uk/ena/portal/api/search?dataPortal=ena&result=sequence&fields=accession,last_updated +https://www.ebi.ac.uk/ena/browser/api/livelist/sequence?fields=accession,last_updated 2. It then compares the new list against a previous list of the same type and generates 2 lists. list of new or updated records since the last time @@ -37,26 +37,15 @@ You need to provide 3 mandatory arguments i.e datatype, previousSnapshot & outpu 3. outputLocation : Local folder where the new complete report and the 2 change lists are to be created. Ensure there's enough disk space available. -4. email : optionally provide an email address to be notified when the process is complete - -5. query : optionally provide a query string to filter the contents of your snapshot. Use the Query page in the +4. query : optionally provide a query string to filter the contents of your snapshot. Use the Query page in the https://www.ebi.ac.uk/ena/browser/advanced-search wizard to build up the query. This should be the same query for every execution of the tool for a specific snapshot. e.g. --query=dataclass="CON" -6. downloadData : (Optional) If value is true, the tool will also fetch the data for the new/updated records and save - them in a .dat file. - -7. format : (Optional) Used only if downloadData=true. Request embl flatfile format (default) or fasta format for - downloaded data. - -8. annotationOnly : (Optional) Used only if downloadData=true and format=embl. Download only the annotations, excluding - sequence lines. - -9. includeParentAccession : (Optional) Valid only for coding & noncoding. If true,get parent_accession also from API and +5. includeParentAccession : (Optional) Valid only for coding & noncoding. If true,get parent_accession also from API and include in the output list files. e.g. 1 -java -jar [path]/snapshot-change-lister-1.1.0.jar --dataType=CODING --previousSnapshot=[path]/coding_20210701.tsv --outputLocation=[path] --email=email@email.com +java -jar [path]/ena-snapshot-tool-1.3.0.jar --dataType=CODING --previousSnapshot=[path]/coding_20210701.tsv --outputLocation=[path] If this program were run on 2021-08-03, it would create 3 new files in the outputLocation folder. @@ -67,7 +56,7 @@ coding_20210803_new-or-updated.tsv coding_20210803_deleted.tsv e.g. 2 -java -jar [path]/snapshot-change-lister-1.1.0.jar --dataType=SEQUENCE --previousSnapshot=[path]/sequence_20220220.tsv --outputLocation=[path] --query=dataclass="HTG" --downloadData=true --format=embl --annotationOnly=true" +java -jar [path]/ena-snapshot-tool-1.3.0.jar --dataType=SEQUENCE --previousSnapshot=[path]/sequence_20220220.tsv --outputLocation=[path] --query=dataclass="HTG" If this program were run on 2022-02-23, it would create 4 new files in the outputLocation folder. @@ -75,17 +64,18 @@ sequence_20220223.tsv sequence_20220223_new-or-updated.tsv -sequence_20220223_new-or-updated.dat - sequence_20220223_deleted.tsv Example for running in LSF: -bsub -n 2 -M 10000 -J coding-snapshot-change-lister -o /path/snapshot-changes/output-20211210.log java -jar snapshot-change-lister-1.0.0.jar --email=email@email.com --dataType=CODING --previousSnapshot=/path/coding_20211028.tsv --outputLocation=/path/ +bsub -n 2 -M 10000 -J coding-ena-snapshot-tool -o /path/snapshot-changes/output-20211210.log java -jar ena-snapshot-tool-1.3.0.jar --dataType=CODING --previousSnapshot=/path/coding_20211028.tsv --outputLocation=/path/ # Support -Direct any questions/issues to https://www.ebi.ac.uk/ena/browser/support with snapshot-change-lister in the subject +Direct any questions/issues to https://www.ebi.ac.uk/ena/browser/support with ena-snapshot-tool in the subject + +# Benchmark +Fetched full coding set with 3214942946 records and processed in ~7 hours, using 2GB max memory out of 8GB allocated, using 2 CPU cores. diff --git a/build.gradle b/build.gradle index dcefd2f..358e400 100644 --- a/build.gradle +++ b/build.gradle @@ -20,7 +20,7 @@ plugins { } group = 'uk.ac.ebi.ena.dcap' -version = '1.2.2' +version = '1.3.0' sourceCompatibility = '1.8' configurations { @@ -35,13 +35,19 @@ repositories { dependencies { implementation 'org.apache.commons:commons-lang3:3.4' + implementation group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.16.1' + implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.16.1' + implementation group: 'com.github.davidmoten', name: 'big-sorter', version: '0.1.25' + implementation group: 'org.apache.commons', name: 'commons-csv', version: '1.10.0' implementation group: 'org.apache.commons', name: 'commons-collections4', version: '4.4' implementation group: 'commons-io', name: 'commons-io', version: '2.7' implementation group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.13' implementation 'org.springframework.boot:spring-boot-starter-validation' implementation 'org.springframework.boot:spring-boot-starter-mail' - compileOnly 'org.projectlombok:lombok' - annotationProcessor 'org.projectlombok:lombok' + compileOnly 'org.projectlombok:lombok:1.18.30' + annotationProcessor 'org.projectlombok:lombok:1.18.30' + testCompileOnly 'org.projectlombok:lombok:1.18.30' + testAnnotationProcessor 'org.projectlombok:lombok:1.18.30' testImplementation 'org.springframework.boot:spring-boot-starter-test' } diff --git a/settings.gradle b/settings.gradle index 6337a23..a40c831 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1 @@ -rootProject.name = 'snapshot-change-lister' +rootProject.name = 'ena-snapshot-tool' diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/MainRunner.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/MainRunner.java index dfe9cd0..c96b346 100644 --- a/src/main/java/uk/ac/ebi/ena/dcap/scl/MainRunner.java +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/MainRunner.java @@ -18,26 +18,14 @@ import lombok.NoArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.StringUtils; -import org.apache.commons.lang3.exception.ExceptionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.CommandLineRunner; -import org.springframework.mail.javamail.JavaMailSender; -import org.springframework.mail.javamail.MimeMessagePreparator; import org.springframework.stereotype.Component; -import uk.ac.ebi.ena.dcap.scl.model.DataType; -import uk.ac.ebi.ena.dcap.scl.model.DiffFiles; import uk.ac.ebi.ena.dcap.scl.service.MainService; -import javax.mail.Message; -import javax.mail.MessagingException; -import javax.mail.internet.InternetAddress; -import javax.mail.internet.MimeMessage; -import java.io.File; import java.text.DateFormat; import java.text.SimpleDateFormat; -import java.util.Date; @Component @Slf4j @@ -55,81 +43,20 @@ public class MainRunner implements CommandLineRunner { @Value("${outputLocation}") public String outputLocationPath; - @Value("${email:#{null}}") - public String email; - @Value("${query:#{null}}") public String query; - @Value("${downloadData:#{false}}") - public boolean downloadData; - - @Value("${annotationOnly:#{false}}") - public boolean annotationOnly; - - @Value("${format:embl}") - public String format; - @Value("${includeParentAccession:#{false}}") public boolean includeParentAccession; @Autowired private MainService mainService; - @Autowired - JavaMailSender mailSender; - @SneakyThrows @Override public void run(String... args) { - DataType dataType = DataType.valueOf(dataTypeStr.toUpperCase()); - File prevSnapshot = new File(previousSnapshotPath); - assert prevSnapshot.exists(); - File outputLocation = new File(outputLocationPath); - assert outputLocation.canWrite(); - if (includeParentAccession && !(dataType == DataType.CODING || dataType == DataType.NONCODING)) { - throw new IllegalArgumentException("includeParentAccession can be true only for coding & noncoding"); - } - - String name = dataType.name().toLowerCase() + "_" + DATE_FORMAT.format(new Date()); - try { - File newSnapshot = mainService.writeLatestSnapshot(dataType, outputLocation, name, query, - includeParentAccession); - final DiffFiles diffFiles = mainService.compareSnapshots(prevSnapshot, newSnapshot, outputLocation, name); - if (downloadData) { - mainService.downloadData(diffFiles.getNewOrChangedList(), format, annotationOnly); - } - if (StringUtils.isNotBlank(email)) { - sendMail(email, dataTypeStr + " change lister completed", - "Compared " + prevSnapshot + " & " + newSnapshot + " in " + outputLocation); - } - } catch (Exception e) { - log.error("error:", e); - if (StringUtils.isNotBlank(email)) { - sendMail(email, dataTypeStr + " change lister failed", ExceptionUtils.getStackTrace(e)); - } - } + mainService.fetchSnapshotAndCompare(dataTypeStr, previousSnapshotPath, outputLocationPath, query, + includeParentAccession); } - public void sendMail(String email, String subject, String body, String... args) throws MessagingException { - MimeMessagePreparator preparator = new MimeMessagePreparator() { - - public void prepare(MimeMessage mimeMessage) throws Exception { - - mimeMessage.setRecipient(Message.RecipientType.TO, - new InternetAddress(email)); - mimeMessage.setFrom(new InternetAddress("datalib@ebi.ac.uk")); - mimeMessage.setText(body - + System.lineSeparator() + StringUtils.join(args, " ")); - mimeMessage.setSubject(subject); - } - }; - - try { - mailSender.send(preparator); - } catch (Exception ex) { - // simply log it and go on... - log.error("Error sending email", ex); - } - } } diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/SnapshotChangeListerApplication.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/SnapshotChangeListerApplication.java index 97f0f40..fda4e8d 100644 --- a/src/main/java/uk/ac/ebi/ena/dcap/scl/SnapshotChangeListerApplication.java +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/SnapshotChangeListerApplication.java @@ -28,11 +28,5 @@ public static void main(String[] args) { SpringApplication.run(SnapshotChangeListerApplication.class, args); } - @Bean - public JavaMailSender javaMailService() { - JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl(); - javaMailSender.setHost("smtp.ebi.ac.uk"); - javaMailSender.setPort(25); - return javaMailSender; - } + } diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/model/DataType.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/model/DataType.java index e293e70..6bfcf12 100644 --- a/src/main/java/uk/ac/ebi/ena/dcap/scl/model/DataType.java +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/model/DataType.java @@ -16,7 +16,14 @@ package uk.ac.ebi.ena.dcap.scl.model; public enum DataType { + ANALYSIS, + ASSEMBLY, + SAMPLE, SEQUENCE, + STUDY, + READ_RUN, CODING, - NONCODING; + NONCODING, + + TLS_SET, TSA_SET, WGS_SET; } diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/model/Line.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/model/Line.java index 1aca03d..bb5f65c 100644 --- a/src/main/java/uk/ac/ebi/ena/dcap/scl/model/Line.java +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/model/Line.java @@ -19,6 +19,7 @@ import lombok.EqualsAndHashCode; import lombok.Getter; import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import java.text.DateFormat; @@ -27,6 +28,7 @@ @Getter @AllArgsConstructor @EqualsAndHashCode +@Slf4j public class Line { public static Line POISON = new Line(null, null); @@ -36,11 +38,16 @@ public class Line { @SneakyThrows public static Line of(String s, DateFormat df) { - final String[] split = StringUtils.split(s); - if (split.length == 2) { - return new Line(split[0], df.parse(split[1])); - } else { - return new Line(split[0], null); + try { + final String[] split = StringUtils.split(s); + if (split.length == 2) { + return new Line(split[0], df.parse(split[1])); + } else { + return new Line(split[0], null); + } + } catch (Exception e) { + log.error("Error in line:{}", s, e); + throw e; } } } diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/service/CountClient.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/service/CountClient.java new file mode 100644 index 0000000..1c535ce --- /dev/null +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/service/CountClient.java @@ -0,0 +1,67 @@ +package uk.ac.ebi.ena.dcap.scl.service; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; + +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URL; + +@Slf4j +public class CountClient { + static final String PORTAL_API_COUNT_URL = "https://www.ebi.ac.uk/ena/portal/api/count?result=%s&format=json"; + + @SneakyThrows + public static long getCountFromResults(String result, String query) { + // Your JSON array as a string + + // Create ObjectMapper + ObjectMapper objectMapper = new ObjectMapper(); + + // Parse JSON array + JsonNode objNode = objectMapper.readTree(getJson(PORTAL_API_COUNT_URL, result, query)); + + // Iterate through objects in the array + long codingValue = objNode.get("count").asLong(); + return codingValue; + } + + @SneakyThrows + private static String getJson(String portalApiResultsUrl, String result, String query) { + + String urlStr = String.format(PORTAL_API_COUNT_URL, result); + if (StringUtils.isNotBlank(query)) { + urlStr += "&query=" + query; + } + log.info("getting count from:{}", urlStr); + // Create URL object + URL url = new URL(urlStr); + + // Open a connection + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + + // Set the request method to GET + connection.setRequestMethod("GET"); + + // Get the response code + int responseCode = connection.getResponseCode(); + + // Read the response from the input stream + StringBuilder response; + try (BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()))) { + response = new StringBuilder(); + String line; + while ((line = reader.readLine()) != null) { + response.append(line); + } + + } + + return response.toString(); + } + +} diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/service/MainService.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/service/MainService.java index 769c8dc..fbc63b9 100644 --- a/src/main/java/uk/ac/ebi/ena/dcap/scl/service/MainService.java +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/service/MainService.java @@ -17,8 +17,6 @@ import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.collections4.ListUtils; -import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -27,15 +25,12 @@ import uk.ac.ebi.ena.dcap.scl.model.Line; import java.io.*; -import java.net.HttpURLConnection; -import java.net.URL; -import java.nio.file.Files; -import java.nio.file.Paths; import java.text.DateFormat; import java.text.SimpleDateFormat; -import java.util.List; +import java.util.Date; import java.util.concurrent.*; +import static uk.ac.ebi.ena.dcap.scl.MainRunner.DATE_FORMAT; import static uk.ac.ebi.ena.dcap.scl.model.Line.POISON; @Service @@ -49,18 +44,55 @@ public class MainService { SnapshotClient snapshotClient; - public File writeLatestSnapshot(DataType dataType, File outputLocation, String fileName, String query, - boolean includeParentAccession) { + public static File writeLatestSnapshot(DataType dataType, File outputLocation, String fileName, String query, + boolean includeParentAccession) { File outFile = new File(outputLocation.getAbsolutePath() + File.separator + fileName + ".tsv"); if (outFile.exists()) { outFile.delete(); } - return snapshotClient.getLatestSnapshot(dataType, outFile, query, includeParentAccession); + return SnapshotClient.getLatestSnapshot(dataType, outFile, query, includeParentAccession); } @SneakyThrows - public DiffFiles compareSnapshots(File previousSnapshot, File latestSnapshot, File outputLocation, String namePrefix) { + private static boolean loadToQueues(File snapshot, BlockingQueue queue) { + log.info("reading from:{}", snapshot); + DateFormat LAST_UPDATED_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd"); + long count = 0; + try { + try (BufferedReader snapshotReader = new BufferedReader(new FileReader(snapshot))) { + String line = snapshotReader.readLine(); + if (StringUtils.isNotBlank(line)) { + if (line.startsWith("accession")) { + // skip + } else { + count++; + queue.put(Line.of(line, LAST_UPDATED_DATE_FORMAT)); + } + while ((line = snapshotReader.readLine()) != null) { + count++; + if (count % 100000000 == 0) { + log.info("read {} from {}: {}", count, snapshot.getName(), line); + } + queue.put(Line.of(line, LAST_UPDATED_DATE_FORMAT)); + } + } + + } + log.info("{} added. poisoning:{}", count, snapshot.getName()); + + return true; + } catch (Exception e) { + log.error(snapshot.getName() + " Error:", e); + return false; + } finally { + queue.put(POISON); + } + } + + @SneakyThrows + public DiffFiles compareSnapshots(File previousSnapshot, File latestSnapshot, File outputLocation, + String namePrefix) { log.info("comparing:{} and {}", previousSnapshot.getAbsolutePath(), latestSnapshot.getAbsolutePath()); File newOrUpdated = new File(outputLocation.getAbsolutePath() + File.separator + namePrefix + "_new-or" + "-updated.tsv"); @@ -140,75 +172,37 @@ public void run() { } log.info("shutting down"); executorService.shutdown(); - log.info("new records found:{}", newCount); - log.info("records to be deleted:{}", delCount); + log.info("new records found:{} listed in {}", newCount, newOrUpdated.getAbsolutePath()); + log.info("records to be deleted:{} listed in {}", delCount, deleted.getAbsolutePath()); return new DiffFiles(newOrUpdated, deleted); } @SneakyThrows - private boolean loadToQueues(File snapshot, BlockingQueue queue) { - log.info("reading from:{}", snapshot); - DateFormat LAST_UPDATED_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd"); - long count = 0; - try { - try (BufferedReader reader = new BufferedReader(new FileReader(snapshot))) { - String line = reader.readLine(); - if (StringUtils.isNotBlank(line)) { - if (line.startsWith("accession")) { - // skip - } else { - count++; - queue.put(Line.of(line, LAST_UPDATED_DATE_FORMAT)); - } - } - while ((line = reader.readLine()) != null) { - count++; - if (count % 100000000 == 0) { - log.info("read {} from {}: {}", count, snapshot.getName(), line); - } - queue.put(Line.of(line, LAST_UPDATED_DATE_FORMAT)); - } - } - log.info("{} added. poisoning:{}", count, snapshot.getName()); - - return true; - } catch (Exception e) { - log.error(snapshot.getName() + " Error:", e); - return false; - } finally { - queue.put(POISON); + public File fetchSnapshotAndCompare(String dataTypeStr, String previousSnapshotPath, String outputLocationPath, + String query, boolean includeParentAccession) { + DataType dataType = DataType.valueOf(dataTypeStr.toUpperCase()); + File prevSnapshot = new File(previousSnapshotPath); + if (!prevSnapshot.exists()) { + log.info("Previous snapshot:{} does not exist.", previousSnapshotPath); + prevSnapshot.createNewFile(); + } + File outputLocation = new File(outputLocationPath); + assert outputLocation.canWrite(); + if (includeParentAccession && !(dataType == DataType.CODING || dataType == DataType.NONCODING)) { + throw new IllegalArgumentException("includeParentAccession can be true only for coding & noncoding"); } - } + String name = dataType.name().toLowerCase() + "_" + DATE_FORMAT.format(new Date()); + try { + File newSnapshot = writeLatestSnapshot(dataType, outputLocation, name, query, + includeParentAccession); + final DiffFiles diffFiles = compareSnapshots(prevSnapshot, newSnapshot, outputLocation, name); - @SneakyThrows - public void downloadData(File newOrChangedList, String format, boolean annotationOnly) { - String req = String.format(BROWSER_API_EMBL, format); - - final List lines = Files.readAllLines(Paths.get(newOrChangedList.getAbsolutePath())); - log.info("downloading for:{} records in {}", lines.size(), newOrChangedList.getAbsolutePath()); - File dataFile = new File(StringUtils.substringBeforeLast(newOrChangedList.getAbsolutePath(), ".") + ".dat"); - if (dataFile.exists()) { - dataFile.delete(); - } - log.info("writing to:{}", dataFile.getAbsolutePath()); - List> subSets = ListUtils.partition(lines, 1000); - try (BufferedOutputStream bw = new BufferedOutputStream(new FileOutputStream(dataFile))) { - subSets.stream().map(s -> StringUtils.join(s, ",")).forEach(s -> { - log.info("downloading:{}-{}", StringUtils.substringBefore(s,","), StringUtils.substringAfterLast(s,",")); - try { - String url = req + s; - if ("embl".equalsIgnoreCase(format) && annotationOnly) { - url += "?annotationOnly=true"; - } -// log.info("req:{}", url); - HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection(); - InputStream inputStream = connection.getInputStream(); - IOUtils.copy(inputStream, bw); - } catch (IOException e) { - log.error("Failed:" + BROWSER_API_EMBL + s, e); - } - }); + return newSnapshot; + } catch (Exception e) { + log.error("error:", e); + System.exit(1); } + return null; } } diff --git a/src/main/java/uk/ac/ebi/ena/dcap/scl/service/SnapshotClient.java b/src/main/java/uk/ac/ebi/ena/dcap/scl/service/SnapshotClient.java index 24ccb5f..7fa8085 100644 --- a/src/main/java/uk/ac/ebi/ena/dcap/scl/service/SnapshotClient.java +++ b/src/main/java/uk/ac/ebi/ena/dcap/scl/service/SnapshotClient.java @@ -15,9 +15,12 @@ ******************************************************************************/ package uk.ac.ebi.ena.dcap.scl.service; +import com.github.davidmoten.bigsorter.Serializer; +import com.github.davidmoten.bigsorter.Sorter; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.io.IOUtils; +import org.apache.commons.csv.CSVFormat; +import org.apache.commons.csv.CSVRecord; import org.apache.commons.lang3.StringUtils; import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; @@ -27,11 +30,11 @@ import org.springframework.stereotype.Component; import uk.ac.ebi.ena.dcap.scl.model.DataType; -import java.io.File; -import java.io.FileOutputStream; -import java.io.InputStream; -import java.io.OutputStream; +import java.io.*; import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.util.Comparator; @Component @Slf4j @@ -39,11 +42,15 @@ public class SnapshotClient { static final String PORTAL_API_URL = "https://www.ebi.ac.uk/ena/portal/api/search?result=%s&fields=%s"; + static final String LIVELIST_URL = "https://www.ebi.ac.uk/ena/browser/api/livelist/%s?fields=%s"; static final String PARENT_ACCESSION = "parent_accession"; static final String ACCESSION = "accession"; static final String LAST_UPDATED = "last_updated"; +// @Autowired +// CountClient countClient; + private static String getFields(String resultId, boolean includeParentAccession) { String defaultFields; if (includeParentAccession && resultId.equalsIgnoreCase("coding") || @@ -56,8 +63,31 @@ private static String getFields(String resultId, boolean includeParentAccession) return defaultFields; } + public static void bigSortFile(File infile, File outfile) { + Serializer serializer = + Serializer.csv( + CSVFormat + .DEFAULT + .withFirstRecordAsHeader() + .withDelimiter('\t'), + StandardCharsets.UTF_8); + Comparator comparator = (x, y) -> { + String a = (x.get("accession")); + String b = (y.get("accession")); + return a.compareTo(b); + }; + Sorter + // set both serializer and natural comparator + .serializer(serializer) + .comparator(comparator) + .input(infile) + .output(outfile) + .sort(); + } + @SneakyThrows - public File getLatestSnapshot(DataType dataType, File outputFile, String query, boolean includeParentAccession) { + public static File getLatestSnapshot(DataType dataType, File outputFile, String query, + boolean includeParentAccession) { String req; if (StringUtils.isNotBlank(query)) { req = String.format(PORTAL_API_URL, dataType.name().toLowerCase(), getFields(dataType.name(), @@ -76,14 +106,30 @@ public File getLatestSnapshot(DataType dataType, File outputFile, String query, try (CloseableHttpResponse response1 = client.execute(httpGet)) { final HttpEntity entity = response1.getEntity(); if (entity != null) { - try (InputStream in = entity.getContent(); - OutputStream out = new FileOutputStream(outputFile)) { + File unsortedFile = new File(outputFile.getAbsolutePath() + ".unsorted"); + long count = 0; + try (BufferedReader in = new BufferedReader(new InputStreamReader(entity.getContent())); + BufferedWriter out = new BufferedWriter(new FileWriter(unsortedFile))) { log.info("writing response"); - IOUtils.copyLarge(in, out); + String line = null; + while ((line = in.readLine()) != null) { + count++; + out.write(line + "\n"); + } + } + log.info("records fetched:{}", count); + final long countFromResults = CountClient.getCountFromResults(dataType.name().toLowerCase(), query); + if (count < countFromResults) { + throw new Exception("Fetched record count " + count + "is lower than index count " + countFromResults); } + log.info("sorting to:{}", outputFile.getAbsolutePath()); + bigSortFile(unsortedFile, outputFile); + log.info("deleting unsorted file:{}", unsortedFile.getAbsolutePath()); + Files.delete(unsortedFile.toPath()); } } - log.info("finished new snapshot pull from ENA"); + log.info("finished new {} snapshot IDs pull from ENA", dataType); return outputFile; } + } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 88c4aa8..7005a9e 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -13,3 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. ##############################################################################/ +spring.main.web-application-type=none diff --git a/src/test/java/uk/ac/ebi/ena/dcap/scl/MainServiceTest.java b/src/test/java/uk/ac/ebi/ena/dcap/scl/MainServiceTest.java new file mode 100644 index 0000000..245eb59 --- /dev/null +++ b/src/test/java/uk/ac/ebi/ena/dcap/scl/MainServiceTest.java @@ -0,0 +1,34 @@ +package uk.ac.ebi.ena.dcap.scl; + +import lombok.SneakyThrows; +import org.junit.jupiter.api.Test; +import uk.ac.ebi.ena.dcap.scl.service.MainService; + +import java.io.File; +import java.nio.file.Files; +import java.util.List; +import java.util.stream.Collectors; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class MainServiceTest { + + + @SneakyThrows + @Test + public void testLivelist() { + File output = new MainService().fetchSnapshotAndCompare("TLS_SET", "tls.tsv", + ".", null, false); + System.out.println(output.getAbsolutePath()); + List lines = Files.lines(output.toPath()).collect(Collectors.toList()); + assertEquals("TAAT01000000\t2023-12-27", lines.get(lines.size() - 1)); + assertEquals("KAAA01000000\t2019-05-10", lines.get(1)); + assertEquals("accession\tlast_updated", lines.get(0)); + + File nou = new File(output.getAbsolutePath().replace(".tsv", "_new-or-updated.tsv")); + System.out.println(nou.getAbsolutePath()); + lines = Files.lines(nou.toPath()).collect(Collectors.toList()); + assertEquals("TAAT01000000", lines.get(lines.size() - 1)); + assertEquals("KAAA01000000", lines.get(0)); + } +} diff --git a/src/test/java/uk/ac/ebi/ena/dcap/scl/SnapshotClientTest.java b/src/test/java/uk/ac/ebi/ena/dcap/scl/SnapshotClientTest.java new file mode 100644 index 0000000..2d407e0 --- /dev/null +++ b/src/test/java/uk/ac/ebi/ena/dcap/scl/SnapshotClientTest.java @@ -0,0 +1,26 @@ +package uk.ac.ebi.ena.dcap.scl; + +import org.junit.jupiter.api.Test; +import uk.ac.ebi.ena.dcap.scl.service.SnapshotClient; + +import java.io.File; +import java.nio.file.Files; +import java.util.List; +import java.util.stream.Collectors; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class SnapshotClientTest { + + @lombok.SneakyThrows + @Test + public void testSort() { + File output = new File("src/test/resources/tls_set_20240201.tsv"); + SnapshotClient.bigSortFile(new File("src/test/resources/tls_set_20240201.tsv.unsorted"), + output); + final List lines = Files.lines(output.toPath()).collect(Collectors.toList()); + assertEquals("TAAT01000000\t2023-12-27", lines.get(lines.size() - 1)); + assertEquals("KAAA01000000\t2019-05-10", lines.get(1)); + assertEquals("accession\tlast_updated", lines.get(0)); + } +} diff --git a/src/test/resources/logback.xml b/src/test/resources/logback.xml new file mode 100644 index 0000000..f7fa265 --- /dev/null +++ b/src/test/resources/logback.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/test/resources/tls_set_20240201.tsv.unsorted b/src/test/resources/tls_set_20240201.tsv.unsorted new file mode 100644 index 0000000..689d910 --- /dev/null +++ b/src/test/resources/tls_set_20240201.tsv.unsorted @@ -0,0 +1,3830 @@ +accession last_updated +KAAB01000000 2019-05-10 +KAAC01000000 2019-05-10 +KAAD01000000 2019-05-10 +KAAE01000000 2019-05-10 +KAAF01000000 2019-05-10 +KAAG01000000 2019-05-10 +KAAH01000000 2019-05-10 +KAAI01000000 2019-05-10 +KAAJ01000000 2019-05-10 +KAAK01000000 2019-05-10 +KAAL01000000 2019-05-10 +KAAM01000000 2019-05-10 +KAAN01000000 2019-05-10 +KAAO01000000 2019-05-10 +KAAP01000000 2019-05-10 +KAAQ01000000 2019-05-10 +TAAT01000000 2023-12-27 +KAAR01000000 2019-05-10 +KAAS01000000 2019-05-10 +KAAT01000000 2019-05-10 +KAAU01000000 2019-05-10 +KAAV01000000 2019-05-10 +KAAW01000000 2019-05-10 +KAAX01000000 2022-09-13 +KAAY01000000 2019-05-10 +KAAZ01000000 2019-05-10 +KABA01000000 2019-05-24 +KABB01000000 2019-05-24 +KABC01000000 2019-05-24 +KABD01000000 2019-05-24 +KABE01000000 2019-05-24 +KABF01000000 2019-05-24 +KABG01000000 2019-05-24 +KABH01000000 2019-05-24 +KABI01000000 2020-02-06 +KABJ01000000 2019-05-24 +KABK01000000 2019-05-24 +KABL01000000 2019-05-24 +KABM01000000 2019-05-24 +KABN01000000 2019-05-24 +KABO01000000 2019-05-24 +KABP01000000 2019-05-24 +KABQ01000000 2019-05-24 +KABR01000000 2019-05-24 +KABS01000000 2019-05-24 +KABT01000000 2019-05-24 +KABU01000000 2019-05-24 +KABV01000000 2019-05-24 +KABW01000000 2019-05-24 +KABX01000000 2019-05-24 +KABY01000000 2019-05-24 +KABZ01000000 2019-05-24 +KACA01000000 2019-05-24 +KACB01000000 2019-05-24 +KACC01000000 2019-05-24 +KACD01000000 2019-05-24 +KACE01000000 2019-05-24 +KACF01000000 2019-05-24 +KACG01000000 2019-05-24 +KACH01000000 2019-05-24 +KACI01000000 2019-05-24 +KACJ01000000 2020-02-28 +KACK01000000 2019-05-24 +KACL01000000 2020-02-28 +KACM01000000 2022-04-05 +KACN01000000 2019-05-24 +KACO01000000 2019-05-24 +KACP01000000 2019-05-24 +KACQ01000000 2020-02-28 +KACR01000000 2019-05-24 +KACS01000000 2019-05-24 +KACT01000000 2019-05-24 +KACU01000000 2020-02-06 +KACV01000000 2019-05-24 +KACW01000000 2019-05-24 +KACX01000000 2019-05-24 +KACY01000000 2019-05-24 +KACZ01000000 2019-05-24 +KADA01000000 2019-05-24 +KADB01000000 2020-03-12 +KADC01000000 2019-05-24 +KADD01000000 2019-05-24 +KADE01000000 2023-05-01 +KADF01000000 2019-05-24 +KADG01000000 2019-05-24 +KADH01000000 2019-05-24 +KADI01000000 2019-05-24 +KADJ01000000 2020-03-03 +KADK01000000 2019-05-24 +KADL01000000 2022-04-05 +KADM01000000 2019-05-24 +KADN01000000 2019-05-24 +KADO01000000 2019-05-24 +KADP01000000 2022-09-13 +KADQ01000000 2019-05-24 +KADR01000000 2019-05-24 +KADS01000000 2019-08-09 +KADT01000000 2019-05-24 +KADU01000000 2019-05-24 +KADV01000000 2019-05-24 +KADW01000000 2019-05-24 +KADX01000000 2019-05-24 +KADY01000000 2020-03-03 +KADZ01000000 2019-05-24 +KAEA01000000 2019-06-17 +KAEB01000000 2019-07-08 +KAEC01000000 2019-06-15 +KAED01000000 2020-03-06 +KAEE01000000 2020-03-03 +KAEF01000000 2019-06-22 +KAEG01000000 2019-06-22 +KAEH01000000 2019-06-14 +KAEI01000000 2019-06-19 +KAEJ01000000 2019-06-14 +KAEK01000000 2019-06-16 +KAEL01000000 2020-02-05 +KAEM01000000 2019-06-16 +KAEN01000000 2019-06-18 +KAEO01000000 2019-06-16 +KAEP01000000 2019-06-23 +KAEQ01000000 2019-06-14 +KAER01000000 2019-06-22 +KAES01000000 2019-06-14 +KAET01000000 2019-06-18 +KAEU01000000 2019-06-15 +KAEV01000000 2021-02-25 +KAEW01000000 2019-05-24 +KAEX01000000 2019-06-15 +KAEY01000000 2019-06-13 +KAEZ01000000 2019-06-15 +KAFA01000000 2019-06-18 +KAFB01000000 2019-06-15 +KAFC01000000 2019-06-18 +KAFD01000000 2019-06-13 +KAFE01000000 2019-06-16 +KAFF01000000 2020-02-05 +KAFG01000000 2019-06-16 +KAFH01000000 2019-06-22 +KAFI01000000 2019-06-15 +KAFJ01000000 2019-06-22 +KAFK01000000 2019-06-15 +KAFL01000000 2019-06-18 +KAFN01000000 2019-06-13 +KAFO01000000 2019-06-23 +KAFP01000000 2019-06-15 +KAFQ01000000 2019-06-26 +KAFR01000000 2019-06-14 +KAFS01000000 2019-06-22 +KAFT01000000 2019-06-17 +KAFU01000000 2019-06-13 +KAFV01000000 2019-06-16 +KAFW01000000 2019-06-15 +KAFX01000000 2019-06-18 +KAFY01000000 2019-06-14 +KAFZ01000000 2019-06-14 +KAGA01000000 2019-06-13 +KAGB01000000 2019-06-16 +KAGC01000000 2019-06-13 +KAGD01000000 2019-06-22 +KAGE01000000 2019-06-14 +KAGF01000000 2019-06-22 +KAGG01000000 2019-06-15 +KAGH01000000 2019-06-18 +KAGI01000000 2019-06-15 +KAGJ01000000 2019-06-13 +KAGK01000000 2019-06-16 +KAGL01000000 2019-06-14 +KAGM01000000 2019-06-16 +KAGN01000000 2019-06-17 +KAGO01000000 2020-03-03 +KAGP01000000 2020-03-12 +KAGQ01000000 2019-06-19 +KAGR01000000 2019-06-15 +KAGS01000000 2020-03-12 +KAGT01000000 2020-03-06 +KAGU01000000 2020-03-03 +KAGV01000000 2020-03-05 +KAGW01000000 2020-03-03 +KAGX01000000 2019-06-14 +KAGY01000000 2020-03-12 +KAGZ01000000 2020-03-06 +KAHA01000000 2019-06-14 +KAHB01000000 2019-06-16 +KAHC01000000 2020-03-12 +KAHD01000000 2019-06-16 +KAHE01000000 2019-06-13 +KAHF01000000 2019-06-14 +KAHG01000000 2019-06-22 +KAHH01000000 2019-06-17 +KAHI01000000 2019-06-13 +KAHJ01000000 2019-06-12 +KAHK01000000 2019-06-16 +KAHL01000000 2019-06-15 +KAHM01000000 2019-06-18 +KAHN01000000 2019-06-13 +KAHO01000000 2019-06-16 +KAHP01000000 2019-06-22 +KAHQ01000000 2019-06-14 +KAHR01000000 2019-06-19 +KAHS01000000 2019-06-15 +KAHT01000000 2019-06-16 +KAHU01000000 2019-06-13 +KAHV01000000 2019-06-16 +KAHW01000000 2020-02-28 +KAHX01000000 2019-06-16 +KAHY01000000 2019-06-13 +KAHZ01000000 2019-06-15 +KAIA01000000 2020-02-28 +KAIB01000000 2020-02-28 +KAIC01000000 2020-03-06 +KAID01000000 2020-03-06 +KAIE01000000 2019-05-24 +KAIF01000000 2019-06-14 +KAIG01000000 2019-06-18 +KAIH01000000 2019-06-15 +KAII01000000 2019-06-19 +KAIJ01000000 2019-06-16 +KAIK01000000 2019-06-12 +KAIL01000000 2019-06-14 +KAIM01000000 2019-06-18 +KAIN01000000 2019-06-22 +KAIO01000000 2019-06-15 +KAIP01000000 2019-06-17 +KAIQ01000000 2019-06-13 +KAIR01000000 2019-06-18 +KAIS01000000 2019-06-14 +KAIT01000000 2019-06-14 +KAIU01000000 2019-06-16 +KAIV01000000 2019-06-13 +KAIW01000000 2019-06-16 +KAIX01000000 2019-06-15 +KAIY01000000 2019-06-18 +KAIZ01000000 2019-06-15 +KAJA01000000 2019-06-13 +KAJB01000000 2019-06-13 +KAJC01000000 2019-06-16 +KAJD01000000 2019-06-14 +KAJE01000000 2019-06-18 +KAJF01000000 2019-06-18 +KAJG01000000 2019-06-15 +KAJH01000000 2019-06-12 +KAJI01000000 2019-06-16 +KAJJ01000000 2019-05-24 +KAJK01000000 2019-06-15 +KAJL01000000 2019-06-13 +KAJM01000000 2019-06-16 +KAJN01000000 2019-06-16 +KAJO01000000 2019-06-13 +KAJP01000000 2019-06-22 +KAJQ01000000 2019-06-13 +KAJR01000000 2019-06-14 +KAJS01000000 2019-06-22 +KAJT01000000 2019-06-15 +KAJU01000000 2019-06-18 +KAJV01000000 2019-06-13 +KAJW01000000 2019-06-16 +KAJX01000000 2019-06-13 +KAJY01000000 2019-06-16 +KAJZ01000000 2019-06-12 +KAKA01000000 2019-06-13 +KAKB01000000 2019-06-13 +KAKC01000000 2019-06-16 +KAKD01000000 2019-06-15 +KAKE01000000 2019-06-22 +KAKF01000000 2019-06-13 +KAKG01000000 2019-06-17 +KAKH01000000 2019-06-12 +KAKI01000000 2019-06-16 +KAKJ01000000 2019-06-16 +KAKK01000000 2019-06-15 +KAKL01000000 2019-06-19 +KAKM01000000 2019-06-14 +KAKN01000000 2019-06-15 +KAKO01000000 2019-06-22 +KAKP01000000 2019-06-15 +KAKQ01000000 2019-06-22 +KAKR01000000 2019-06-13 +KAKS01000000 2019-06-17 +KAKT01000000 2019-06-14 +KAKU01000000 2019-06-19 +KAKV01000000 2019-06-19 +KAKW01000000 2019-06-15 +KAKX01000000 2020-02-28 +KAKY01000000 2019-06-14 +KAKZ01000000 2019-06-14 +KALA01000000 2019-06-15 +KALB01000000 2019-06-13 +KALC01000000 2019-06-17 +KALD01000000 2019-06-19 +KALE01000000 2019-06-16 +KALF01000000 2019-06-14 +KALG01000000 2019-06-23 +KALH01000000 2019-06-13 +KALI01000000 2019-06-17 +KALJ01000000 2019-06-16 +KALK01000000 2019-06-13 +KALL01000000 2019-06-15 +KALM01000000 2023-04-17 +KALN01000000 2019-06-18 +KALO01000000 2019-06-16 +KALP01000000 2019-06-18 +KALQ01000000 2019-06-15 +KALR01000000 2019-06-14 +KALS01000000 2019-06-16 +KALT01000000 2019-06-14 +KALU01000000 2019-06-16 +KALV01000000 2019-06-15 +KALW01000000 2019-06-19 +KALX01000000 2019-06-14 +KALY01000000 2019-06-23 +KALZ01000000 2019-06-23 +KAMA01000000 2020-02-28 +KAMB01000000 2019-06-14 +KAMC01000000 2019-06-18 +KAMD01000000 2019-06-13 +KAME01000000 2019-06-16 +KAMF01000000 2019-06-14 +KAMG01000000 2024-01-16 +KAMH01000000 2019-06-22 +KAMI01000000 2019-06-16 +KAMJ01000000 2019-06-19 +KAMK01000000 2019-06-15 +KAML01000000 2019-06-18 +KAMM01000000 2019-06-15 +KAMN01000000 2019-06-16 +KAMO01000000 2019-06-14 +KAMP01000000 2019-06-15 +KAMQ01000000 2019-06-13 +KAMR01000000 2019-06-12 +KAMS01000000 2019-06-16 +KAMT01000000 2019-06-13 +KAMU01000000 2019-06-16 +KAMV01000000 2019-06-22 +KAMW01000000 2022-08-05 +KAMX01000000 2019-06-13 +KAMY01000000 2019-06-15 +KAMZ01000000 2019-06-16 +KANA01000000 2019-06-16 +KANB01000000 2019-06-12 +KANC01000000 2019-06-16 +KAND01000000 2019-06-15 +KANE01000000 2019-06-14 +KANF01000000 2019-06-16 +KANG01000000 2019-06-13 +KANH01000000 2019-06-15 +KANI01000000 2019-06-18 +KANJ01000000 2019-06-15 +KANK01000000 2019-06-16 +KANL01000000 2019-06-13 +KANM01000000 2019-06-16 +KANN01000000 2019-06-18 +KANO01000000 2019-06-14 +KANP01000000 2019-06-18 +KANQ01000000 2019-06-15 +KANR01000000 2019-06-16 +KANS01000000 2019-06-14 +KANT01000000 2019-06-16 +KANU01000000 2019-06-23 +KANV01000000 2019-06-16 +KANW01000000 2019-06-18 +KANX01000000 2019-06-14 +KANY01000000 2019-06-16 +KANZ01000000 2019-06-12 +KAOA01000000 2019-06-12 +KAOB01000000 2019-06-22 +KAOC01000000 2019-06-13 +KAOD01000000 2019-06-19 +KAOE01000000 2019-06-14 +KAOF01000000 2023-06-19 +KAOG01000000 2019-06-16 +KAOH01000000 2020-02-28 +KAOI01000000 2019-06-17 +KAOJ01000000 2020-02-28 +KAOK01000000 2022-08-05 +KAOL01000000 2019-06-15 +KAOM01000000 2019-06-18 +KAON01000000 2019-06-15 +KAOO01000000 2019-06-18 +KAOP01000000 2019-06-14 +KAOQ01000000 2019-06-16 +KAOR01000000 2019-06-14 +KAOS01000000 2020-02-28 +KAOT01000000 2019-06-13 +KAOU01000000 2019-06-15 +KAOV01000000 2019-06-22 +KAOW01000000 2019-06-14 +KAOX01000000 2019-06-14 +KAOY01000000 2019-06-22 +KAOZ01000000 2019-06-15 +KAPA01000000 2019-06-12 +KAPB01000000 2019-06-15 +KAPC01000000 2019-06-16 +KAPD01000000 2019-06-14 +KAPE01000000 2023-05-03 +KAPF01000000 2023-05-03 +KAPG01000000 2020-02-28 +KAPH01000000 2019-06-18 +KAPI01000000 2019-06-16 +KAPJ01000000 2019-06-19 +KAPK01000000 2019-06-14 +KAPL01000000 2020-02-28 +KAPM01000000 2019-06-13 +KAPN01000000 2019-06-17 +KAPO01000000 2020-03-17 +KAPP01000000 2019-06-15 +KAPQ01000000 2019-06-23 +KAPR01000000 2020-02-28 +KAPS01000000 2019-06-18 +KAPT01000000 2019-06-13 +KAPU01000000 2019-06-16 +KAPV01000000 2019-06-18 +KAPW01000000 2019-06-14 +KAPX01000000 2019-06-18 +KAPY01000000 2019-06-15 +KAPZ01000000 2019-06-23 +KAQA01000000 2019-06-14 +KAQB01000000 2019-06-23 +KAQC01000000 2019-06-22 +KAQD01000000 2019-06-15 +KAQE01000000 2019-06-13 +KAQF01000000 2020-02-28 +KAQG01000000 2019-06-22 +KAQH01000000 2019-06-22 +KAQI01000000 2019-06-16 +KAQJ01000000 2019-06-13 +KAQK01000000 2019-06-15 +KAQL01000000 2019-06-23 +KAQM01000000 2019-06-26 +KAQN01000000 2019-06-14 +KAQO01000000 2019-06-16 +KAQP01000000 2019-06-16 +KAQQ01000000 2019-06-22 +KAQR01000000 2019-06-16 +KAQS01000000 2019-06-22 +KAQT01000000 2019-06-22 +KAQU01000000 2019-06-13 +KAQV01000000 2019-06-23 +KAQW01000000 2019-06-21 +KAQX01000000 2019-06-18 +KAQY01000000 2019-06-16 +KAQZ01000000 2019-06-17 +KARA01000000 2019-06-18 +KARB01000000 2019-06-16 +KARC01000000 2019-06-16 +KARD01000000 2019-06-13 +KARE01000000 2019-06-16 +KARF01000000 2019-06-14 +KARG01000000 2019-06-14 +KARH01000000 2019-06-22 +KARI01000000 2019-06-15 +KARJ01000000 2019-06-19 +KARK01000000 2019-06-18 +KARL01000000 2019-06-15 +KARM01000000 2019-06-17 +KARN01000000 2019-06-14 +KARO01000000 2019-06-14 +KARP01000000 2019-06-22 +KARQ01000000 2019-06-13 +KARR01000000 2019-06-16 +KARS01000000 2019-06-15 +KART01000000 2019-06-13 +KARU01000000 2019-06-14 +KARV01000000 2019-06-19 +KARW01000000 2019-06-22 +KARX01000000 2019-06-14 +KARY01000000 2019-06-16 +KARZ01000000 2019-06-14 +KASA01000000 2019-06-16 +KASB01000000 2019-06-15 +KASC01000000 2019-06-17 +KASD01000000 2019-06-13 +KASE01000000 2019-06-13 +KASF01000000 2019-06-17 +KASG01000000 2019-06-18 +KASH01000000 2019-06-15 +KASI01000000 2019-06-15 +KASJ01000000 2019-06-18 +KASK01000000 2019-06-15 +KASL01000000 2019-06-16 +KASM01000000 2019-06-14 +KASN01000000 2019-06-23 +KASO01000000 2019-06-16 +KASP01000000 2022-08-05 +KASQ01000000 2019-06-18 +KASR01000000 2019-06-12 +KASS01000000 2019-06-18 +KAST01000000 2019-06-15 +KASU01000000 2019-06-14 +KASV01000000 2019-06-14 +KASW01000000 2020-02-28 +KASX01000000 2020-03-05 +KASY01000000 2020-03-12 +KASZ01000000 2019-06-18 +KATA01000000 2019-06-15 +KATB01000000 2019-06-18 +KATC01000000 2021-12-25 +KATD01000000 2022-08-05 +KATE01000000 2020-02-28 +KATF01000000 2022-08-05 +KATG01000000 2022-08-05 +KATH01000000 2019-06-16 +KATI01000000 2019-06-18 +KATJ01000000 2019-06-14 +KATK01000000 2022-08-05 +KATL01000000 2022-08-05 +KATM01000000 2020-03-17 +KATN01000000 2020-02-28 +KATO01000000 2019-06-13 +KATP01000000 2019-06-16 +KATQ01000000 2022-08-05 +KATR01000000 2022-08-05 +KATS01000000 2022-08-05 +KATT01000000 2019-06-18 +KATU01000000 2019-06-15 +KATV01000000 2020-02-28 +KATW01000000 2019-06-16 +KATX01000000 2019-06-14 +KATY01000000 2019-06-22 +KATZ01000000 2019-06-15 +KAUA01000000 2022-08-05 +KAUB01000000 2019-06-14 +KAUC01000000 2019-06-19 +KAUD01000000 2019-06-15 +KAUE01000000 2019-06-16 +KAUF01000000 2022-08-05 +KAUG01000000 2020-02-28 +KAUH01000000 2019-06-23 +KAUI01000000 2022-08-05 +KAUJ01000000 2022-08-05 +KAUK01000000 2019-06-13 +KAUL01000000 2020-02-28 +KAUM01000000 2020-02-05 +KAUN01000000 2020-02-06 +KAUO01000000 2020-02-05 +KAUP01000000 2019-06-16 +KAUQ01000000 2019-06-12 +KAUR01000000 2019-06-19 +KAUS01000000 2019-06-15 +KAUT01000000 2019-06-18 +KAUU01000000 2019-06-17 +KAUV01000000 2019-06-13 +KAUW01000000 2020-02-07 +KAUX01000000 2019-06-13 +KAUY01000000 2019-06-19 +KAUZ01000000 2019-06-14 +KAVA01000000 2019-06-15 +KAVB01000000 2020-02-05 +KAVC01000000 2019-06-15 +KAVD01000000 2019-06-18 +KAVE01000000 2019-06-16 +KAVF01000000 2019-06-12 +KAVG01000000 2019-06-17 +KAVH01000000 2019-06-13 +KAVI01000000 2019-06-22 +KAVJ01000000 2019-06-15 +KAVK01000000 2019-06-19 +KAVL01000000 2019-06-14 +KAVM01000000 2019-06-22 +KAVN01000000 2019-06-16 +KAVO01000000 2019-06-13 +KAVP01000000 2022-03-14 +KAVQ01000000 2019-06-16 +KAVR01000000 2019-06-18 +KAVS01000000 2019-06-15 +KAVT01000000 2019-06-18 +KAVU01000000 2019-06-16 +KAVV01000000 2019-06-22 +KAVW01000000 2022-08-05 +KAVX01000000 2019-06-13 +KAVY01000000 2019-06-18 +KAVZ01000000 2019-06-13 +KAWA01000000 2019-06-15 +KAWB01000000 2019-06-18 +KAWC01000000 2019-06-13 +KAWD01000000 2019-06-16 +KAWE01000000 2019-06-13 +KAWF01000000 2019-06-16 +KAWG01000000 2019-06-14 +KAWH01000000 2019-06-16 +KAWI01000000 2019-06-18 +KAWJ01000000 2019-06-14 +KAWK01000000 2019-06-16 +KAWL01000000 2019-06-15 +KAWM01000000 2019-06-16 +KAWN01000000 2020-02-06 +KAWO01000000 2019-06-18 +KAWP01000000 2022-03-14 +KAWQ01000000 2022-03-14 +KAWR01000000 2019-06-18 +KAWS01000000 2020-03-06 +KAWT01000000 2019-06-18 +KAWU01000000 2020-02-28 +KAWV01000000 2020-02-28 +KAWW01000000 2020-03-03 +KAWX01000000 2020-03-06 +KAWY01000000 2019-06-18 +KAWZ01000000 2020-03-03 +KAXA01000000 2019-06-15 +KAXB01000000 2019-06-22 +KAXC01000000 2019-06-16 +KAXD01000000 2019-06-13 +KAXE01000000 2019-06-16 +KAXF01000000 2019-06-12 +KAXG01000000 2022-08-05 +KAXH01000000 2019-06-14 +KAXI01000000 2019-06-17 +KAXJ01000000 2020-03-17 +KAXK01000000 2019-06-12 +KAXL01000000 2019-06-17 +KAXM01000000 2019-06-19 +KAXN01000000 2019-06-15 +KAXO01000000 2019-06-13 +KAXP01000000 2021-06-02 +KAXQ01000000 2019-06-13 +KAXR01000000 2019-06-17 +KAXS01000000 2019-06-17 +KAXT01000000 2022-08-05 +KAXU01000000 2019-06-14 +KAXV01000000 2019-06-22 +KAXW01000000 2019-06-18 +KAXX01000000 2019-06-12 +KAXY01000000 2019-06-17 +KAXZ01000000 2019-06-13 +KAYA01000000 2022-08-05 +KAYB01000000 2019-06-17 +KAYC01000000 2020-03-03 +KAYD01000000 2019-06-16 +KAYE01000000 2019-06-16 +KAYF01000000 2023-04-24 +KAYG01000000 2019-06-15 +KAYH01000000 2019-06-22 +KAYI01000000 2019-06-22 +KAYJ01000000 2019-06-13 +KAYK01000000 2019-06-16 +KAYL01000000 2020-02-28 +KAYM01000000 2020-02-28 +KAYN01000000 2019-06-16 +KAYO01000000 2019-06-18 +KAYP01000000 2022-08-05 +KAYQ01000000 2019-06-15 +KAYR01000000 2019-06-19 +KAYS01000000 2019-06-12 +KAYT01000000 2019-06-16 +KAYU01000000 2019-06-16 +KAYV01000000 2019-06-12 +KAYW01000000 2023-07-20 +KAYX01000000 2019-06-13 +KAYY01000000 2019-06-19 +KAYZ01000000 2019-06-14 +KAZA01000000 2019-06-15 +KAZB01000000 2019-06-18 +KAZC01000000 2019-06-13 +KAZD01000000 2019-06-17 +KAZE01000000 2019-06-14 +KAZF01000000 2019-06-23 +KAZG01000000 2019-06-18 +KAZH01000000 2019-06-14 +KAZI01000000 2019-06-12 +KAZJ01000000 2019-06-15 +KAZK01000000 2019-06-16 +KAZL01000000 2019-06-13 +KAZM01000000 2019-06-14 +KAZN01000000 2019-06-18 +KAZO01000000 2019-06-22 +KAZP01000000 2019-06-14 +KAZQ01000000 2019-06-16 +KAZR01000000 2019-06-14 +KAZS01000000 2019-06-18 +KAZT01000000 2022-07-10 +KAZU01000000 2019-06-19 +KAZV01000000 2019-06-15 +KAZW01000000 2019-06-13 +KAZX01000000 2019-06-16 +KAZY01000000 2019-06-14 +KAZZ01000000 2019-06-16 +KBAA01000000 2019-06-19 +KBAB01000000 2019-06-22 +KBAC01000000 2019-06-14 +KBAD01000000 2019-06-13 +KBAE01000000 2019-06-17 +KBAF01000000 2019-06-18 +KBAG01000000 2019-06-15 +KBAH01000000 2022-08-05 +KBAI01000000 2019-06-15 +KBAJ01000000 2019-06-16 +KBAK01000000 2022-08-05 +KBAL01000000 2019-06-16 +KBAM01000000 2022-08-05 +KBAN01000000 2019-06-16 +KBAO01000000 2019-06-13 +KBAP01000000 2019-06-14 +KBAQ01000000 2019-06-13 +KBAR01000000 2022-08-05 +KBAS01000000 2022-08-05 +KBAT01000000 2022-08-05 +KBAU01000000 2022-08-05 +KBAV01000000 2019-06-17 +KBAW01000000 2019-06-13 +KBAX01000000 2020-03-17 +KBAY01000000 2019-06-16 +KBAZ01000000 2022-08-05 +KBBA01000000 2022-08-05 +KBBB01000000 2020-03-03 +KBBC01000000 2019-06-15 +KBBD01000000 2019-06-15 +KBBE01000000 2019-06-22 +KBBF01000000 2019-06-14 +KBBG01000000 2019-06-14 +KBBH01000000 2019-06-16 +KBBI01000000 2019-06-13 +KBBJ01000000 2019-06-21 +KBBK01000000 2019-06-22 +KBBL01000000 2019-06-18 +KBBM01000000 2019-06-15 +KBBN01000000 2019-06-22 +KBBO01000000 2019-06-14 +KBBP01000000 2020-03-17 +KBBQ01000000 2019-06-16 +KBBR01000000 2019-06-13 +KBBS01000000 2019-06-18 +KBBT01000000 2019-06-17 +KBBU01000000 2019-06-22 +KBBV01000000 2019-06-16 +KBBW01000000 2019-06-13 +KBBX01000000 2019-06-18 +KBBY01000000 2019-06-15 +KBBZ01000000 2019-06-22 +KBCA01000000 2019-06-13 +KBCB01000000 2019-06-15 +KBCC01000000 2019-06-18 +KBCD01000000 2019-06-15 +KBCE01000000 2019-06-13 +KBCF01000000 2019-06-16 +KBCG01000000 2020-02-28 +KBCH01000000 2019-06-14 +KBCI01000000 2019-06-16 +KBCJ01000000 2019-06-22 +KBCK01000000 2019-06-15 +KBCL01000000 2019-06-19 +KBCM01000000 2020-02-28 +KBCN01000000 2019-06-13 +KBCO01000000 2019-06-16 +KBCP01000000 2019-06-14 +KBCQ01000000 2019-06-22 +KBCR01000000 2019-06-16 +KBCS01000000 2019-06-13 +KBCT01000000 2019-06-15 +KBCU01000000 2019-06-19 +KBCV01000000 2019-06-14 +KBCW01000000 2019-06-22 +KBCX01000000 2019-06-14 +KBCY01000000 2019-06-16 +KBCZ01000000 2019-06-14 +KBDA01000000 2019-06-23 +KBDB01000000 2019-06-13 +KBDC01000000 2019-06-19 +KBDD01000000 2019-06-13 +KBDE01000000 2019-06-16 +KBDF01000000 2019-06-13 +KBDG01000000 2019-06-16 +KBDH01000000 2019-06-16 +KBDI01000000 2019-06-16 +KBDJ01000000 2019-06-16 +KBDK01000000 2019-06-13 +KBDL01000000 2019-06-17 +KBDM01000000 2019-06-22 +KBDN01000000 2019-06-16 +KBDO01000000 2019-06-13 +KBDP01000000 2019-06-13 +KBDQ01000000 2019-06-16 +KBDR01000000 2019-06-15 +KBDS01000000 2019-06-16 +KBDT01000000 2019-06-18 +KBDU01000000 2019-06-15 +KBDV01000000 2019-06-18 +KBDW01000000 2019-06-14 +KBDX01000000 2019-06-16 +KBDY01000000 2019-06-12 +KBDZ01000000 2019-06-16 +KBEA01000000 2019-06-18 +KBEB01000000 2019-06-14 +KBEC01000000 2019-06-17 +KBED01000000 2019-06-13 +KBEE01000000 2019-06-16 +KBEF01000000 2019-06-13 +KBEG01000000 2019-06-16 +KBEH01000000 2019-06-22 +KBEI01000000 2019-06-15 +KBEJ01000000 2019-06-16 +KBEK01000000 2019-06-14 +KBEL01000000 2019-06-16 +KBEM01000000 2019-06-13 +KBEN01000000 2019-06-13 +KBEO01000000 2020-03-06 +KBEP01000000 2020-03-03 +KBEQ01000000 2019-06-17 +KBER01000000 2019-06-15 +KBES01000000 2020-03-05 +KBET01000000 2020-03-06 +KBEU01000000 2019-06-19 +KBEV01000000 2019-06-17 +KBEW01000000 2019-06-14 +KBEX01000000 2020-03-03 +KBEY01000000 2020-03-12 +KBEZ01000000 2019-06-19 +KBFA01000000 2020-03-06 +KBFB01000000 2020-03-12 +KBFC01000000 2020-03-12 +KBFD01000000 2020-03-03 +KBFE01000000 2020-03-17 +KBFF01000000 2020-03-12 +KBFG01000000 2020-03-06 +KBFH01000000 2020-03-06 +KBFI01000000 2020-02-28 +KBFJ01000000 2020-03-17 +KBFK01000000 2019-06-14 +KBFL01000000 2019-06-14 +KBFM01000000 2019-06-16 +KBFN01000000 2019-06-12 +KBFO01000000 2019-06-19 +KBFP01000000 2019-06-16 +KBFQ01000000 2019-06-13 +KBFR01000000 2019-06-16 +KBFS01000000 2019-06-14 +KBFT01000000 2019-06-18 +KBFU01000000 2019-06-13 +KBFV01000000 2019-06-16 +KBFW01000000 2019-06-14 +KBFX01000000 2019-06-22 +KBFY01000000 2019-06-16 +KBFZ01000000 2019-06-19 +KBGA01000000 2019-06-13 +KBGB01000000 2019-06-13 +KBGC01000000 2019-06-16 +KBGD01000000 2019-06-15 +KBGE01000000 2019-06-16 +KBGF01000000 2019-06-18 +KBGG01000000 2019-06-15 +KBGH01000000 2019-06-18 +KBGI01000000 2019-06-14 +KBGJ01000000 2019-06-16 +KBGK01000000 2019-06-13 +KBGL01000000 2019-06-16 +KBGM01000000 2019-06-15 +KBGN01000000 2019-06-15 +KBGO01000000 2019-06-22 +KBGP01000000 2019-06-17 +KBGQ01000000 2019-06-13 +KBGR01000000 2019-06-16 +KBGS01000000 2019-06-19 +KBGT01000000 2019-06-15 +KBGU01000000 2019-06-18 +KBGV01000000 2019-06-18 +KBGW01000000 2019-06-18 +KBGX01000000 2019-06-15 +KBGY01000000 2019-06-13 +KBGZ01000000 2019-06-13 +KBHA01000000 2019-06-12 +KBHB01000000 2019-06-18 +KBHC01000000 2019-06-13 +KBHD01000000 2019-06-16 +KBHE01000000 2019-06-22 +KBHF01000000 2019-06-16 +KBHG01000000 2019-06-18 +KBHH01000000 2019-06-15 +KBHI01000000 2019-06-16 +KBHJ01000000 2019-06-13 +KBHK01000000 2019-06-16 +KBHL01000000 2019-06-13 +KBHM01000000 2019-06-14 +KBHN01000000 2019-06-18 +KBHO01000000 2019-06-15 +KBHP01000000 2019-06-16 +KBHQ01000000 2019-06-13 +KBHR01000000 2019-06-16 +KBHS01000000 2019-06-13 +KBHT01000000 2019-06-17 +KBHU01000000 2019-06-23 +KBHV01000000 2019-06-15 +KBHW01000000 2019-06-18 +KBHX01000000 2019-06-13 +KBHY01000000 2019-06-16 +KBHZ01000000 2019-06-14 +KBIA01000000 2019-06-14 +KBIB01000000 2019-06-18 +KBIC01000000 2019-06-15 +KBID01000000 2019-06-19 +KBIE01000000 2019-06-16 +KBIF01000000 2019-06-13 +KBIG01000000 2019-06-17 +KBIH01000000 2019-06-14 +KBII01000000 2019-06-16 +KBIJ01000000 2019-06-12 +KBIK01000000 2019-06-15 +KBIL01000000 2019-06-18 +KBIM01000000 2019-06-14 +KBIN01000000 2019-06-22 +KBIO01000000 2019-06-14 +KBIP01000000 2019-06-16 +KBIQ01000000 2019-06-13 +KBIR01000000 2019-06-16 +KBIS01000000 2019-06-18 +KBIT01000000 2019-06-15 +KBIU01000000 2019-06-22 +KBIV01000000 2019-06-14 +KBIW01000000 2019-06-16 +KBIX01000000 2019-06-13 +KBIY01000000 2019-06-15 +KBIZ01000000 2019-06-13 +KBJA01000000 2019-06-16 +KBJB01000000 2019-06-13 +KBJC01000000 2019-06-16 +KBJD01000000 2019-06-23 +KBJE01000000 2019-06-15 +KBJF01000000 2019-06-18 +KBJG01000000 2019-06-18 +KBJH01000000 2019-06-13 +KBJI01000000 2019-06-16 +KBJJ01000000 2019-06-13 +KBJK01000000 2019-06-14 +KBJL01000000 2019-06-16 +KBJM01000000 2019-06-18 +KBJN01000000 2019-06-15 +KBJO01000000 2019-06-15 +KBJP01000000 2019-06-18 +KBJQ01000000 2019-06-13 +KBJR01000000 2019-06-16 +KBJS01000000 2019-06-16 +KBJT01000000 2019-06-13 +KBJU01000000 2019-06-14 +KBJV01000000 2019-06-22 +KBJW01000000 2019-06-18 +KBJX01000000 2019-06-14 +KBJY01000000 2019-06-16 +KBJZ01000000 2019-06-15 +KBKA01000000 2019-06-22 +KBKB01000000 2019-06-14 +KBKC01000000 2019-06-15 +KBKD01000000 2019-06-18 +KBKE01000000 2019-06-16 +KBKF01000000 2019-06-13 +KBKG01000000 2019-06-14 +KBKH01000000 2019-06-16 +KBKI01000000 2019-06-14 +KBKJ01000000 2019-06-16 +KBKK01000000 2019-06-19 +KBKL01000000 2019-06-16 +KBKM01000000 2019-06-17 +KBKN01000000 2019-06-14 +KBKO01000000 2019-06-16 +KBKP01000000 2019-06-14 +KBKQ01000000 2019-06-16 +KBKR01000000 2019-06-13 +KBKS01000000 2019-06-13 +KBKT01000000 2019-06-16 +KBKU01000000 2019-06-13 +KBKV01000000 2019-06-16 +KBKW01000000 2019-06-14 +KBKX01000000 2019-06-22 +KBKY01000000 2019-06-16 +KBKZ01000000 2019-06-19 +KBLA01000000 2019-06-16 +KBLB01000000 2019-06-18 +KBLC01000000 2019-06-13 +KBLD01000000 2019-06-15 +KBLE01000000 2019-06-13 +KBLF01000000 2019-06-16 +KBLG01000000 2019-06-22 +KBLH01000000 2019-06-14 +KBLI01000000 2019-06-19 +KBLJ01000000 2019-06-14 +KBLK01000000 2019-06-15 +KBLL01000000 2019-06-18 +KBLM01000000 2019-06-16 +KBLN01000000 2019-06-13 +KBLO01000000 2019-06-13 +KBLP01000000 2019-06-16 +KBLQ01000000 2019-06-14 +KBLR01000000 2019-06-22 +KBLS01000000 2019-06-22 +KBLT01000000 2019-06-15 +KBLU01000000 2019-06-18 +KBLV01000000 2019-06-16 +KBLW01000000 2019-06-16 +KBLX01000000 2019-06-13 +KBLY01000000 2019-06-16 +KBLZ01000000 2019-06-14 +KBMA01000000 2019-06-16 +KBMB01000000 2019-06-13 +KBMC01000000 2019-06-13 +KBMD01000000 2019-06-16 +KBME01000000 2019-06-22 +KBMF01000000 2019-06-15 +KBMG01000000 2019-06-14 +KBMH01000000 2019-06-18 +KBMI01000000 2019-06-15 +KBMJ01000000 2019-06-16 +KBMK01000000 2019-06-16 +KBML01000000 2019-06-13 +KBMM01000000 2019-06-15 +KBMN01000000 2019-06-18 +KBMO01000000 2019-06-15 +KBMP01000000 2019-06-22 +KBMQ01000000 2019-06-14 +KBMR01000000 2019-06-17 +KBMS01000000 2019-06-16 +KBMT01000000 2019-06-13 +KBMU01000000 2019-06-16 +KBMV01000000 2019-06-12 +KBMW01000000 2019-06-18 +KBMX01000000 2019-06-15 +KBMY01000000 2019-06-16 +KBMZ01000000 2019-06-13 +KBNA01000000 2019-06-16 +KBNB01000000 2019-06-13 +KBNC01000000 2019-06-16 +KBND01000000 2019-06-13 +KBNE01000000 2019-06-17 +KBNF01000000 2019-06-23 +KBNG01000000 2019-06-14 +KBNH01000000 2019-06-22 +KBNI01000000 2019-06-15 +KBNJ01000000 2019-06-16 +KBNK01000000 2019-06-13 +KBNL01000000 2019-06-16 +KBNM01000000 2019-06-13 +KBNN01000000 2019-06-14 +KBNO01000000 2019-06-22 +KBNP01000000 2019-06-15 +KBNQ01000000 2023-07-19 +KBNR01000000 2023-07-19 +KBNS01000000 2019-06-17 +KBNT01000000 2019-06-13 +KBNU01000000 2023-07-19 +KBNV01000000 2019-06-23 +KBNW01000000 2023-07-19 +KBNX01000000 2023-07-20 +KBNY01000000 2019-06-13 +KBNZ01000000 2019-06-16 +KBOA01000000 2019-06-15 +KBOB01000000 2019-06-22 +KBOC01000000 2019-06-15 +KBOE01000000 2019-06-16 +KBOF01000000 2019-06-12 +KBOG01000000 2019-06-16 +KBOH01000000 2019-06-14 +KBOI01000000 2019-06-18 +KBOJ01000000 2019-06-15 +KBOK01000000 2019-06-13 +KBOL01000000 2019-06-15 +KBOM01000000 2019-06-13 +KBOO01000000 2019-06-15 +KBOP01000000 2019-06-19 +KBOQ01000000 2019-06-14 +KBOR01000000 2020-03-06 +KBOS01000000 2020-03-03 +KBOT01000000 2019-06-13 +KBOU01000000 2019-06-19 +KBOV01000000 2020-03-06 +KBOW01000000 2020-03-06 +KBOX01000000 2020-03-03 +KBOY01000000 2019-06-17 +KBOZ01000000 2019-06-13 +KBPA01000000 2020-03-12 +KBPB01000000 2020-03-12 +KBPC01000000 2020-03-05 +KBPD01000000 2020-02-28 +KBPE01000000 2019-06-19 +KBPF01000000 2019-06-15 +KBPG01000000 2019-06-18 +KBPH01000000 2019-06-14 +KBPI01000000 2019-06-22 +KBPJ01000000 2019-06-14 +KBPK01000000 2019-06-17 +KBPL01000000 2019-06-13 +KBPM01000000 2019-06-16 +KBPN01000000 2019-06-18 +KBPO01000000 2019-06-14 +KBPP01000000 2019-06-17 +KBPQ01000000 2019-06-13 +KBPR01000000 2019-06-13 +KBPS01000000 2019-06-16 +KBPT01000000 2019-06-22 +KBPU01000000 2019-06-14 +KBPV01000000 2019-06-16 +KBPW01000000 2019-06-22 +KBPX01000000 2019-06-14 +KBPY01000000 2019-06-18 +KBPZ01000000 2019-06-16 +KBQA01000000 2019-06-13 +KBQB01000000 2019-06-14 +KBQC01000000 2019-06-23 +KBQD01000000 2019-06-15 +KBQE01000000 2019-06-19 +KBQF01000000 2019-06-13 +KBQG01000000 2019-06-16 +KBQH01000000 2019-06-13 +KBQI01000000 2019-06-17 +KBQJ01000000 2019-06-22 +KBQK01000000 2019-06-14 +KBQL01000000 2019-06-18 +KBQM01000000 2019-06-15 +KBQN01000000 2019-06-16 +KBQO01000000 2019-06-22 +KBQP01000000 2019-06-14 +KBQQ01000000 2019-06-16 +KBQR01000000 2019-06-13 +KBQS01000000 2019-06-15 +KBQT01000000 2019-06-13 +KBQU01000000 2019-06-14 +KBQV01000000 2019-06-18 +KBQW01000000 2019-06-14 +KBQX01000000 2019-06-22 +KBQY01000000 2019-06-13 +KBQZ01000000 2019-06-16 +KBRA01000000 2019-06-14 +KBRB01000000 2019-06-13 +KBRC01000000 2019-06-15 +KBRD01000000 2019-06-22 +KBRE01000000 2019-06-16 +KBRF01000000 2019-06-14 +KBRG01000000 2019-06-13 +KBRH01000000 2019-06-16 +KBRI01000000 2019-06-15 +KBRJ01000000 2019-06-18 +KBRK01000000 2019-06-14 +KBRL01000000 2019-06-16 +KBRM01000000 2019-06-12 +KBRN01000000 2019-06-16 +KBRO01000000 2019-06-18 +KBRP01000000 2019-06-13 +KBRQ01000000 2020-03-06 +KBRR01000000 2020-03-03 +KBRS01000000 2020-03-03 +KBRT01000000 2020-03-12 +KBRU01000000 2020-02-06 +KBRV01000000 2020-02-05 +KBRW01000000 2020-02-07 +KBRX01000000 2019-06-16 +KBRY01000000 2019-06-22 +KBRZ01000000 2019-07-08 +KBSA01000000 2019-06-16 +KBSB01000000 2019-06-14 +KBSC01000000 2019-06-13 +KBSD01000000 2019-06-15 +KBSE01000000 2019-06-13 +KBSF01000000 2019-06-16 +KBSG01000000 2019-06-14 +KBSH01000000 2019-06-18 +KBSI01000000 2019-06-15 +KBSJ01000000 2019-06-19 +KBSK01000000 2019-06-15 +KBSL01000000 2019-06-18 +KBSM01000000 2019-06-16 +KBSN01000000 2019-06-12 +KBSO01000000 2019-06-22 +KBSP01000000 2019-06-14 +KBSQ01000000 2019-06-18 +KBSR01000000 2019-06-14 +KBSS01000000 2019-06-17 +KBST01000000 2019-06-12 +KBSU01000000 2019-06-16 +KBSV01000000 2019-06-15 +KBSW01000000 2019-06-22 +KBSX01000000 2019-06-14 +KBSY01000000 2019-06-13 +KBSZ01000000 2019-06-16 +KBTA01000000 2019-06-16 +KBTB01000000 2019-06-19 +KBTC01000000 2019-06-13 +KBTD01000000 2019-06-16 +KBTE01000000 2019-06-14 +KBTF01000000 2019-06-22 +KBTG01000000 2019-06-18 +KBTH01000000 2019-06-15 +KBTI01000000 2019-06-12 +KBTJ01000000 2019-06-16 +KBTK01000000 2019-06-16 +KBTL01000000 2019-06-14 +KBTM01000000 2019-06-22 +KBTN01000000 2019-06-14 +KBTO01000000 2019-06-15 +KBTP01000000 2019-06-22 +KBTQ01000000 2019-06-23 +KBTR01000000 2019-06-14 +KBTS01000000 2019-06-14 +KBTT01000000 2019-06-16 +KBTU01000000 2023-07-20 +KBTV01000000 2020-03-12 +KBTX01000000 2019-06-15 +KBTY01000000 2019-06-23 +KBTZ01000000 2020-02-07 +KBUA01000000 2020-03-06 +KBUB01000000 2020-03-12 +KBUC01000000 2020-03-12 +KBUD01000000 2020-03-12 +KBUE01000000 2020-03-03 +KBUF01000000 2020-03-12 +KBUG01000000 2020-03-12 +KBUH01000000 2020-03-12 +KBUI01000000 2020-03-06 +KBUJ01000000 2020-03-12 +KBUK01000000 2020-03-12 +KBUL01000000 2020-03-06 +KBUM01000000 2021-02-25 +KBUN01000000 2020-03-17 +KBUO01000000 2020-03-17 +KBUP01000000 2020-03-12 +KBUQ01000000 2020-03-06 +KBUR01000000 2020-03-03 +KBUS01000000 2020-03-03 +KBUT01000000 2020-03-17 +KBUU01000000 2020-03-06 +KBUV01000000 2019-06-16 +KBUX01000000 2020-02-10 +KBUY01000000 2019-06-14 +KBUZ01000000 2019-06-19 +KBVA01000000 2019-06-14 +KBVB01000000 2019-06-17 +KBVF01000000 2023-04-04 +KBVG01000000 2019-06-22 +KBVH01000000 2019-06-16 +KBVI01000000 2019-06-18 +KBVJ01000000 2019-06-15 +KBVK01000000 2019-06-19 +KBVL01000000 2019-06-15 +KBVM01000000 2019-06-16 +KBVN01000000 2019-06-12 +KBVO01000000 2019-06-17 +KBVP01000000 2019-06-14 +KBVQ01000000 2019-06-15 +KBVR01000000 2019-06-23 +KBVS01000000 2019-06-15 +KBVT01000000 2019-06-18 +KBVU01000000 2020-02-05 +KBVV01000000 2020-02-05 +KBVW01000000 2020-02-05 +KBVX01000000 2019-06-15 +KBVY01000000 2019-06-13 +KBVZ01000000 2019-06-16 +KBWA01000000 2019-06-16 +KBWB01000000 2019-06-13 +KBWC01000000 2019-06-16 +KBWD01000000 2019-06-13 +KBWE01000000 2019-06-18 +KBWF01000000 2019-06-13 +KBWG01000000 2019-06-13 +KBWH01000000 2019-06-16 +KBWI01000000 2019-06-22 +KBWJ01000000 2019-06-15 +KBWK01000000 2019-06-13 +KBWL01000000 2019-06-16 +KBWM01000000 2019-06-13 +KBWN01000000 2019-06-16 +KBWO01000000 2019-06-15 +KBWP01000000 2019-06-12 +KBWQ01000000 2019-06-22 +KBWR01000000 2019-06-18 +KBWS01000000 2019-06-22 +KBWT01000000 2019-06-14 +KBWU01000000 2019-06-13 +KBWV01000000 2019-06-15 +KBWW01000000 2019-06-16 +KBWX01000000 2019-06-13 +KBWY01000000 2019-06-17 +KBWZ01000000 2019-06-14 +KBXA01000000 2019-06-22 +KBXB01000000 2019-08-12 +KBXC01000000 2019-06-12 +KBXD01000000 2019-06-15 +KBXE01000000 2020-02-06 +KBXF01000000 2020-02-05 +KBXG01000000 2019-06-22 +KBXH01000000 2019-06-13 +KBXI01000000 2019-06-17 +KBXJ01000000 2019-06-17 +KBXK01000000 2019-06-13 +KBXL01000000 2019-06-22 +KBXM01000000 2019-06-15 +KBXN01000000 2019-06-19 +KBXO01000000 2019-06-14 +KBXP01000000 2019-06-22 +KBXQ01000000 2019-06-15 +KBXR01000000 2019-06-13 +KBXS01000000 2019-06-16 +KBXT01000000 2019-06-13 +KBXU01000000 2019-06-16 +KBXV01000000 2019-06-14 +KBXW01000000 2019-06-22 +KBXX01000000 2019-06-15 +KBXY01000000 2019-06-13 +KBXZ01000000 2019-06-15 +KBYA01000000 2019-06-14 +KBYB01000000 2019-06-18 +KBYC01000000 2019-06-16 +KBYD01000000 2019-06-13 +KBYE01000000 2019-06-16 +KBYF01000000 2019-06-13 +KBYG01000000 2019-06-23 +KBYH01000000 2019-06-15 +KBYI01000000 2019-06-13 +KBYJ01000000 2019-06-16 +KBYK01000000 2019-06-13 +KBYL01000000 2019-06-16 +KBYM01000000 2019-06-15 +KBYN01000000 2019-06-18 +KBYO01000000 2019-06-12 +KBYP01000000 2019-06-16 +KBYQ01000000 2019-06-15 +KBYR01000000 2019-06-18 +KBYS01000000 2019-06-15 +KBYT01000000 2019-09-06 +KBYU01000000 2019-06-16 +KBYV01000000 2019-06-13 +KBYW01000000 2019-06-16 +KBYX01000000 2019-06-15 +KBYY01000000 2019-06-14 +KBYZ01000000 2019-06-19 +KBZA01000000 2019-06-13 +KBZB01000000 2019-06-16 +KBZC01000000 2020-10-15 +KBZD01000000 2019-06-14 +KBZE01000000 2019-06-22 +KBZF01000000 2019-06-16 +KBZH01000000 2019-06-21 +KBZI01000000 2023-05-03 +KBZJ01000000 2023-05-03 +KBZK01000000 2023-05-03 +KBZL01000000 2023-05-03 +KBZM01000000 2023-05-03 +KBZN01000000 2023-05-03 +KBZO01000000 2023-05-03 +KBZP01000000 2023-05-03 +KBZQ01000000 2023-05-03 +KBZR01000000 2023-05-03 +KBZS01000000 2023-05-03 +KBZT01000000 2023-05-03 +KBZU01000000 2023-05-03 +KBZV01000000 2023-05-03 +KBZW01000000 2023-05-03 +KBZX01000000 2023-05-03 +KBZY01000000 2023-05-03 +KBZZ01000000 2023-05-03 +KCAA01000000 2023-05-03 +KCAB01000000 2023-05-03 +KCAC01000000 2023-05-03 +KCAD01000000 2023-05-03 +KCAE01000000 2023-05-03 +KCAF01000000 2023-05-03 +KCAG01000000 2023-05-03 +KCAH01000000 2023-05-03 +KCAI01000000 2023-05-03 +KCAJ01000000 2023-05-03 +KCAK01000000 2023-05-03 +KCAL01000000 2023-05-03 +KCAM01000000 2023-05-03 +KCAN01000000 2023-05-03 +KCAO01000000 2023-05-03 +KCAP01000000 2023-05-03 +KCAQ01000000 2023-05-03 +KCAR01000000 2023-05-03 +KCAS01000000 2023-05-03 +KCAT01000000 2023-05-03 +KCAU01000000 2023-05-03 +KCAV01000000 2023-05-03 +KCAW01000000 2023-05-03 +KCAX01000000 2023-05-03 +KCAY01000000 2023-05-03 +KCAZ01000000 2023-05-03 +KCBA01000000 2023-05-03 +KCBB01000000 2023-05-03 +KCBC01000000 2023-05-03 +KCBD01000000 2023-05-03 +KCBE01000000 2023-05-03 +KCBF01000000 2023-05-03 +KCBG01000000 2023-05-03 +KCBH01000000 2023-05-03 +KCBI01000000 2023-05-03 +KCBJ01000000 2023-05-03 +KCBK01000000 2023-05-03 +KCBL01000000 2023-05-03 +KCBM01000000 2023-05-03 +KCBN01000000 2023-05-03 +KCBO01000000 2023-05-03 +KCBP01000000 2023-05-03 +KCBQ01000000 2023-05-03 +KCBR01000000 2023-05-03 +KCBS01000000 2023-05-03 +KCBT01000000 2023-05-03 +KCBU01000000 2023-05-03 +KCBV01000000 2023-05-03 +KCBW01000000 2023-05-03 +KCBX01000000 2023-05-03 +KCBY01000000 2023-05-03 +KCBZ01000000 2023-05-03 +KCCA01000000 2023-05-03 +KCCB01000000 2023-05-03 +KCCC01000000 2023-05-03 +KCCD01000000 2023-05-03 +KCCE01000000 2023-05-03 +KCCF01000000 2023-05-03 +KCCG01000000 2023-05-03 +KCCH01000000 2023-05-03 +KCCI01000000 2023-05-03 +KCCJ01000000 2023-05-03 +KCCK01000000 2023-05-03 +KCCL01000000 2023-05-03 +KCCM01000000 2023-05-03 +KCCN01000000 2023-05-03 +KCCO01000000 2023-05-03 +KCCP01000000 2023-05-03 +KCCQ01000000 2023-05-03 +KCCR01000000 2023-05-03 +KCCS01000000 2023-05-03 +KCCT01000000 2023-05-03 +KCCU01000000 2023-05-03 +KCCV01000000 2019-06-13 +KCCW01000000 2019-06-12 +KCCX01000000 2019-06-15 +KCCY01000000 2019-06-18 +KCCZ01000000 2019-06-14 +KCDA01000000 2019-06-22 +KCDB01000000 2019-06-17 +KCDC01000000 2019-06-22 +KCDD01000000 2019-06-14 +KCDE01000000 2019-06-15 +KCDF01000000 2019-06-19 +KCDG01000000 2019-06-13 +KCDH01000000 2019-06-16 +KCDI01000000 2019-06-17 +KCDJ01000000 2019-06-22 +KCDK01000000 2019-06-15 +KCDL01000000 2019-06-19 +KCDM01000000 2019-06-19 +KCDN01000000 2019-06-13 +KCDO01000000 2019-06-16 +KCDP01000000 2019-06-13 +KCDQ01000000 2019-06-19 +KCDR01000000 2019-06-14 +KCDS01000000 2019-06-18 +KCDT01000000 2019-06-13 +KCDU01000000 2019-06-18 +KCDV01000000 2019-06-14 +KCDW01000000 2019-06-19 +KCDX01000000 2019-06-14 +KCDY01000000 2019-06-14 +KCDZ01000000 2019-06-13 +KCEA01000000 2019-06-23 +KCEB01000000 2019-06-15 +KCEC01000000 2019-06-16 +KCED01000000 2019-06-14 +KCEE01000000 2019-06-16 +KCEF01000000 2019-06-14 +KCEG01000000 2019-06-14 +KCEH01000000 2019-06-14 +KCEI01000000 2019-06-16 +KCEJ01000000 2019-06-13 +KCEK01000000 2019-06-13 +KCEL01000000 2019-06-15 +KCEM01000000 2019-06-19 +KCEN01000000 2019-06-14 +KCEO01000000 2019-06-14 +KCEP01000000 2019-06-23 +KCEQ01000000 2019-06-13 +KCER01000000 2019-06-17 +KCES01000000 2019-06-16 +KCET01000000 2019-06-14 +KCEU01000000 2019-06-16 +KCEV01000000 2019-06-22 +KCEW01000000 2019-08-12 +KCEX01000000 2020-02-10 +KCEY01000000 2020-02-07 +KCEZ01000000 2020-02-06 +KCFA01000000 2020-02-06 +KCFB01000000 2020-02-05 +KCFC01000000 2020-02-10 +KCFD01000000 2020-02-07 +KCFE01000000 2020-02-07 +KCFF01000000 2020-02-10 +KCFG01000000 2020-02-07 +KCFH01000000 2020-02-07 +KCFI01000000 2020-02-05 +KCFJ01000000 2020-02-07 +KCFK01000000 2020-02-06 +KCFL01000000 2020-02-07 +KCFM01000000 2020-02-05 +KCFN01000000 2020-02-07 +KCFO01000000 2020-02-07 +KCFP01000000 2020-02-05 +KCFQ01000000 2020-02-07 +KCFR01000000 2020-02-07 +KCFS01000000 2020-02-07 +KCFT01000000 2020-02-06 +KCFU01000000 2020-02-06 +KCFV01000000 2020-02-07 +KCFW01000000 2020-02-07 +KCFX01000000 2020-02-10 +KCFY01000000 2020-02-07 +KCFZ01000000 2020-02-07 +KCGA01000000 2020-02-06 +KCGB01000000 2020-02-07 +KCGC01000000 2020-02-06 +KCGD01000000 2020-02-06 +KCGE01000000 2020-02-07 +KCGF01000000 2020-02-07 +KCGG01000000 2020-02-07 +KCGH01000000 2020-02-10 +KCGI01000000 2020-02-07 +KCGJ01000000 2020-02-10 +KCGK01000000 2020-02-10 +KCGL01000000 2020-02-07 +KCGM01000000 2020-02-10 +KCGN01000000 2020-02-07 +KCGO01000000 2020-02-07 +KCGP01000000 2020-02-06 +KCGQ01000000 2020-02-07 +KCGR01000000 2020-02-07 +KCGS01000000 2020-02-07 +KCGT01000000 2020-02-10 +KCGU01000000 2020-02-07 +KCGV01000000 2020-02-06 +KCGW01000000 2020-02-07 +KCGX01000000 2020-02-05 +KCGY01000000 2020-02-07 +KCGZ01000000 2020-02-07 +KCHA01000000 2020-02-07 +KCHB01000000 2020-02-05 +KCHC01000000 2020-02-07 +KCHD01000000 2020-02-06 +KCHE01000000 2020-02-06 +KCHF01000000 2020-02-05 +KCHG01000000 2020-02-10 +KCHH01000000 2021-05-26 +KCHI01000000 2020-02-05 +KCHJ01000000 2020-02-07 +KCHK01000000 2020-02-07 +KCHL01000000 2020-02-07 +KCHM01000000 2020-02-06 +KCHN01000000 2020-02-06 +KCHO01000000 2020-02-07 +KCHP01000000 2020-02-07 +KCHQ01000000 2020-02-10 +KCHR01000000 2020-02-07 +KCHS01000000 2020-02-07 +KCHT01000000 2020-02-06 +KCHU01000000 2020-02-10 +KCHV01000000 2020-02-07 +KCHW01000000 2020-02-10 +KCHX01000000 2020-02-07 +KCHY01000000 2020-02-10 +KCHZ01000000 2020-02-07 +KCIA01000000 2020-02-07 +KCIB01000000 2020-03-12 +KCIC01000000 2020-02-05 +KCID01000000 2020-02-10 +KCIE01000000 2020-02-07 +KCIF01000000 2020-03-12 +KCIG01000000 2020-02-10 +KCIH01000000 2020-02-05 +KCII01000000 2020-02-10 +KCIJ01000000 2020-02-07 +KCIK01000000 2020-02-06 +KCIL01000000 2020-02-10 +KCIM01000000 2020-02-06 +KCIN01000000 2020-02-07 +KCIO01000000 2020-02-10 +KCIP01000000 2020-02-07 +KCIQ01000000 2020-02-06 +KCIR01000000 2020-02-07 +KCIS01000000 2020-02-07 +KCIT01000000 2020-02-07 +KCIU01000000 2020-02-07 +KCIV01000000 2020-02-07 +KCIW01000000 2020-02-07 +KCIX01000000 2020-02-07 +KCIY01000000 2020-02-10 +KCIZ01000000 2019-06-13 +KCJA01000000 2019-06-12 +KCJB01000000 2019-06-16 +KCJC01000000 2019-06-15 +KCJD01000000 2019-06-16 +KCJE01000000 2019-06-14 +KCJF01000000 2019-06-19 +KCJG01000000 2019-06-16 +KCJH01000000 2019-06-23 +KCJI01000000 2019-06-16 +KCJJ01000000 2019-06-14 +KCJK01000000 2019-06-17 +KCJL01000000 2019-06-13 +KCJM01000000 2019-06-22 +KCJN01000000 2019-06-15 +KCJO01000000 2019-06-16 +KCJP01000000 2019-06-13 +KCJQ01000000 2019-06-13 +KCJR01000000 2019-06-16 +KCJS01000000 2019-06-19 +KCJT01000000 2019-06-15 +KCJU01000000 2019-06-14 +KCJV01000000 2019-09-18 +KCJW01000000 2019-09-18 +KCJX01000000 2019-09-18 +KCJY01000000 2020-02-07 +KCJZ01000000 2019-06-13 +KCKA01000000 2019-06-15 +KCKB01000000 2023-07-20 +KCKC01000000 2020-02-07 +KCKD01000000 2019-06-16 +KCKE01000000 2019-06-14 +KCKF01000000 2019-06-16 +KCKG01000000 2019-06-13 +KCKH01000000 2019-06-15 +KCKI01000000 2019-09-25 +KCKJ01000000 2020-02-05 +KCKK01000000 2019-06-23 +KCKL01000000 2021-03-09 +KCKM01000000 2019-06-17 +KCKN01000000 2019-06-12 +KCKO01000000 2021-03-09 +KCKP01000000 2019-06-14 +KCKQ01000000 2019-06-15 +KCKR01000000 2019-06-13 +KCKS01000000 2019-06-14 +KCKT01000000 2019-06-19 +KCKU01000000 2019-06-13 +KCKV01000000 2019-06-18 +KCKW01000000 2019-06-13 +KCKX01000000 2019-06-17 +KCKY01000000 2019-06-18 +KCKZ01000000 2019-06-16 +KCLA01000000 2019-06-13 +KCLB01000000 2019-06-16 +KCLC01000000 2019-06-14 +KCLD01000000 2019-06-16 +KCLE01000000 2019-06-16 +KCLF01000000 2019-05-10 +KCLG01000000 2019-06-14 +KCLH01000000 2019-06-18 +KCLI01000000 2019-06-18 +KCLJ01000000 2019-06-13 +KCLK01000000 2019-06-16 +KCLL01000000 2019-06-14 +KCLM01000000 2019-06-16 +KCLN01000000 2019-06-13 +KCLO01000000 2019-06-18 +KCLP01000000 2019-06-14 +KCLQ01000000 2019-06-22 +KCLR01000000 2019-06-14 +KCLS01000000 2019-06-16 +KCLT01000000 2019-06-13 +KCLU01000000 2021-02-25 +KCLV01000000 2021-02-25 +KCLW01000000 2019-06-19 +KCLX01000000 2019-06-15 +KCLY01000000 2019-06-14 +KCLZ01000000 2019-06-17 +KCMA01000000 2019-06-22 +KCMB01000000 2019-06-15 +KCMC01000000 2019-06-16 +KCMD01000000 2019-06-13 +KCME01000000 2019-06-19 +KCMF01000000 2019-06-15 +KCMG01000000 2019-06-14 +KCMH01000000 2019-06-18 +KCMI01000000 2019-06-17 +KCMJ01000000 2019-06-22 +KCMK01000000 2019-06-13 +KCML01000000 2019-06-17 +KCMM01000000 2019-06-16 +KCMN01000000 2019-06-16 +KCMO01000000 2019-06-22 +KCMP01000000 2020-02-05 +KCMQ01000000 2019-06-23 +KCMR01000000 2019-06-14 +KCMS01000000 2019-06-16 +KCMT01000000 2019-06-15 +KCMU01000000 2019-06-22 +KCMV01000000 2019-06-14 +KCMW01000000 2019-06-14 +KCMX01000000 2019-06-13 +KCMY01000000 2019-06-16 +KCMZ01000000 2019-06-13 +KCNA01000000 2019-06-17 +KCNB01000000 2019-06-13 +KCNC01000000 2019-06-15 +KCND01000000 2019-06-13 +KCNE01000000 2019-06-18 +KCNF01000000 2022-01-02 +KCNG01000000 2019-06-16 +KCNH01000000 2019-06-15 +KCNI01000000 2019-06-12 +KCNJ01000000 2019-06-16 +KCNK01000000 2019-06-18 +KCNL01000000 2019-06-16 +KCNM01000000 2019-06-13 +KCNN01000000 2019-06-19 +KCNO01000000 2019-06-15 +KCNP01000000 2019-06-16 +KCNQ01000000 2019-06-14 +KCNR01000000 2019-06-19 +KCNS01000000 2019-06-16 +KCNT01000000 2019-06-13 +KCNU01000000 2019-06-16 +KCNV01000000 2019-06-13 +KCNW01000000 2019-06-18 +KCNX01000000 2019-05-24 +KCNY01000000 2019-05-24 +KCNZ01000000 2019-05-24 +KCOA01000000 2019-05-24 +KCOB01000000 2019-05-24 +KCOC01000000 2019-05-24 +KCOD01000000 2019-05-24 +KCOE01000000 2022-04-05 +KCOF01000000 2019-05-24 +KCOG01000000 2019-05-24 +KCOH01000000 2021-02-25 +KCOI01000000 2019-05-24 +KCOJ01000000 2019-05-24 +KCOK01000000 2019-05-24 +KCOL01000000 2019-05-24 +KCOM01000000 2019-05-24 +KCON01000000 2019-05-24 +KCOO01000000 2019-05-24 +KCOP01000000 2019-05-24 +KCOQ01000000 2019-06-16 +KCOR01000000 2019-05-24 +KCOS01000000 2019-05-24 +KCOT01000000 2019-05-24 +KCOU01000000 2019-05-24 +KCOV01000000 2019-05-24 +KCOW01000000 2019-05-24 +KCOX01000000 2019-05-24 +KCOY01000000 2019-05-24 +KCOZ01000000 2019-05-24 +KCPA01000000 2019-05-24 +KCPB01000000 2019-05-24 +KCPC01000000 2019-05-24 +KCPD01000000 2019-05-24 +KCPE01000000 2019-05-24 +KCPF01000000 2019-05-24 +KCPG01000000 2019-05-24 +KCPH01000000 2019-05-24 +KCPI01000000 2019-05-24 +KCPJ01000000 2019-05-24 +KCPK01000000 2019-05-24 +KCPL01000000 2019-05-24 +KCPM01000000 2019-08-12 +KCPN01000000 2019-06-14 +KCPO01000000 2019-06-22 +KCPP01000000 2019-06-15 +KCPQ01000000 2019-06-15 +KCPR01000000 2019-05-24 +KCPS01000000 2022-05-09 +KCPT01000000 2019-05-24 +KCPU01000000 2020-03-17 +KCPV01000000 2020-03-17 +KCPW01000000 2020-03-12 +KCPX01000000 2020-03-05 +KCPY01000000 2020-03-06 +KCPZ01000000 2020-03-05 +KCQA01000000 2020-03-06 +KCQB01000000 2020-03-12 +KCQC01000000 2020-03-12 +KCQD01000000 2020-03-17 +KCQE01000000 2020-03-17 +KCQF01000000 2020-03-12 +KCQG01000000 2020-03-05 +KCQH01000000 2020-03-12 +KCQI01000000 2020-03-06 +KCQJ01000000 2020-03-12 +KCQK01000000 2020-03-12 +KCQL01000000 2020-03-12 +KCQM01000000 2020-03-17 +KCQN01000000 2020-03-12 +KCQO01000000 2020-03-05 +KCQP01000000 2020-03-17 +KCQQ01000000 2020-03-12 +KCQR01000000 2020-03-05 +KCQS01000000 2020-03-17 +KCQT01000000 2020-03-12 +KCQU01000000 2020-03-12 +KCQV01000000 2020-03-17 +KCQW01000000 2020-03-06 +KCQX01000000 2020-03-05 +KCQY01000000 2020-03-12 +KCQZ01000000 2020-03-17 +KCRA01000000 2020-03-17 +KCRB01000000 2020-03-05 +KCRC01000000 2019-05-24 +KCRD01000000 2019-05-24 +KCRE01000000 2020-05-18 +KCRF01000000 2019-06-13 +KCRG01000000 2020-10-15 +KCRH01000000 2020-03-12 +KCRI01000000 2019-06-19 +KCRJ01000000 2019-06-14 +KCRK01000000 2019-09-25 +KCRL01000000 2019-06-13 +KCRM01000000 2019-08-12 +KCRN01000000 2020-02-07 +KCRO01000000 2020-02-07 +KCRP01000000 2020-02-05 +KCRQ01000000 2020-02-07 +KCRR01000000 2020-02-07 +KCRS01000000 2020-02-10 +KCRT01000000 2020-02-07 +KCRU01000000 2020-02-07 +KCRV01000000 2020-02-07 +KCRW01000000 2020-02-07 +KCRX01000000 2020-02-06 +KCRY01000000 2020-02-07 +KCRZ01000000 2020-02-10 +KCSA01000000 2020-02-10 +KCSB01000000 2020-02-06 +KCSC01000000 2020-02-10 +KCSD01000000 2020-02-07 +KCSE01000000 2020-02-06 +KCSF01000000 2020-02-06 +KCSG01000000 2020-02-10 +KCSH01000000 2020-02-07 +KCSI01000000 2020-02-06 +KCSJ01000000 2020-02-07 +KCSK01000000 2020-02-07 +KCSL01000000 2020-02-06 +KCSM01000000 2020-02-07 +KCSN01000000 2020-02-07 +KCSO01000000 2020-02-06 +KCSP01000000 2020-02-05 +KCSQ01000000 2020-02-07 +KCSR01000000 2020-02-07 +KCSS01000000 2020-02-10 +KCST01000000 2020-02-07 +KCSU01000000 2020-02-10 +KCSV01000000 2020-02-10 +KCSW01000000 2020-02-10 +KCSX01000000 2020-02-07 +KCSY01000000 2020-02-06 +KCSZ01000000 2020-02-07 +KCTA01000000 2020-02-07 +KCTB01000000 2020-02-07 +KCTC01000000 2020-02-07 +KCTD01000000 2020-02-05 +KCTE01000000 2021-07-11 +KCTF01000000 2020-02-10 +KCTG01000000 2020-02-07 +KCTH01000000 2020-02-10 +KCTI01000000 2020-02-07 +KCTJ01000000 2020-02-07 +KCTK01000000 2020-02-07 +KCTL01000000 2020-02-07 +KCTM01000000 2020-02-07 +KCTN01000000 2020-02-10 +KCTO01000000 2020-02-07 +KCTP01000000 2020-02-07 +KCTQ01000000 2020-02-07 +KCTR01000000 2020-02-07 +KCTS01000000 2020-02-07 +KCTT01000000 2020-02-10 +KCTU01000000 2020-02-06 +KCTV01000000 2020-02-10 +KCTW01000000 2020-02-07 +KCTX01000000 2020-02-10 +KCTY01000000 2020-02-07 +KCTZ01000000 2020-02-07 +KCUA01000000 2020-02-07 +KCUB01000000 2020-02-05 +KCUC01000000 2020-02-07 +KCUD01000000 2020-02-07 +KCUE01000000 2020-02-07 +KCUF01000000 2020-02-05 +KCUG01000000 2020-02-06 +KCUH01000000 2020-02-06 +KCUI01000000 2020-02-07 +KCUJ01000000 2020-02-05 +KCUK01000000 2020-02-10 +KCUL01000000 2020-02-07 +KCUM01000000 2020-02-10 +KCUN01000000 2020-02-07 +KCUO01000000 2020-02-07 +KCUP01000000 2020-02-07 +KCUQ01000000 2020-02-05 +KCUR01000000 2020-02-07 +KCUS01000000 2020-02-07 +KCUT01000000 2020-02-06 +KCUU01000000 2020-02-06 +KCUV01000000 2020-02-07 +KCUW01000000 2020-02-07 +KCUX01000000 2020-02-06 +KCUY01000000 2020-02-06 +KCUZ01000000 2020-02-10 +KCVA01000000 2020-02-06 +KCVB01000000 2020-02-06 +KCVC01000000 2020-02-07 +KCVD01000000 2020-02-07 +KCVE01000000 2020-03-12 +KCVF01000000 2020-02-06 +KCVG01000000 2019-08-12 +KCVH01000000 2019-06-14 +KCVI01000000 2019-06-22 +KCVJ01000000 2019-06-16 +KCVK01000000 2019-06-14 +KCVL01000000 2019-06-18 +KCVM01000000 2019-06-13 +KCVN01000000 2019-06-22 +KCVO01000000 2019-06-15 +KCVP01000000 2019-06-23 +KCVQ01000000 2019-06-14 +KCVR01000000 2019-06-13 +KCVS01000000 2019-06-17 +KCVT01000000 2019-06-15 +KCVU01000000 2019-06-16 +KCVV01000000 2019-06-14 +KCVW01000000 2019-06-23 +KCVX01000000 2019-06-16 +KCVY01000000 2019-06-13 +KCVZ01000000 2019-06-16 +KCWA01000000 2019-06-14 +KCWB01000000 2019-06-17 +KCWC01000000 2019-06-13 +KCWD01000000 2019-06-14 +KCWE01000000 2019-06-22 +KCWF01000000 2019-06-15 +KCWG01000000 2019-06-16 +KCWH01000000 2019-06-14 +KCWI01000000 2019-06-16 +KCWJ01000000 2019-06-15 +KCWK01000000 2019-06-13 +KCWL01000000 2019-06-17 +KCWM01000000 2019-06-13 +KCWN01000000 2019-06-23 +KCWO01000000 2019-06-14 +KCWP01000000 2019-06-19 +KCWQ01000000 2019-06-16 +KCWR01000000 2019-06-13 +KCWS01000000 2019-06-16 +KCWT01000000 2019-06-14 +KCWU01000000 2019-06-16 +KCWV01000000 2019-06-14 +KCWW01000000 2019-06-19 +KCWX01000000 2019-06-15 +KCWY01000000 2019-06-13 +KCWZ01000000 2019-06-17 +KCXA01000000 2019-06-12 +KCXB01000000 2019-06-15 +KCXC01000000 2019-06-18 +KCXD01000000 2019-06-18 +KCXE01000000 2019-06-14 +KCXF01000000 2019-06-22 +KCXG01000000 2019-06-13 +KCXH01000000 2019-06-13 +KCXI01000000 2019-06-16 +KCXJ01000000 2019-06-19 +KCXK01000000 2019-06-16 +KCXL01000000 2019-06-15 +KCXM01000000 2019-06-19 +KCXN01000000 2019-06-14 +KCXO01000000 2019-06-18 +KCXP01000000 2019-06-13 +KCXQ01000000 2019-06-16 +KCXR01000000 2019-06-13 +KCXS01000000 2020-05-18 +KCXT01000000 2019-10-08 +KCXU01000000 2019-10-08 +KCXW01000000 2019-10-08 +KCXY01000000 2019-10-08 +KCYA01000000 2020-05-18 +KCYB01000000 2020-05-18 +KCYC01000000 2019-06-12 +KCYD01000000 2019-06-18 +KCYE01000000 2020-05-18 +KCYF01000000 2020-05-18 +KCYG01000000 2022-08-11 +KCYH01000000 2022-08-11 +KCYI01000000 2020-05-18 +KCYJ01000000 2020-05-18 +KCYK01000000 2020-05-18 +KCYL01000000 2020-05-18 +KCYM01000000 2020-05-18 +KCYN01000000 2020-05-18 +KCYO01000000 2020-05-08 +KCYP01000000 2020-05-18 +KCYQ01000000 2020-05-18 +KCYR01000000 2020-05-18 +KCYS01000000 2020-05-18 +KCYT01000000 2020-05-18 +KCYU01000000 2020-05-18 +KCYV01000000 2020-05-18 +KCYW01000000 2020-05-18 +KCYX01000000 2020-05-08 +KCYY01000000 2020-05-18 +KCYZ01000000 2020-05-18 +KCZA01000000 2020-05-18 +KCZB01000000 2020-05-18 +KCZC01000000 2020-05-08 +KCZD01000000 2020-05-18 +KCZE01000000 2020-05-18 +KCZF01000000 2020-05-18 +KCZH01000000 2020-05-18 +KCZJ01000000 2020-05-18 +KCZK01000000 2020-05-18 +KCZL01000000 2020-05-08 +KCZN01000000 2020-05-18 +KCZO01000000 2020-05-18 +KCZP01000000 2020-05-18 +KCZQ01000000 2020-05-18 +KCZR01000000 2020-05-18 +KCZS01000000 2020-05-18 +KCZT01000000 2020-05-18 +KCZU01000000 2019-07-24 +KCZV01000000 2020-05-18 +KCZW01000000 2023-04-27 +KCZX01000000 2019-06-15 +KCZY01000000 2019-06-18 +KCZZ01000000 2021-12-12 +KDAA01000000 2019-10-08 +KDAB01000000 2019-10-08 +KDAC01000000 2020-02-10 +KDAD01000000 2020-02-07 +KDAE01000000 2019-09-18 +KDAF01000000 2019-06-22 +KDAG01000000 2020-02-07 +KDAH01000000 2020-02-06 +KDAI01000000 2020-02-07 +KDAJ01000000 2020-02-05 +KDAK01000000 2020-02-05 +KDAL01000000 2020-02-06 +KDAM01000000 2020-02-07 +KDAN01000000 2020-02-05 +KDAO01000000 2020-02-06 +KDAP01000000 2020-02-10 +KDAQ01000000 2020-02-07 +KDAR01000000 2020-02-10 +KDAS01000000 2020-03-12 +KDAT01000000 2020-02-10 +KDAU01000000 2020-02-07 +KDAV01000000 2020-02-06 +KDAW01000000 2020-02-06 +KDAX01000000 2020-02-07 +KDAY01000000 2020-02-05 +KDAZ01000000 2021-11-03 +KDBA01000000 2021-11-03 +KDBB01000000 2021-11-03 +KDBC01000000 2021-11-03 +KDBD01000000 2021-11-03 +KDBE01000000 2021-11-03 +KDBF01000000 2021-11-03 +KDBG01000000 2021-11-03 +KDBH01000000 2021-11-03 +KDBI01000000 2021-11-03 +KDBJ01000000 2021-11-03 +KDBK01000000 2021-11-03 +KDBL01000000 2021-11-03 +KDBM01000000 2021-11-03 +KDBN01000000 2021-11-03 +KDBO01000000 2021-11-04 +KDBP01000000 2021-11-04 +KDBQ01000000 2021-11-03 +KDBR01000000 2021-11-03 +KDBS01000000 2021-11-03 +KDBT01000000 2021-11-03 +KDBU01000000 2021-11-03 +KDBV01000000 2021-11-03 +KDBW01000000 2021-11-03 +KDBX01000000 2021-11-03 +KDBY01000000 2021-11-03 +KDBZ01000000 2021-11-03 +KDCA01000000 2021-11-03 +KDCB01000000 2021-11-03 +KDCC01000000 2021-11-03 +KDCD01000000 2021-11-03 +KDCE01000000 2021-11-03 +KDCF01000000 2021-11-03 +KDCG01000000 2021-11-03 +KDCH01000000 2021-11-03 +KDCI01000000 2021-11-03 +KDCJ01000000 2021-11-03 +KDCK01000000 2021-11-03 +KDCL01000000 2021-11-03 +KDCM01000000 2021-11-03 +KDCN01000000 2021-11-03 +KDCO01000000 2021-11-03 +KDCP01000000 2021-11-03 +KDCQ01000000 2021-11-03 +KDCR01000000 2021-11-03 +KDCS01000000 2021-11-03 +KDCT01000000 2021-11-03 +KDCU01000000 2021-11-03 +KDCV01000000 2021-11-03 +KDCW01000000 2021-11-03 +KDCX01000000 2021-11-03 +KDCY01000000 2021-11-03 +KDCZ01000000 2021-11-03 +KDDA01000000 2021-11-03 +KDDB01000000 2021-11-04 +KDDC01000000 2021-04-12 +KDDD01000000 2020-02-07 +KDDE01000000 2022-08-11 +KDDG01000000 2019-10-08 +KDDH01000000 2019-08-12 +KDDI01000000 2019-09-18 +KDDJ01000000 2019-09-18 +KDDK01000000 2019-09-18 +KDDL01000000 2019-10-08 +KDDM01000000 2020-02-06 +KDDO01000000 2020-02-07 +KDDP01000000 2020-12-21 +KDDR01000000 2020-10-15 +KDDS01000000 2020-10-15 +KDDT01000000 2020-10-15 +KDDU01000000 2020-10-15 +KDDV01000000 2020-10-20 +KDDW01000000 2020-10-15 +KDDX01000000 2020-02-05 +KDDY01000000 2020-10-15 +KDDZ01000000 2020-10-15 +KDEA01000000 2020-10-15 +KDED01000000 2021-11-03 +KDEE01000000 2019-10-08 +KDEF01000000 2019-10-08 +KDEG01000000 2020-12-21 +KDEH01000000 2020-12-21 +KDEI01000000 2020-12-21 +KDEJ01000000 2020-12-21 +KDEK01000000 2020-12-21 +KDEL01000000 2020-12-21 +KDEM01000000 2020-12-21 +KDEN01000000 2020-12-21 +KDEO01000000 2020-12-21 +KDEP01000000 2020-12-21 +KDEQ01000000 2020-12-21 +KDER01000000 2020-12-21 +KDES01000000 2020-12-21 +KDET01000000 2020-12-21 +KDEU01000000 2020-12-21 +KDEV01000000 2020-12-21 +KDEW01000000 2020-12-21 +KDEX01000000 2020-12-21 +KDEY01000000 2020-12-21 +KDEZ01000000 2020-12-21 +KDFA01000000 2020-12-21 +KDFB01000000 2020-12-21 +KDFC01000000 2020-12-21 +KDFD01000000 2020-12-21 +KDFE01000000 2020-12-21 +KDFF01000000 2020-12-21 +KDFG01000000 2020-12-21 +KDFH01000000 2020-12-21 +KDFI01000000 2020-12-21 +KDFJ01000000 2020-12-21 +KDFK01000000 2020-12-21 +KDFL01000000 2020-12-21 +KDFM01000000 2020-12-21 +KDFN01000000 2020-12-21 +KDFO01000000 2020-12-21 +KDFP01000000 2020-12-21 +KDFQ01000000 2020-12-21 +KDFR01000000 2020-12-21 +KDFS01000000 2020-12-21 +KDFT01000000 2020-12-21 +KDFU01000000 2020-12-21 +KDFV01000000 2020-12-21 +KDFW01000000 2020-12-21 +KDFX01000000 2020-12-21 +KDFY01000000 2020-12-21 +KDFZ01000000 2020-12-21 +KDGA01000000 2020-12-21 +KDGB01000000 2020-12-21 +KDGC01000000 2020-12-21 +KDGD01000000 2020-12-21 +KDGE01000000 2020-12-21 +KDGF01000000 2020-12-21 +KDGG01000000 2020-12-21 +KDGH01000000 2020-12-21 +KDGI01000000 2020-12-21 +KDGJ01000000 2020-12-21 +KDGK01000000 2020-12-21 +KDGL01000000 2020-12-21 +KDGM01000000 2020-12-21 +KDGN01000000 2020-12-21 +KDGO01000000 2020-12-21 +KDGP01000000 2020-12-21 +KDGQ01000000 2020-12-21 +KDGR01000000 2020-12-21 +KDGS01000000 2020-12-21 +KDGT01000000 2020-12-21 +KDGU01000000 2020-12-21 +KDGV01000000 2020-12-21 +KDGW01000000 2020-12-21 +KDGX01000000 2020-12-21 +KDGY01000000 2020-02-07 +KDGZ01000000 2020-02-05 +KDHA01000000 2020-02-07 +KDHB01000000 2020-02-05 +KDHC01000000 2020-02-07 +KDHD01000000 2020-02-07 +KDHE01000000 2020-02-10 +KDHF01000000 2020-02-05 +KDHG01000000 2020-02-07 +KDHH01000000 2020-02-07 +KDHI01000000 2020-02-07 +KDHJ01000000 2020-02-06 +KDHK01000000 2020-10-15 +KDHL01000000 2020-03-17 +KDHM01000000 2020-03-05 +KDHN01000000 2020-03-12 +KDHP01000000 2020-02-06 +KDHQ01000000 2022-02-14 +KDHR010000000 2023-10-05 +KDHV01000000 2020-02-05 +KDHW01000000 2020-02-07 +KDHX01000000 2021-02-16 +KDHY01000000 2021-03-25 +KDHZ01000000 2021-03-25 +KDIA01000000 2021-03-25 +KDIB01000000 2021-03-25 +KDIC01000000 2021-03-25 +KDID01000000 2021-03-25 +KDIE01000000 2021-03-25 +KDIF01000000 2021-03-25 +KDIG01000000 2021-03-25 +KDIH01000000 2021-03-25 +KDII01000000 2021-03-25 +KDIJ01000000 2021-03-25 +KDIK01000000 2021-03-25 +KDIL01000000 2021-03-25 +KDIM01000000 2021-03-25 +KDIN01000000 2021-03-25 +KDIO01000000 2021-03-25 +KDIP01000000 2021-03-25 +KDIQ01000000 2021-03-25 +KDIR01000000 2021-03-25 +KDIS01000000 2021-03-25 +KDIT01000000 2021-03-25 +KDIU01000000 2021-03-25 +KDIV01000000 2021-03-25 +KDIW01000000 2021-03-25 +KDIX01000000 2021-03-25 +KDIY01000000 2021-03-25 +KDIZ01000000 2021-03-25 +KDJA01000000 2021-03-25 +KDJB01000000 2021-03-25 +KDJC01000000 2021-03-25 +KDJD01000000 2021-03-25 +KDJE01000000 2021-03-25 +KDJF01000000 2021-03-25 +KDJG01000000 2021-03-25 +KDJH01000000 2021-03-25 +KDJI01000000 2021-03-25 +KDJJ01000000 2021-03-25 +KDJK01000000 2021-03-25 +KDJL01000000 2021-03-25 +KDJM01000000 2021-03-25 +KDJN01000000 2021-03-25 +KDJO01000000 2021-03-25 +KDJP01000000 2021-03-25 +KDJQ01000000 2021-03-25 +KDJR01000000 2021-03-25 +KDJS01000000 2021-03-25 +KDJT01000000 2021-03-25 +KDJU01000000 2021-03-25 +KDJV01000000 2021-03-25 +KDJW01000000 2021-03-25 +KDJX01000000 2021-03-25 +KDJY01000000 2021-03-25 +KDJZ01000000 2021-03-25 +KDKA01000000 2021-03-25 +KDKB01000000 2021-03-25 +KDKC01000000 2021-03-25 +KDKD01000000 2021-03-25 +KDKE01000000 2021-03-25 +KDKF01000000 2021-03-25 +KDKG01000000 2021-03-25 +KDKH01000000 2021-03-25 +KDKI01000000 2021-03-25 +KDKJ01000000 2021-03-25 +KDKK01000000 2021-03-25 +KDKL01000000 2021-03-25 +KDKM01000000 2021-03-25 +KDKN01000000 2021-03-25 +KDKO01000000 2021-03-25 +KDKP01000000 2021-03-25 +KDKQ01000000 2021-03-25 +KDKR01000000 2021-03-25 +KDKS01000000 2021-03-25 +KDKT01000000 2021-03-25 +KDKU01000000 2021-03-25 +KDKV01000000 2021-03-25 +KDKW01000000 2021-03-25 +KDKX01000000 2021-03-25 +KDKY01000000 2021-03-25 +KDKZ01000000 2021-03-25 +KDLA01000000 2021-03-25 +KDLB01000000 2021-03-25 +KDLC01000000 2021-03-25 +KDLD01000000 2021-03-25 +KDLE01000000 2021-03-25 +KDLF01000000 2021-03-25 +KDLG01000000 2021-03-25 +KDLH01000000 2021-03-25 +KDLI01000000 2021-03-25 +KDLJ01000000 2021-03-25 +KDLK01000000 2021-03-25 +KDLL01000000 2021-03-25 +KDLM01000000 2021-03-25 +KDLN01000000 2021-03-25 +KDLO01000000 2021-03-25 +KDLP01000000 2021-03-25 +KDLQ01000000 2021-03-25 +KDLR01000000 2021-03-25 +KDLS01000000 2021-03-25 +KDLT01000000 2021-03-25 +KDLU01000000 2021-03-25 +KDLV01000000 2021-03-25 +KDLW01000000 2021-03-25 +KDLX01000000 2021-03-25 +KDLY01000000 2021-03-25 +KDLZ01000000 2021-03-25 +KDMA01000000 2021-03-25 +KDMB01000000 2021-03-25 +KDMC01000000 2021-03-25 +KDMD01000000 2021-03-25 +KDME01000000 2021-03-25 +KDMF01000000 2021-03-25 +KDMG01000000 2021-03-25 +KDMH01000000 2021-03-25 +KDMI01000000 2021-03-25 +KDMJ01000000 2021-03-25 +KDMK01000000 2021-03-25 +KDML01000000 2021-03-25 +KDMM01000000 2021-03-25 +KDMN01000000 2021-03-25 +KDMO01000000 2021-03-25 +KDMP01000000 2021-03-25 +KDMQ01000000 2021-03-25 +KDMR01000000 2021-03-25 +KDMS01000000 2021-03-25 +KDMT01000000 2021-03-25 +KDMU01000000 2021-03-25 +KDMV01000000 2021-03-25 +KDMW01000000 2021-03-25 +KDMX01000000 2021-03-25 +KDMY01000000 2021-03-25 +KDMZ01000000 2021-03-25 +KDNA01000000 2021-03-25 +KDNB01000000 2021-03-25 +KDNC01000000 2021-03-25 +KDND01000000 2021-03-25 +KDNE01000000 2021-03-25 +KDNF01000000 2021-03-25 +KDNG01000000 2021-03-25 +KDNH01000000 2021-03-25 +KDNI01000000 2021-03-25 +KDNJ01000000 2021-03-25 +KDNK01000000 2021-03-25 +KDNL01000000 2021-03-25 +KDNM01000000 2021-03-25 +KDNN01000000 2021-03-25 +KDNO01000000 2021-03-25 +KDNP01000000 2021-03-25 +KDNQ01000000 2021-03-25 +KDNR01000000 2021-03-25 +KDNS01000000 2021-03-25 +KDNT01000000 2021-03-25 +KDNU01000000 2021-03-25 +KDNV01000000 2021-03-25 +KDNW01000000 2021-03-25 +KDNX01000000 2021-03-25 +KDNY01000000 2021-03-25 +KDNZ01000000 2021-03-25 +KDOA01000000 2021-03-25 +KDOB01000000 2021-03-25 +KDOC01000000 2021-03-25 +KDOD01000000 2021-03-25 +KDOE01000000 2021-03-25 +KDOF01000000 2021-03-25 +KDOG01000000 2021-03-25 +KDOH01000000 2021-03-25 +KDOI01000000 2021-03-25 +KDOJ01000000 2021-03-25 +KDOK01000000 2021-03-25 +KDOL01000000 2021-03-25 +KDOM01000000 2021-03-25 +KDON01000000 2021-03-25 +KDOO01000000 2021-03-25 +KDOP01000000 2020-02-10 +KDOQ01000000 2020-02-07 +KDOR01000000 2020-03-06 +KDOS01000000 2020-02-06 +KDOT01000000 2020-02-07 +KDOU01000000 2020-02-10 +KDOV01000000 2021-11-03 +KDOW01000000 2020-02-07 +KDOX01000000 2020-02-07 +KDOY01000000 2020-03-17 +KDOZ01000000 2020-02-07 +KDPA01000000 2020-02-06 +KDPB01000000 2020-02-07 +KDPC01000000 2020-02-07 +KDPD01000000 2020-02-05 +KDPE01000000 2020-02-07 +KDPF01000000 2020-02-07 +KDPG01000000 2020-02-07 +KDPH01000000 2020-02-07 +KDPI01000000 2020-02-07 +KDPJ01000000 2020-02-07 +KDPK01000000 2020-02-06 +KDPL01000000 2020-02-07 +KDPM01000000 2020-02-05 +KDPN01000000 2020-02-10 +KDPO01000000 2020-02-05 +KDPP01000000 2020-02-10 +KDPQ01000000 2020-03-17 +KDPR01000000 2020-02-07 +KDPS01000000 2023-07-20 +KDPT01000000 2020-02-07 +KDPU01000000 2020-03-17 +KDPV01000000 2020-10-15 +KDPW01000000 2020-10-15 +KDQA01000000 2020-02-07 +KDQB01000000 2020-03-05 +KDQC01000000 2020-03-17 +KDQD01000000 2020-03-12 +KDQE01000000 2020-03-12 +KDQF01000000 2020-03-05 +KDQG01000000 2020-03-17 +KDQH01000000 2020-03-12 +KDQI01000000 2020-03-12 +KDQJ01000000 2020-03-12 +KDQK01000000 2020-03-05 +KDQL01000000 2020-03-12 +KDQM01000000 2020-03-05 +KDQN01000000 2020-03-06 +KDQO01000000 2020-03-17 +KDQQ01000000 2020-03-05 +KDQR01000000 2020-03-05 +KDQS01000000 2020-03-12 +KDQT01000000 2020-03-12 +KDQU01000000 2020-03-05 +KDQV01000000 2020-03-05 +KDQW01000000 2020-03-12 +KDQX01000000 2020-03-06 +KDQY01000000 2020-03-05 +KDQZ01000000 2020-03-17 +KDRA01000000 2020-03-06 +KDRB01000000 2020-03-12 +KDRC01000000 2020-03-12 +KDRD01000000 2020-03-12 +KDRE01000000 2020-03-17 +KDRF01000000 2020-03-12 +KDRG01000000 2020-03-12 +KDRH01000000 2020-03-06 +KDRI01000000 2020-03-05 +KDRJ01000000 2020-03-05 +KDRK01000000 2020-03-17 +KDRL01000000 2020-03-05 +KDRM01000000 2020-03-17 +KDRN01000000 2020-03-17 +KDRO01000000 2020-03-05 +KDRP01000000 2020-03-17 +KDRQ01000000 2020-03-17 +KDRR01000000 2020-03-05 +KDRS01000000 2020-03-06 +KDRT01000000 2020-03-12 +KDRU01000000 2020-03-17 +KDRV01000000 2020-03-12 +KDRW01000000 2020-03-17 +KDRX01000000 2020-03-05 +KDRY01000000 2020-03-12 +KDRZ01000000 2020-03-05 +KDSA01000000 2020-03-05 +KDSB01000000 2020-03-17 +KDSC01000000 2020-03-17 +KDSD01000000 2020-03-12 +KDSE01000000 2020-03-05 +KDSF01000000 2020-03-12 +KDSG01000000 2020-03-12 +KDSH01000000 2020-03-12 +KDSI01000000 2020-03-17 +KDSJ01000000 2020-03-12 +KDSK01000000 2020-03-17 +KDSL01000000 2020-03-12 +KDSM01000000 2020-03-05 +KDSN01000000 2020-03-12 +KDSO01000000 2020-03-12 +KDSP01000000 2020-03-05 +KDSQ01000000 2020-03-12 +KDSR01000000 2020-03-17 +KDSS01000000 2020-03-17 +KDST01000000 2020-03-17 +KDSU01000000 2020-03-17 +KDSV01000000 2020-03-12 +KDSW01000000 2020-03-05 +KDSX01000000 2020-03-05 +KDSY01000000 2020-03-12 +KDSZ01000000 2020-03-05 +KDTA01000000 2020-03-17 +KDTB01000000 2020-03-17 +KDTC01000000 2020-03-06 +KDTD01000000 2020-03-05 +KDTE01000000 2020-03-17 +KDTF01000000 2020-03-12 +KDTG01000000 2020-03-06 +KDTH01000000 2020-03-17 +KDTI01000000 2020-03-17 +KDTJ01000000 2020-03-17 +KDTK01000000 2020-03-17 +KDTL01000000 2020-03-12 +KDTM01000000 2020-03-06 +KDTN01000000 2020-03-05 +KDTO01000000 2020-03-12 +KDTP01000000 2020-03-12 +KDTQ01000000 2020-03-12 +KDTR01000000 2020-03-05 +KDTS01000000 2020-03-12 +KDTT01000000 2020-03-06 +KDTU01000000 2020-03-12 +KDTV01000000 2020-03-05 +KDTW01000000 2020-03-17 +KDTX01000000 2020-03-17 +KDTY01000000 2020-03-12 +KDTZ01000000 2020-03-17 +KDUA01000000 2020-03-05 +KDUB01000000 2020-03-05 +KDUC01000000 2020-03-12 +KDUD01000000 2020-03-17 +KDUE01000000 2020-03-05 +KDUF01000000 2020-03-05 +KDUG01000000 2020-03-12 +KDUH01000000 2021-07-27 +KDUI01000000 2021-07-27 +KDUJ01000000 2021-07-27 +KDUK01000000 2021-07-27 +KDUL01000000 2021-07-27 +KDUM01000000 2021-07-27 +KDUN01000000 2020-03-05 +KDUO01000000 2020-03-12 +KDUP01000000 2020-03-05 +KDUQ01000000 2020-03-05 +KDUR01000000 2020-03-12 +KDUS01000000 2020-03-17 +KDUT01000000 2020-03-12 +KDUU01000000 2020-03-12 +KDUV01000000 2020-03-05 +KDUW01000000 2020-03-17 +KDUX01000000 2020-03-05 +KDUY01000000 2020-03-05 +KDUZ01000000 2020-03-12 +KDVA01000000 2020-03-17 +KDVB01000000 2020-03-05 +KDVC01000000 2020-10-20 +KDVD01000000 2020-03-05 +KDVE01000000 2020-03-12 +KDVF01000000 2020-03-17 +KDVG01000000 2020-03-17 +KDVH01000000 2020-03-17 +KDVI01000000 2020-03-05 +KDVJ01000000 2020-03-05 +KDVK01000000 2020-03-12 +KDVL01000000 2020-03-17 +KDVN01000000 2020-03-12 +KDVO01000000 2020-03-12 +KDVP01000000 2020-03-17 +KDVQ01000000 2020-03-05 +KDVR01000000 2020-03-06 +KDVS01000000 2020-03-17 +KDVT01000000 2020-05-18 +KDVU01000000 2020-05-18 +KDVV01000000 2021-02-16 +KDVW01000000 2021-02-16 +KDVX01000000 2020-05-18 +KDVY01000000 2021-06-11 +KDWB01000000 2020-05-18 +KDWC01000000 2020-05-18 +KDWD01000000 2020-05-08 +KDWE01000000 2022-05-09 +KDWF01000000 2021-06-11 +KDWG01000000 2021-06-11 +KDWH01000000 2021-06-11 +KDWI01000000 2021-06-11 +KDWJ01000000 2021-06-11 +KDWK01000000 2021-06-11 +KDWL01000000 2021-06-11 +KDWM01000000 2021-06-11 +KDWN01000000 2021-06-11 +KDWO01000000 2021-06-11 +KDWP01000000 2021-06-11 +KDWQ01000000 2021-06-11 +KDWR01000000 2021-06-11 +KDWS01000000 2021-06-11 +KDWT01000000 2021-06-11 +KDWU01000000 2021-06-11 +KDWV01000000 2021-06-11 +KDWW01000000 2021-06-11 +KDWX01000000 2021-06-11 +KDWY01000000 2021-06-11 +KDWZ01000000 2021-06-11 +KDXA01000000 2021-06-11 +KDXB01000000 2021-06-11 +KDXC01000000 2021-06-11 +KDXD01000000 2021-06-11 +KDXE01000000 2021-06-11 +KDXF01000000 2021-06-11 +KDXG01000000 2021-06-11 +KDXH01000000 2021-06-11 +KDXI01000000 2021-06-11 +KDXJ01000000 2021-06-11 +KDXK01000000 2021-06-11 +KDXL01000000 2021-06-11 +KDXM01000000 2021-06-11 +KDXN01000000 2021-06-11 +KDXO01000000 2021-06-11 +KDXP01000000 2021-06-11 +KDXQ01000000 2021-06-11 +KDXR01000000 2021-06-11 +KDXS01000000 2021-06-11 +KDXT01000000 2021-06-11 +KDXU01000000 2021-06-11 +KDXV01000000 2021-06-11 +KDXW01000000 2021-06-11 +KDXX01000000 2021-06-11 +KDXY01000000 2021-06-11 +KDXZ01000000 2021-06-11 +KDYA01000000 2021-06-11 +KDYB01000000 2021-06-11 +KDYC01000000 2021-06-11 +KDYD01000000 2021-06-11 +KDYE01000000 2021-06-11 +KDYF01000000 2021-06-11 +KDYG01000000 2021-06-11 +KDYH01000000 2021-06-11 +KDYI01000000 2021-06-11 +KDYJ01000000 2021-06-11 +KDYK01000000 2021-06-11 +KDYL01000000 2021-06-11 +KDYM01000000 2021-06-11 +KDYN01000000 2021-06-11 +KDYO01000000 2021-06-11 +KDYP01000000 2021-06-11 +KDYQ01000000 2021-06-11 +KDYR01000000 2021-06-11 +KDYS01000000 2021-06-11 +KDYT01000000 2021-06-11 +KDYU01000000 2021-06-11 +KDYV01000000 2021-06-11 +KDYW01000000 2021-06-11 +KDYX01000000 2021-06-11 +KDYY01000000 2021-06-11 +KDYZ01000000 2021-06-11 +KDZA01000000 2021-06-11 +KDZB01000000 2021-06-11 +KDZC01000000 2021-06-11 +KDZD01000000 2021-06-11 +KDZE01000000 2021-06-11 +KDZF01000000 2021-06-11 +KDZG01000000 2021-06-11 +KDZH01000000 2021-06-11 +KDZI01000000 2021-06-11 +KDZJ01000000 2021-06-11 +KDZK01000000 2021-06-11 +KDZL01000000 2021-06-11 +KDZM01000000 2021-06-11 +KDZN01000000 2021-06-11 +KDZO01000000 2021-06-11 +KDZP01000000 2021-06-11 +KDZQ01000000 2021-06-11 +KDZR01000000 2021-06-11 +KDZS01000000 2021-06-11 +KDZT01000000 2021-06-11 +KDZU01000000 2021-06-11 +KDZV01000000 2021-06-11 +KDZW01000000 2021-06-11 +KDZX01000000 2021-06-11 +KDZY01000000 2021-06-11 +KDZZ01000000 2021-06-11 +KEAA01000000 2021-06-11 +KEAB01000000 2021-06-11 +KEAC01000000 2021-06-11 +KEAD01000000 2021-06-11 +KEAE01000000 2021-06-11 +KEAF01000000 2021-06-11 +KEAG01000000 2021-06-11 +KEAH01000000 2021-06-11 +KEAI01000000 2021-06-11 +KEAJ01000000 2021-06-11 +KEAK01000000 2021-06-11 +KEAL01000000 2021-06-11 +KEAM01000000 2021-06-11 +KEAN01000000 2021-06-11 +KEAO01000000 2021-06-11 +KEAP01000000 2021-06-11 +KEAQ01000000 2021-06-11 +KEAR01000000 2021-06-11 +KEAS01000000 2021-06-11 +KEAT01000000 2021-06-11 +KEAU01000000 2021-06-11 +KEAV01000000 2021-06-11 +KEAW01000000 2021-06-11 +KEAX01000000 2021-06-11 +KEAZ01000000 2020-05-08 +KEBE01000000 2020-05-18 +KEBF01000000 2021-06-11 +KEBG01000000 2021-06-11 +KEBH01000000 2020-05-18 +KEBI01000000 2021-07-27 +KEBK01000000 2021-06-30 +KEBM01000000 2020-07-15 +KEBN01000000 2020-07-15 +KEBO01000000 2020-07-15 +KEBP01000000 2020-10-15 +KEBQ01000000 2020-10-15 +KEBR01000000 2020-10-15 +KEBS01000000 2020-10-15 +KEBT01000000 2020-10-15 +KEBU01000000 2020-10-15 +KEBV01000000 2020-10-15 +KEBW01000000 2020-10-15 +KEBX01000000 2020-10-15 +KEBY01000000 2020-10-15 +KEBZ01000000 2020-10-10 +KECA01000000 2020-10-15 +KECB01000000 2020-10-15 +KECC01000000 2020-10-15 +KECD01000000 2020-10-15 +KECE01000000 2020-10-15 +KECF01000000 2020-10-10 +KECG01000000 2020-10-15 +KECH01000000 2020-10-15 +KECI01000000 2020-10-15 +KECJ01000000 2020-10-10 +KECK01000000 2020-10-15 +KECL01000000 2020-10-15 +KECM01000000 2020-10-15 +KECN01000000 2020-10-15 +KECO01000000 2020-10-15 +KECP01000000 2020-10-15 +KECQ01000000 2020-10-15 +KECR01000000 2020-10-15 +KECS01000000 2020-10-15 +KECT01000000 2020-10-15 +KECU01000000 2020-10-15 +KECV01000000 2020-10-15 +KECW01000000 2020-10-15 +KECX01000000 2020-10-10 +KECY01000000 2020-10-12 +KECZ01000000 2020-10-15 +KEDA01000000 2020-10-15 +KEDB01000000 2020-10-15 +KEDC01000000 2020-10-15 +KEDD01000000 2020-10-15 +KEDE01000000 2020-10-15 +KEDF01000000 2020-10-12 +KEDG01000000 2020-10-10 +KEDH01000000 2020-10-12 +KEDI01000000 2020-10-10 +KEDJ01000000 2020-10-15 +KEDK01000000 2020-10-15 +KEDL01000000 2020-10-10 +KEDM01000000 2020-10-10 +KEDN01000000 2020-10-15 +KEDO01000000 2020-10-15 +KEDP01000000 2020-10-15 +KEDQ01000000 2020-10-15 +KEDR01000000 2020-10-15 +KEDS01000000 2020-10-15 +KEDT01000000 2020-10-15 +KEDU01000000 2020-10-15 +KEDV01000000 2020-10-15 +KEDW01000000 2020-10-15 +KEDX01000000 2020-10-15 +KEDY01000000 2020-10-15 +KEDZ01000000 2020-10-15 +KEEA01000000 2020-08-20 +KEEB01000000 2020-10-15 +KEEC01000000 2020-10-10 +KEED01000000 2020-10-15 +KEEE01000000 2020-10-15 +KEEF01000000 2020-08-20 +KEEJ01000000 2020-08-18 +KEEN01000000 2020-08-20 +KEEO01000000 2020-08-20 +KEER01000000 2020-08-20 +KEET01000000 2021-07-27 +KEEU01000000 2021-07-27 +KEEV01000000 2021-07-27 +KEEW01000000 2021-07-27 +KEEX01000000 2021-07-27 +KEEY01000000 2021-07-27 +KEEZ01000000 2021-07-27 +KEFA01000000 2021-07-27 +KEFB01000000 2021-07-27 +KEFC01000000 2021-07-27 +KEFD01000000 2021-07-27 +KEFE01000000 2021-07-27 +KEFF01000000 2021-07-27 +KEFG01000000 2021-07-27 +KEFH01000000 2021-07-27 +KEFI01000000 2021-07-27 +KEFJ01000000 2021-07-27 +KEFK01000000 2021-07-27 +KEFL01000000 2021-07-27 +KEFM01000000 2021-07-27 +KEFN01000000 2021-07-27 +KEFO01000000 2021-07-27 +KEFP01000000 2021-07-27 +KEFQ01000000 2021-07-27 +KEFR01000000 2021-07-27 +KEFS01000000 2021-07-27 +KEFT01000000 2021-07-27 +KEFU01000000 2021-07-27 +KEFV01000000 2021-07-27 +KEFW01000000 2021-07-27 +KEFX01000000 2021-07-27 +KEFY01000000 2021-07-27 +KEFZ01000000 2021-07-27 +KEGA01000000 2021-07-27 +KEGB01000000 2021-07-27 +KEGC01000000 2021-07-27 +KEGD01000000 2021-07-27 +KEGE01000000 2021-07-27 +KEGF01000000 2021-07-27 +KEGG01000000 2021-07-27 +KEGH01000000 2021-07-27 +KEGI01000000 2021-07-27 +KEGJ01000000 2021-07-27 +KEGK01000000 2021-07-27 +KEGL01000000 2021-07-27 +KEGM01000000 2021-07-27 +KEGN01000000 2021-07-27 +KEGO01000000 2021-07-27 +KEGP01000000 2021-07-27 +KEGQ01000000 2021-07-27 +KEGR01000000 2021-07-27 +KEGS01000000 2021-07-27 +KEGT01000000 2021-07-27 +KEGU01000000 2021-07-27 +KEGV01000000 2021-07-27 +KEGW01000000 2021-07-27 +KEGX01000000 2021-07-27 +KEGY01000000 2021-07-27 +KEGZ01000000 2021-07-27 +KEHA01000000 2021-07-27 +KEHB01000000 2021-07-27 +KEHC01000000 2021-07-27 +KEHD01000000 2023-05-01 +KEHE01000000 2021-07-27 +KEHF01000000 2021-07-27 +KEHG01000000 2021-07-27 +KEHH01000000 2021-07-27 +KEHI01000000 2021-07-27 +KEHJ01000000 2021-07-27 +KEHK01000000 2021-07-27 +KEHL01000000 2021-07-27 +KEHM01000000 2021-07-27 +KEHN01000000 2021-07-27 +KEHO01000000 2021-07-27 +KEHP01000000 2021-07-27 +KEHQ01000000 2021-07-27 +KEHR01000000 2021-07-27 +KEHS01000000 2021-07-27 +KEHT01000000 2021-07-27 +KEHU01000000 2021-07-27 +KEHV01000000 2021-07-27 +KEHW01000000 2021-07-27 +KEHX01000000 2021-07-27 +KEHY01000000 2021-07-27 +KEHZ01000000 2021-07-27 +KEIA01000000 2021-07-27 +KEIB01000000 2021-07-27 +KEIC01000000 2021-07-27 +KEID01000000 2021-07-27 +KEIE01000000 2021-07-27 +KEIF01000000 2021-07-27 +KEIG01000000 2021-07-27 +KEIH01000000 2021-07-27 +KEII01000000 2021-07-27 +KEIJ01000000 2021-07-27 +KEIK01000000 2021-07-27 +KEIL01000000 2021-07-27 +KEIM01000000 2021-07-27 +KEIN01000000 2021-07-27 +KEIO01000000 2021-07-27 +KEIP01000000 2021-07-27 +KEIQ01000000 2021-07-27 +KEIR01000000 2021-07-27 +KEIS01000000 2021-07-27 +KEIT01000000 2021-07-27 +KEIU01000000 2021-07-27 +KEIV01000000 2021-07-27 +KEIW01000000 2021-07-27 +KEIX01000000 2021-07-27 +KEIY01000000 2021-07-27 +KEIZ01000000 2021-07-27 +KEJA01000000 2021-07-27 +KEJB01000000 2021-07-27 +KEJC01000000 2021-07-27 +KEJD01000000 2021-07-27 +KEJE01000000 2021-07-27 +KEJF01000000 2021-07-27 +KEJG01000000 2021-07-27 +KEJH01000000 2021-07-27 +KEJI01000000 2021-07-27 +KEJJ01000000 2021-07-27 +KEJK01000000 2021-07-27 +KEJL01000000 2021-07-27 +KEJM01000000 2021-07-27 +KEJN01000000 2021-07-27 +KEJO01000000 2021-07-27 +KEJP01000000 2021-07-27 +KEJQ01000000 2021-07-27 +KEJR01000000 2021-07-27 +KEJS01000000 2021-07-27 +KEJT01000000 2021-07-27 +KEJU01000000 2021-07-27 +KEJV01000000 2021-07-27 +KEJW01000000 2021-07-27 +KEJX01000000 2021-07-27 +KEJY01000000 2021-07-27 +KEJZ01000000 2021-07-27 +KEKA01000000 2021-07-27 +KEKB01000000 2021-07-27 +KEKC01000000 2021-07-27 +KEKD01000000 2021-07-27 +KEKE01000000 2021-07-27 +KEKF01000000 2021-07-27 +KEKG01000000 2021-07-27 +KEKH01000000 2021-07-27 +KEKI01000000 2021-07-27 +KEKJ01000000 2021-07-27 +KEKK01000000 2021-07-27 +KEKL01000000 2021-07-27 +KEKM01000000 2021-07-27 +KEKN01000000 2021-02-16 +KEKO01000000 2020-10-15 +KEKP01000000 2020-12-07 +KELE01000000 2020-08-18 +KELF01000000 2021-02-16 +KELG01000000 2020-08-20 +KELH01000000 2020-08-20 +KELI01000000 2020-12-21 +KELJ01000000 2020-12-21 +KELK01000000 2020-12-21 +KELL01000000 2021-08-23 +KELM01000000 2020-10-15 +KELN01000000 2021-03-22 +KELO01000000 2021-03-22 +KELP01000000 2021-03-22 +KELQ01000000 2021-03-22 +KELR01000000 2021-03-22 +KELS01000000 2021-03-22 +KELT01000000 2021-03-22 +KELU01000000 2021-03-22 +KELV01000000 2021-02-16 +KELW01000000 2022-05-09 +KELX01000000 2021-02-16 +KELY01000000 2021-11-03 +KELZ01000000 2021-11-03 +KEMA01000000 2021-11-03 +KEMB01000000 2021-11-03 +KEMC01000000 2021-11-03 +KEMD01000000 2020-12-21 +KEME01000000 2021-11-03 +KEMF01000000 2021-11-03 +KEMG01000000 2021-11-03 +KEMH01000000 2021-11-03 +KEMI01000000 2021-11-03 +KEMJ01000000 2021-11-03 +KEMK01000000 2021-11-03 +KEML01000000 2021-11-03 +KEMM01000000 2021-11-03 +KEMN01000000 2021-11-03 +KEMO01000000 2021-11-03 +KEMP01000000 2021-11-03 +KEMQ01000000 2021-11-03 +KEMR01000000 2021-11-03 +KEMS01000000 2021-11-03 +KEMT01000000 2021-11-03 +KEMU01000000 2021-11-03 +KEMV01000000 2021-11-03 +KEMW01000000 2021-11-03 +KEMX01000000 2021-11-03 +KEMY01000000 2021-11-03 +KEMZ01000000 2021-11-03 +KENA01000000 2021-11-03 +KENB01000000 2021-11-03 +KENC01000000 2021-11-03 +KEND01000000 2021-11-03 +KENE01000000 2021-11-03 +KENF01000000 2021-11-03 +KENG01000000 2021-11-03 +KENH01000000 2021-11-03 +KENI01000000 2021-11-03 +KENJ01000000 2021-11-03 +KENK01000000 2021-11-03 +KENL01000000 2021-11-03 +KENM01000000 2021-11-03 +KENN01000000 2021-11-03 +KENO01000000 2021-11-03 +KENP01000000 2021-11-03 +KENQ01000000 2021-11-03 +KENR01000000 2021-11-03 +KENS01000000 2021-11-03 +KENT01000000 2021-11-03 +KENU01000000 2021-11-03 +KENV01000000 2021-11-03 +KENW01000000 2021-11-03 +KENX01000000 2021-11-03 +KENY01000000 2021-11-03 +KENZ01000000 2021-11-03 +KEOA01000000 2021-11-03 +KEOB01000000 2021-11-03 +KEOC01000000 2021-11-03 +KEOD01000000 2021-11-03 +KEOE01000000 2021-11-03 +KEOF01000000 2021-11-03 +KEOG01000000 2021-04-27 +KEOH01000000 2020-12-07 +KEOI01000000 2020-12-07 +KEOJ01000000 2020-12-07 +KEOK01000000 2020-12-07 +KEOL01000000 2020-12-07 +KEOM01000000 2020-12-07 +KEON01000000 2020-12-07 +KEOO01000000 2020-12-07 +KEOP01000000 2020-12-07 +KEOQ01000000 2020-12-07 +KEOR01000000 2020-12-07 +KEOS01000000 2020-12-07 +KEOW01000000 2021-01-13 +KEOX010000000 2020-12-24 +KEOY01000000 2021-02-16 +KEOZ01000000 2021-11-03 +KEPA01000000 2021-02-16 +KEPB01000000 2021-02-16 +KEPC01000000 2021-02-16 +KEPE01000000 2021-01-27 +KEPF01000000 2021-01-28 +KEPG01000000 2021-01-27 +KEPH01000000 2021-01-27 +KEPI01000000 2021-01-27 +KEPJ01000000 2021-01-27 +KEPK01000000 2021-01-27 +KEPL01000000 2021-01-27 +KEPM01000000 2021-01-27 +KEPN01000000 2021-01-27 +KEPO01000000 2021-01-27 +KEPP01000000 2021-01-27 +KEPQ01000000 2021-01-27 +KEPR01000000 2021-01-27 +KEPS01000000 2021-01-27 +KEPT01000000 2021-02-16 +KEPU01000000 2021-01-27 +KEPV0100000000 2021-03-22 +KEPW01000000 2021-02-16 +KEPX01000000 2021-02-16 +KEQB01000000 2022-02-14 +KEQC01000000 2021-03-22 +KEQD01000000 2021-07-27 +KEQE01000000 2021-02-16 +KEQF01000000 2022-05-09 +KEQG01000000 2021-08-23 +KEQH0100000000 2021-09-17 +KEQI01000000 2021-03-09 +KEQJ01000000 2021-03-09 +KEQK01000000 2021-03-09 +KEQL01000000 2021-03-09 +KEQM01000000 2021-03-09 +KEQN01000000 2021-03-09 +KEQO01000000 2021-03-09 +KEQP01000000 2021-03-09 +KEQQ01000000 2021-03-09 +KEQR01000000 2021-03-09 +KEQS01000000 2021-03-09 +KEQT01000000 2021-03-09 +KEQU01000000 2021-03-09 +KEQV01000000 2021-03-09 +KEQW01000000 2021-03-09 +KEQX01000000 2021-03-09 +KEQY01000000 2021-03-09 +KEQZ01000000 2021-03-09 +KERA01000000 2021-03-09 +KERB01000000 2021-03-09 +KERC01000000 2021-03-09 +KERD01000000 2021-03-09 +KERE01000000 2021-03-09 +KERF01000000 2021-03-09 +KERG01000000 2021-03-09 +KERH01000000 2021-03-09 +KERI01000000 2021-03-09 +KERJ01000000 2021-03-09 +KERK01000000 2021-03-09 +KERL01000000 2021-03-09 +KERM01000000 2021-03-09 +KERN01000000 2021-03-09 +KERO01000000 2021-03-09 +KERP01000000 2021-03-09 +KERQ01000000 2021-03-09 +KERR01000000 2021-03-09 +KERS01000000 2021-03-09 +KERT01000000 2021-03-09 +KERU01000000 2021-03-09 +KERV01000000 2021-03-09 +KERW01000000 2021-03-09 +KERX01000000 2021-03-09 +KERY01000000 2021-07-27 +KERZ01000000 2021-07-27 +KESO01000000 2021-08-23 +KESP01000000 2021-06-11 +KESQ01000000 2021-09-01 +KESR01000000 2021-11-03 +KESS01000000 2021-06-30 +KETC01000000 2021-09-02 +KETD01000000 2021-07-22 +KETE01000000 2021-06-30 +KETF01000000 2021-06-30 +KETG01000000 2021-06-30 +KETH01000000 2021-06-30 +KETI01000000 2023-06-30 +KEWZ01000000 2022-07-17 +KEXA01000000 2021-07-27 +KEXB01000000 2022-07-17 +KEXC01000000 2022-07-17 +KEXD01000000 2022-07-17 +KEXE01000000 2021-07-27 +KEXK01000000 2021-09-01 +KEXL01000000 2021-09-01 +KEXM01000000 2021-09-01 +KEXN01000000 2021-09-01 +KEXO01000000 2021-09-01 +KEXP01000000 2021-09-01 +KEXQ01000000 2021-09-01 +KEXR01000000 2021-09-01 +KEXS01000000 2021-09-01 +KEXU01000000 2021-07-27 +KEXW01000000 2022-11-27 +KEXX01000000 2021-09-01 +KEXZ01000000 2021-09-01 +KEYA01000000 2021-11-03 +KEYD01000000 2021-11-03 +KEYE01000000 2021-11-03 +KEYF01000000 2021-11-03 +KEYG01000000 2021-11-03 +KEYH01000000 2021-11-03 +KEYI01000000 2021-11-03 +KEYJ01000000 2021-11-03 +KEYK01000000 2021-11-03 +KEYL01000000 2021-11-03 +KEYM01000000 2021-11-03 +KEYN01000000 2021-11-03 +KEYO01000000 2021-11-03 +KEYP01000000 2021-11-03 +KEYQ01000000 2021-11-03 +KEYR01000000 2021-11-03 +KEYS01000000 2021-11-03 +KEYT01000000 2021-11-03 +KEYU01000000 2021-11-03 +KEYV01000000 2021-11-03 +KEYW01000000 2021-11-03 +KEYX01000000 2021-11-03 +KEYY01000000 2021-11-03 +KEYZ01000000 2021-11-03 +KEZA01000000 2021-11-03 +KEZB01000000 2021-11-03 +KEZC01000000 2021-11-03 +KEZD01000000 2021-11-03 +KEZE01000000 2021-11-03 +KEZF01000000 2021-11-03 +KEZG01000000 2021-11-03 +KEZH01000000 2021-11-03 +KEZI01000000 2021-11-03 +KEZJ01000000 2021-11-03 +KEZK01000000 2021-11-03 +KEZL01000000 2021-11-03 +KEZM01000000 2021-11-03 +KEZN01000000 2021-11-03 +KEZO01000000 2021-11-03 +KEZP01000000 2021-11-03 +KEZQ01000000 2021-11-03 +KEZR01000000 2021-11-03 +KEZS01000000 2021-11-03 +KEZT01000000 2021-11-03 +KEZU01000000 2021-11-03 +KEZV01000000 2021-11-03 +KEZW01000000 2021-11-03 +KEZX01000000 2021-11-03 +KEZY01000000 2021-11-03 +KEZZ01000000 2021-11-03 +KFAA01000000 2021-11-03 +KFAB01000000 2021-11-03 +KFAC01000000 2021-11-03 +KFAD01000000 2021-11-03 +KFAE01000000 2021-11-03 +KFAF01000000 2021-11-03 +KFAG01000000 2021-11-03 +KFAH01000000 2021-11-03 +KFAI01000000 2021-11-03 +KFAJ01000000 2021-11-03 +KFAK01000000 2021-11-03 +KFAL01000000 2021-11-03 +KFAM01000000 2021-11-03 +KFAN01000000 2021-11-03 +KFAO01000000 2021-11-03 +KFAP01000000 2021-11-03 +KFAQ01000000 2021-11-03 +KFAR01000000 2021-11-03 +KFAS01000000 2021-11-03 +KFAT01000000 2021-11-03 +KFAU01000000 2021-11-03 +KFAV01000000 2021-11-03 +KFAW01000000 2021-11-03 +KFAX01000000 2021-11-03 +KFAY01000000 2021-11-03 +KFAZ01000000 2021-11-03 +KFBA01000000 2021-11-03 +KFBB01000000 2021-11-03 +KFBC01000000 2021-11-03 +KFBD01000000 2021-11-03 +KFBE01000000 2021-11-03 +KFBF01000000 2021-11-03 +KFBG01000000 2021-11-03 +KFBH01000000 2021-11-03 +KFBI01000000 2021-11-03 +KFBJ01000000 2021-11-03 +KFBK01000000 2021-11-03 +KFBL01000000 2021-11-03 +KFBM01000000 2021-11-03 +KFBN01000000 2021-11-03 +KFBO01000000 2021-11-03 +KFBQ01000000 2021-11-03 +KFBR01000000 2021-11-03 +KFBS01000000 2022-05-09 +KFBT01000000 2022-01-02 +KFBU01000000 2022-02-14 +KFBV01000000 2022-05-09 +KFBW01000000 2022-05-09 +KFBX01000000 2022-11-28 +KFBY01000000 2022-11-27 +KFBZ01000000 2022-11-27 +KFCA01000000 2022-11-27 +KFCB01000000 2022-11-27 +KFCC01000000 2022-11-28 +KFCD01000000 2022-11-27 +KFCE01000000 2022-11-27 +KFCF01000000 2022-11-27 +KFCG01000000 2022-11-28 +KFCH01000000 2022-11-27 +KFCI01000000 2022-11-28 +KFCJ01000000 2022-11-27 +KFCK01000000 2022-11-27 +KFCL01000000 2022-11-27 +KFCM01000000 2022-11-28 +KFCN01000000 2022-11-28 +KFCO01000000 2022-11-27 +KFCP01000000 2022-11-27 +KFCQ01000000 2022-11-27 +KFCR01000000 2022-11-28 +KFCS01000000 2022-11-27 +KFCT01000000 2022-11-28 +KFCU01000000 2022-11-27 +KFCV01000000 2022-11-27 +KFCW01000000 2022-11-27 +KFCX01000000 2022-11-27 +KFCY01000000 2022-11-27 +KFCZ01000000 2022-11-28 +KFDA01000000 2022-11-27 +KFDB01000000 2022-11-28 +KFDC01000000 2022-11-27 +KFDD01000000 2022-11-27 +KFDE01000000 2022-11-27 +KFDF01000000 2022-11-28 +KFDG01000000 2022-11-28 +KFDH01000000 2022-11-27 +KFDI01000000 2022-11-28 +KFDJ01000000 2022-11-27 +KFDK01000000 2022-11-27 +KFDL01000000 2022-11-27 +KFDM01000000 2022-11-27 +KFDN01000000 2022-11-27 +KFDO01000000 2022-11-27 +KFDP01000000 2022-11-27 +KFDQ01000000 2022-11-27 +KFDR01000000 2022-11-28 +KFDS01000000 2022-11-28 +KFDT01000000 2022-11-27 +KFDU01000000 2022-11-27 +KFDV01000000 2022-11-27 +KFDW01000000 2022-11-27 +KFDX01000000 2022-11-27 +KFDY01000000 2022-11-28 +KFDZ01000000 2022-11-27 +KFEA01000000 2022-11-28 +KFEB01000000 2022-11-27 +KFEC01000000 2022-11-27 +KFED01000000 2022-11-27 +KFEE01000000 2022-11-28 +KFEF01000000 2022-11-28 +KFEG01000000 2022-11-27 +KFEH01000000 2022-11-27 +KFEI01000000 2022-11-27 +KFEJ01000000 2022-11-28 +KFEK01000000 2022-11-28 +KFEL01000000 2022-11-28 +KFEM01000000 2022-11-28 +KFEN01000000 2022-11-27 +KFEO01000000 2022-11-28 +KFEP01000000 2022-11-27 +KFEQ01000000 2022-11-27 +KFER01000000 2022-11-27 +KFES01000000 2022-11-27 +KFET01000000 2022-11-27 +KFEU01000000 2022-11-27 +KFEV01000000 2022-11-27 +KFEW01000000 2022-11-27 +KFEX01000000 2022-11-27 +KFEY01000000 2022-11-28 +KFEZ01000000 2022-11-27 +KFFA01000000 2022-11-28 +KFFB01000000 2022-11-28 +KFFC01000000 2022-11-27 +KFFD01000000 2022-11-27 +KFFE01000000 2022-11-27 +KFFF01000000 2022-11-27 +KFFG01000000 2022-11-28 +KFFH01000000 2022-11-27 +KFFI01000000 2022-11-27 +KFFJ01000000 2022-11-27 +KFFK01000000 2022-11-27 +KFFL01000000 2022-11-27 +KFFM01000000 2022-11-27 +KFFN01000000 2022-06-26 +KFFO01000000 2021-12-12 +KFFP01000000 2022-02-14 +KFFQ01000000 2022-07-17 +KFFR01000000 2022-01-29 +KFFT01000000 2023-01-04 +KFFU01000000 2023-01-04 +KFFV01000000 2023-01-04 +KFFW01000000 2023-01-04 +KFFX01000000 2023-01-04 +KFFY01000000 2023-01-04 +KFFZ01000000 2023-01-04 +KFGA01000000 2023-01-04 +KFGB01000000 2023-01-04 +KFGC01000000 2023-01-04 +KFGD01000000 2023-01-04 +KFGE01000000 2023-01-04 +KFGF01000000 2023-01-04 +KFGG01000000 2023-01-04 +KFGH01000000 2023-01-04 +KFGI01000000 2023-01-04 +KFGJ01000000 2023-01-04 +KFGK01000000 2023-01-04 +KFGL01000000 2023-01-04 +KFGM01000000 2023-01-04 +KFGN01000000 2023-01-04 +KFGO01000000 2023-01-04 +KFGP01000000 2023-01-04 +KFGQ01000000 2023-01-04 +KFGR01000000 2023-01-04 +KFGS01000000 2023-01-04 +KFGT01000000 2023-01-04 +KFGU01000000 2023-01-04 +KFGV01000000 2023-01-04 +KFGW01000000 2023-01-04 +KFGX01000000 2023-01-04 +KFGY01000000 2023-01-04 +KFGZ01000000 2023-01-04 +KFHA01000000 2023-01-04 +KFHB01000000 2023-01-04 +KFHC01000000 2023-01-04 +KFHD01000000 2023-01-04 +KFHE01000000 2023-01-04 +KFHF01000000 2023-01-04 +KFHG01000000 2023-01-04 +KFHH01000000 2023-01-04 +KFHI01000000 2023-01-04 +KFHJ01000000 2023-01-04 +KFHK01000000 2023-01-04 +KFHL01000000 2023-01-04 +KFHM01000000 2023-01-04 +KFHN01000000 2023-01-04 +KFHO01000000 2023-01-04 +KFHP01000000 2023-01-04 +KFHQ01000000 2023-01-04 +KFHR01000000 2023-01-04 +KFHS01000000 2023-01-04 +KFHT01000000 2023-01-04 +KFHU01000000 2023-01-04 +KFHV01000000 2023-01-04 +KFHW01000000 2023-01-04 +KFHX01000000 2023-01-04 +KFHY01000000 2023-01-04 +KFHZ01000000 2023-01-04 +KFIA01000000 2023-01-04 +KFIB01000000 2023-01-04 +KFIC01000000 2023-01-04 +KFID01000000 2023-01-04 +KFIE01000000 2023-01-04 +KFIF01000000 2023-01-04 +KFIG01000000 2023-01-04 +KFIH01000000 2023-01-04 +KFII01000000 2023-01-04 +KFIJ01000000 2023-01-04 +KFIK01000000 2023-01-04 +KFIL01000000 2023-01-04 +KFIM01000000 2023-01-04 +KFIN01000000 2023-01-04 +KFIO01000000 2023-01-04 +KFIP01000000 2023-01-04 +KFIQ01000000 2023-01-04 +KFIR01000000 2023-01-04 +KFIS01000000 2022-07-15 +KFIT01000000 2022-07-17 +KFIU01000000 2022-07-15 +KFIV01000000 2022-07-15 +KFIW01000000 2022-05-09 +KFIY01000000 2023-01-15 +KFIZ01000000 2022-02-02 +KFJA01000000 2022-02-02 +KFJB01000000 2022-02-02 +KFJC01000000 2022-02-02 +KFJD01000000 2022-02-02 +KFJE01000000 2022-02-02 +KFJF01000000 2022-02-02 +KFJG01000000 2022-02-02 +KFJH01000000 2022-02-02 +KFJI01000000 2022-02-02 +KFJJ01000000 2022-02-02 +KFJK01000000 2022-02-02 +KFJL01000000 2022-02-02 +KFJM01000000 2022-02-02 +KFJN01000000 2022-02-02 +KFJO01000000 2022-02-02 +KFJP01000000 2022-02-02 +KFJQ01000000 2022-02-02 +KFJR01000000 2022-02-02 +KFJS01000000 2022-02-02 +KFJT01000000 2022-02-02 +KFJU01000000 2022-02-02 +KFJV01000000 2022-02-02 +KFJW01000000 2022-02-02 +KFJX01000000 2022-02-02 +KFJY01000000 2022-02-02 +KFJZ01000000 2022-02-02 +KFKA01000000 2022-02-02 +KFKB01000000 2022-02-02 +KFKC01000000 2022-02-02 +KFKD01000000 2022-02-02 +KFKE01000000 2022-02-02 +KFKF01000000 2022-02-02 +KFKG01000000 2022-02-02 +KFKH01000000 2022-02-02 +KFKI01000000 2022-02-02 +KFKJ01000000 2022-02-02 +KFKK01000000 2022-02-02 +KFKL01000000 2022-02-02 +KFKM01000000 2022-02-02 +KFKN01000000 2022-02-02 +KFKO01000000 2022-02-02 +KFKP01000000 2022-02-02 +KFKQ01000000 2022-02-02 +KFKR01000000 2022-02-02 +KFKS01000000 2022-02-02 +KFKT01000000 2022-02-02 +KFKU01000000 2022-02-02 +KFKV01000000 2022-02-02 +KFKW01000000 2022-02-02 +KFKX01000000 2022-02-02 +KFKY01000000 2022-02-02 +KFKZ01000000 2023-04-17 +KFLA01000000 2023-01-30 +KFLB01000000 2023-01-30 +KFLD010000000 2022-08-09 +KFLE01000000 2022-08-09 +KFLF01000000 2022-07-24 +KFLG01000000 2022-07-15 +KFLH01000000 2023-04-17 +KFLI01000000 2023-04-17 +KFLJ01000000 2023-04-17 +KFLK01000000 2023-04-17 +KFLL01000000 2023-04-17 +KFLM01000000 2023-04-17 +KFLN01000000 2023-04-17 +KFLO01000000 2023-04-17 +KFLP01000000 2023-04-17 +KFLQ01000000 2023-04-17 +KFLR01000000 2023-04-17 +KFLS01000000 2023-04-17 +KFLT01000000 2023-04-17 +KFLU01000000 2023-04-17 +KFLV01000000 2023-04-17 +KFLW01000000 2023-04-17 +KFLX01000000 2023-04-17 +KFLY01000000 2023-04-17 +KFLZ01000000 2023-04-17 +KFMA01000000 2023-04-17 +KFMB01000000 2023-04-17 +KFMC01000000 2023-04-17 +KFMD01000000 2023-04-17 +KFME01000000 2023-04-17 +KFMF01000000 2023-04-17 +KFMG01000000 2023-04-17 +KFMH01000000 2023-04-17 +KFMI01000000 2023-04-17 +KFMJ01000000 2023-04-17 +KFMK01000000 2023-04-17 +KFML01000000 2023-04-17 +KFMM01000000 2023-04-17 +KFMN01000000 2023-04-17 +KFMO01000000 2023-04-17 +KFMP01000000 2023-04-17 +KFMQ01000000 2023-04-17 +KFMR01000000 2023-04-17 +KFMS01000000 2023-04-17 +KFMT01000000 2023-04-17 +KFMU01000000 2023-04-17 +KFMV01000000 2023-04-17 +KFMW01000000 2023-04-17 +KFMX01000000 2023-04-17 +KFMY01000000 2023-04-17 +KFMZ01000000 2023-04-17 +KFNA01000000 2023-04-17 +KFNB01000000 2023-04-17 +KFNC01000000 2023-04-17 +KFND01000000 2023-04-17 +KFNE01000000 2023-04-17 +KFNF01000000 2023-04-17 +KFNG01000000 2023-04-17 +KFNH01000000 2023-04-17 +KFNI01000000 2023-04-17 +KFNJ01000000 2023-04-17 +KFNK01000000 2023-04-17 +KFNL01000000 2023-04-17 +KFNM01000000 2023-04-17 +KFNN01000000 2023-04-17 +KFNO01000000 2023-04-17 +KFNP01000000 2023-04-17 +KFNQ01000000 2023-04-17 +KFNR01000000 2023-04-17 +KFNS01000000 2023-04-17 +KFNT01000000 2023-04-17 +KFNU01000000 2023-04-17 +KFNV01000000 2023-04-17 +KFNW01000000 2023-04-17 +KFNX01000000 2023-04-17 +KFNY01000000 2023-04-17 +KFNZ01000000 2023-04-17 +KFOA01000000 2023-04-17 +KFOB01000000 2023-04-17 +KFOC01000000 2023-04-17 +KFOD01000000 2023-04-17 +KFOE01000000 2023-04-17 +KFOF01000000 2023-04-17 +KFOG01000000 2023-04-17 +KFOH01000000 2023-04-17 +KFOI01000000 2023-04-17 +KFOJ01000000 2023-04-17 +KFOK01000000 2023-04-17 +KFOL01000000 2023-04-17 +KFOM01000000 2023-04-17 +KFON01000000 2023-04-17 +KFOO01000000 2023-04-17 +KFOP01000000 2023-04-17 +KFOQ01000000 2023-04-17 +KFOR01000000 2023-04-17 +KFOS01000000 2023-04-17 +KFOT01000000 2023-04-17 +KFOU01000000 2023-04-17 +KFOV01000000 2023-04-17 +KFOW01000000 2023-04-17 +KFOX01000000 2023-04-17 +KFOY01000000 2023-04-17 +KFOZ01000000 2023-04-17 +KFPA01000000 2023-04-17 +KFPB01000000 2023-04-17 +KFPC01000000 2023-04-17 +KFPD01000000 2023-04-17 +KFPE01000000 2023-04-17 +KFPF01000000 2023-04-17 +KFPG01000000 2023-04-17 +KFPH01000000 2023-04-17 +KFPI01000000 2023-04-17 +KFPJ01000000 2023-04-17 +KFPK01000000 2023-04-17 +KFPL01000000 2023-04-17 +KFPM01000000 2023-04-17 +KFPN01000000 2023-04-17 +KFPO01000000 2023-04-17 +KFPP01000000 2023-04-17 +KFPQ01000000 2023-04-17 +KFPR01000000 2023-04-17 +KFPU01000000 2022-07-15 +KFPV01000000 2022-04-21 +KFPW01000000 2022-04-05 +KFPX01000000 2022-04-05 +KFPY01000000 2022-04-21 +KFPZ01000000 2022-04-21 +KFQA01000000 2022-04-05 +KFQB01000000 2022-04-21 +KFQC01000000 2022-04-05 +KFQD01000000 2022-04-21 +KFQE01000000 2022-04-05 +KFQF01000000 2022-04-21 +KFQG01000000 2022-04-21 +KFQH01000000 2022-04-21 +KFQI01000000 2022-04-05 +KFQJ01000000 2022-04-21 +KFQK01000000 2022-04-21 +KFQL01000000 2022-04-21 +KFQM01000000 2022-04-21 +KFQN01000000 2022-04-21 +KFQO01000000 2022-04-21 +KFQP01000000 2022-04-21 +KFQQ01000000 2022-04-21 +KFQR01000000 2022-04-21 +KFQS01000000 2022-04-05 +KFQT01000000 2022-04-21 +KFQU01000000 2022-04-21 +KFQV01000000 2022-04-21 +KFQW01000000 2022-04-05 +KFQX01000000 2022-04-05 +KFQY01000000 2022-04-21 +KFQZ01000000 2022-04-21 +KFRA01000000 2022-09-21 +KFRB01000000 2022-09-21 +KFRC01000000 2022-09-21 +KFRD01000000 2022-09-21 +KFRE01000000 2022-09-21 +KFRG01000000 2023-04-17 +KFRH01000000 2023-04-17 +KFRI01000000 2023-04-17 +KFRJ01000000 2023-04-17 +KFRK01000000 2023-04-17 +KFRL01000000 2023-04-17 +KFRM01000000 2023-04-17 +KFRN01000000 2023-04-17 +KFRO01000000 2023-04-17 +KFRP01000000 2023-04-17 +KFRQ01000000 2023-04-17 +KFRR01000000 2023-04-17 +KFRS01000000 2023-04-17 +KFRT01000000 2023-04-17 +KFRU01000000 2023-04-17 +KFRV01000000 2023-04-17 +KFRW01000000 2023-04-17 +KFRX01000000 2023-04-17 +KFRY01000000 2023-04-17 +KFRZ01000000 2023-04-17 +KFSA01000000 2023-04-17 +KFSB01000000 2023-04-17 +KFSC01000000 2023-04-17 +KFSD01000000 2023-04-17 +KFSE01000000 2023-04-17 +KFSF01000000 2023-04-17 +KFSG01000000 2023-04-17 +KFSH01000000 2023-04-17 +KFSI01000000 2023-04-17 +KFSJ01000000 2023-04-17 +KFSK01000000 2023-04-17 +KFSL01000000 2023-04-17 +KFSM01000000 2023-04-17 +KFSN01000000 2023-04-17 +KFSO01000000 2023-04-17 +KFSP01000000 2023-04-17 +KFSQ01000000 2023-04-17 +KFSR01000000 2023-04-17 +KFSS01000000 2023-04-17 +KFST01000000 2023-04-17 +KFSU01000000 2023-04-17 +KFSV01000000 2023-04-17 +KFSW01000000 2023-04-17 +KFSX01000000 2023-04-17 +KFSY01000000 2023-04-17 +KFSZ01000000 2023-04-17 +KFTA01000000 2023-04-17 +KFTB01000000 2023-04-17 +KFTC01000000 2023-04-17 +KFTD01000000 2023-04-17 +KFTE01000000 2023-04-17 +KFTF01000000 2023-04-17 +KFTG01000000 2023-04-17 +KFTH01000000 2023-04-17 +KFTI01000000 2023-04-17 +KFTJ01000000 2023-04-17 +KFTK01000000 2023-04-17 +KFTL01000000 2023-04-17 +KFTM01000000 2023-04-17 +KFTN01000000 2023-04-17 +KFTO01000000 2023-04-17 +KFTP01000000 2023-04-17 +KFTQ01000000 2023-04-17 +KFTR01000000 2023-04-17 +KFTS01000000 2023-04-17 +KFTT01000000 2023-04-17 +KFTU01000000 2023-04-17 +KFTV01000000 2023-04-17 +KFTW01000000 2023-04-17 +KFTX01000000 2023-04-17 +KFTY01000000 2023-04-17 +KFTZ01000000 2023-04-17 +KFUA01000000 2023-04-17 +KFUB01000000 2023-04-17 +KFUC01000000 2023-04-17 +KFUD01000000 2023-04-17 +KFUE01000000 2023-04-17 +KFUF01000000 2023-04-17 +KFUG01000000 2022-05-25 +KFUH01000000 2022-11-27 +KFUJ01000000 2022-11-27 +KFUK01000000 2022-07-15 +KFUL01000000 2022-05-17 +KFUM01000000 2022-08-09 +KFUN01000000 2022-05-17 +KFUO01000000 2022-11-27 +KFUQ01000000 2022-11-27 +KFUR01000000 2022-08-17 +KFUS01000000 2023-01-04 +KFUT01000000 2023-01-04 +KFUU01000000 2023-01-04 +KFUV01000000 2023-01-04 +KFUW01000000 2023-01-04 +KFUX01000000 2023-01-04 +KFUZ01000000 2023-01-04 +KFVA01000000 2023-01-04 +KFVB01000000 2023-01-04 +KFVC01000000 2023-01-04 +KFVD01000000 2023-01-04 +KFVE01000000 2023-01-04 +KFVF01000000 2023-01-04 +KFVG01000000 2023-01-04 +KFVH01000000 2023-01-04 +KFVI01000000 2022-11-27 +KFVJ01000000 2023-01-04 +KFVL01000000 2023-01-04 +KFVM01000000 2023-01-04 +KFVN01000000 2023-01-04 +KFVO01000000 2023-01-04 +KFVP01000000 2023-01-04 +KFVR01000000 2023-01-30 +KFVT01000000 2023-01-30 +KFVU01000000 2023-01-26 +KFVW01000000 2023-01-30 +KFVZ01000000 2022-09-30 +KFWA01000000 2022-09-30 +KFWB01000000 2022-09-29 +KFWC01000000 2022-10-02 +KFWD01000000 2022-09-29 +KFWE01000000 2022-09-30 +KFWF01000000 2022-09-29 +KFWG01000000 2022-09-30 +KFWH01000000 2022-09-29 +KFWI01000000 2022-09-30 +KFWJ01000000 2022-09-29 +KFWK01000000 2022-09-29 +KFWL01000000 2022-09-29 +KFWM01000000 2022-09-30 +KFWN01000000 2022-10-02 +KFWO01000000 2022-09-29 +KFWP01000000 2022-09-30 +KFWQ01000000 2022-09-29 +KFWR01000000 2023-01-30 +KFWS01000000 2023-01-06 +KFWT01000000 2023-01-06 +KFWU01000000 2022-10-16 +KFWX01000000 2023-02-12 +KFWY01000000 2023-02-10 +KFWZ01000000 2023-01-30 +KFXB01000000 2023-01-30 +KFXD01000000 2023-01-24 +KFXE01000000 2023-01-24 +KFXF01000000 2023-01-25 +KFXG01000000 2023-01-25 +KFXH01000000 2023-01-25 +KFXI01000000 2023-01-25 +KFXJ01000000 2023-01-25 +KFXK01000000 2023-01-25 +KFXL01000000 2023-01-25 +KFXM01000000 2023-01-25 +KFXN01000000 2023-01-25 +KFXO01000000 2023-01-25 +KFXP01000000 2023-01-25 +KFXQ01000000 2023-01-25 +KFXS01000000 2023-03-06 +KFXT01000000 2023-03-06 +KHDF01000000 2023-09-30 +KHUT01000000 2023-03-05 +KHUU01000000 2023-03-05 +KHUV01000000 2023-07-26 +KHUY01000000 2023-09-02 +KHUZ01000000 2023-09-02 +KHVA01000000 2023-06-12 +KHVB01000000 2023-04-28 +KHVC01000000 2023-04-30 +KHVD01000000 2023-04-30 +KHVE01000000 2023-04-28 +KHVF01000000 2023-04-28 +KHVG01000000 2023-04-30 +KHVH01000000 2023-05-03 +KHVQ01000000 2023-05-12 +KHVR01000000 2023-06-30 +KHZG01000000 2023-06-30 +KHZI01000000 2023-06-30 +KHZK01000000 2023-06-30 +KIAV01000000 2023-09-10 +KIAY01000000 2023-09-10 +KIBV01000000 2023-10-05 +KICC01000000 2023-11-09 +KICD01000000 2024-01-19 +KIDC01000000 2023-11-22 +KIDD01000000 2023-11-26 +KIDE01000000 2023-11-26 +KIDF01000000 2023-11-26 +KIDG01000000 2023-11-26 +KIDH01000000 2023-11-26 +KIDI01000000 2023-11-26 +KIDJ01000000 2023-11-26 +KIDK01000000 2023-11-26 +KIDL01000000 2023-11-26 +KIDM01000000 2023-11-26 +KIDN01000000 2023-11-26 +KIDO01000000 2023-11-26 +KIDP01000000 2023-11-26 +KIDQ01000000 2023-11-26 +KIDV01000000 2024-01-16 +TAAA01000000 2024-01-16 +TAAB01000000 2024-01-16 +TAAC01000000 2024-01-16 +TAAD01000000 2023-12-27 +TAAF01000000 2024-01-16 +TAAG01000000 2024-01-16 +KAAA01000000 2019-05-10