Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for extra DNA/RNA modified bases. #945

Closed
a-slide opened this issue Apr 1, 2021 · 39 comments
Closed

Support for extra DNA/RNA modified bases. #945

a-slide opened this issue Apr 1, 2021 · 39 comments

Comments

@a-slide
Copy link

a-slide commented Apr 1, 2021

Hi @igvteam,

From version 2.1 IGV is able to display CpG methylation based on Bisulfite induced mismatches with the reference sequence. This is a very nice a feature which allows to visualise the CpG methylation at single read level. Since then, epigenetic and epitranscriptomic methods have evolved and there are now more modifications which can be detected at single molecule resolution, in particular with Oxford Nanopore sequencing.

In order to avoid the proliferation of non-standard formats to store these modifications there was a long discussion with the samtools team on how to represent all RNA and DNA modifications within SAM/BAM format (samtools/hts-specs#362), leading to the proposition to use additional flags in the specification to store both modification positions (Mm) and probabilities (Ml) at read level. There can also be multiple modification tracks included within a single read. Here is the link to the Pull Request currently being considered: samtools/hts-specs#418. Hopefully the PR will be merged soon and will be part of the official SAM specification.

Several Oxford Nanopore tools to detect base modifications already implement the specification ahead of the official release, including Megalodon (https://github.com/nanoporetech/megalodon) and Guppy basecaller.

Would you be interested to start a discussion on implementing those new tags in IGV ?
We can provide sample datasets and are happy to see how we could help with the implementation.

@a-slide
Copy link
Author

a-slide commented Apr 1, 2021

I have also raised a similar feature request in Jbrowse https://github.com/GMOD/jbrowse/issues/1588

@jrobinso
Copy link
Contributor

jrobinso commented Apr 1, 2021

Yes I would be interested.

@a-slide
Copy link
Author

a-slide commented Apr 1, 2021

Hi Jim.
Great news. How would you like to proceed ?

@a-slide
Copy link
Author

a-slide commented Apr 1, 2021

By the way, there is also a PR pending in the HTSlib repo to support modification information parsing via the API. Hopefully this one will also get merged quite soon.

samtools/htslib#1132

@jrobinso
Copy link
Contributor

jrobinso commented Apr 1, 2021

@a-slide Well the first step would be some sample data to see if the htsjdk (https://github.com/samtools/htsjdk) can parse it, and if the necessary information makes it through to create the desired track. You can probably determine this by loading a test file into IGV, right-clicking the alignment, and selecting "copy read details to clipboard". The htslib PR is not directly relevant for IGV.

If no modifications of the htsjdk are required then some description of what the track would look like, maybe with a sketch, would be the next step.

And to be clear this is the IGV desktop repo (as opposed to igv.js).

@a-slide
Copy link
Author

a-slide commented Apr 1, 2021

Yes, it sounds like a good plan.
I will try to see if htsjdk can load the extra bam fields in IGV first and I will come back to you.
I am also happy to share a BAM file if you want to have a look as well

@a-slide
Copy link
Author

a-slide commented Apr 1, 2021

And yes IGV desktop would be a good start

@jrobinso
Copy link
Contributor

jrobinso commented Apr 1, 2021

For igv.js we might collaborate with the JBrowse team (@cmdcolin) to write any needed parsers, no reason to do that twice. Or maybe that's not needed. In any event a test BAM file would be useful.

@cmdcolin
Copy link

cmdcolin commented Apr 1, 2021

@jrobinso would be happy to collab but possibly not much actual code could be shared because it likely ends up with app-specific code that parses the MM (where the modifications are, delta encoded) and MP/ML tags (probabilities of modification)

I hand-edited some of the SAM files on the hts-specs issue and converted them to BAMs on our "volvox" organism with a ctgA
test_methylation_bams.tar.gz

These are tiny data files that have some descriptions seen in samtools/hts-specs#418
Having larger scale test files would be cool too

@a-slide
Copy link
Author

a-slide commented Apr 2, 2021

Hi @jrobinso,

I gave it a quick try with @cmdcolin hand crafted reads and I am not quite sure it works straight out of the box.

Here is the expected line from the BAM file:
r1 0 ctgA 100 0 36M * 0 0 AGCTCTCCAGAGTCGNACGCCATYCGCGCGCCACCA * Mm:Z:C+m,2,2,1,4,1;C+h,6,7;N+n,15,2; Ml:B:C,128,153,179,204,230,159,6,215,240

and this this the result from what I got via IGV

Read name = r1
Read length = 36bp
----------------------
Mapping = Primary @ MAPQ 0
Reference span = ctgA:100-135 (+) = 36bp
Cigar = 36M
Clipping = None
----------------------
Ml = [not shown]

Mm = C+m,2,2,1,4,1;C+h,6,7;N+n,15,2;<hr>Location = ctgA:120
Base = C @ QV 126

Alignment start position = ctgA:100
AGCTCTCCAGAGTCGNACGCCATYCGCGCGCCACCA

Looks like the Mn field has an extra bit added and the Ml field is not parsed.

@jrobinso
Copy link
Contributor

jrobinso commented Apr 2, 2021

@a-slide Do you mean "Mm" field? That looks like a formatting error in the IGV output, the "


should be a new line. What do you mean by "an extra bit added"?

@a-slide
Copy link
Author

a-slide commented Apr 2, 2021

Yes sorry Mm. By extra bit I meant the horizontal ruler + location string (;<hr>Location = ctgA:120) which is not in the original tag

@jrobinso
Copy link
Contributor

jrobinso commented Apr 2, 2021

@a-slide Any ideas on the desired look? Something like "bisulfite" mode?

@a-slide
Copy link
Author

a-slide commented Apr 6, 2021

Actually, I think the preview from @cmdcolin in Jbrowse is probably quite close to the desirable look

https://user-images.githubusercontent.com/6511937/113356791-dbb89900-9310-11eb-817e-b811997dc87f.png

Multiple modifications on the same read are visualised using different color scales. As I mentioned in the parallel JBrowse thread (GMOD/jbrowse-components#1869), there will be cases where multiple modifications might be called at the same position, but I think this could be solved by showing only the one with the highest probability (from the Ml tag).

@a-slide
Copy link
Author

a-slide commented Apr 9, 2021

I generated a BAM file with Megalodon containing reads aligned on the human chromosome 20 with around 5X of coverage.
It contains predicted modification sites for both 5mC and 5hmC and follows the proposed SAM specification.
It should be mostly 5mC and a few 5hmC.

I checked and it loads into the last version of IGV desktop, but obviously without modifications displayed
Files can be downloaded from: https://nanoporetech.box.com/s/82pnw3lhusfs93s0vj7azxiz4x7kxabo

@jrobinso
Copy link
Contributor

jrobinso commented Apr 9, 2021

@a-slide Thanks. I haven't gotten into this yet but hope to in the next few weeks.

@a-slide
Copy link
Author

a-slide commented Apr 9, 2021

We might be able to offer help to implement the feature if you need help

@jrobinso
Copy link
Contributor

@a-slide always welcome help. I'm out of the office until April 19 without much time to think about this until then.

@jrobinso jrobinso modified the milestones: 2.10, 2.9.5 Apr 30, 2021
@jrobinso
Copy link
Contributor

jrobinso commented May 2, 2021

@a-slide OK this if finally at the top of the list, and will be my main activity next week. One small thing that would be helpful is a PDF of the latest proposed spec for these tags.

@a-slide
Copy link
Author

a-slide commented May 2, 2021

Hi @jrobinso,
There isn't a PDF available yet and the GitHub discussion is arguably hard to follow. I am off until Tuesday but I can write down the precise proposed description of the new tags as implemented in both Megalodon and Guppy, first thing in the morning.

@jrobinso
Copy link
Contributor

jrobinso commented May 3, 2021

@a-slide That would be helpful if not too much bother, but I think I have it figured out from the PR branch, examples, and past discussions. I will parse this in IGV for expediency, but it feels like this should ultimately be done in the HTSJDK.

When color coding methylation from bisulfite sequencing we settled on red and blue, I don't remember why but probably no particular reason. Has any thought been given to color coding conventions for other modifications, now that we have a potentially large set?

@jrobinso jrobinso removed this from the 2.9.5 milestone May 4, 2021
@a-slide
Copy link
Author

a-slide commented May 4, 2021

Hi @jrobinso,

The proposed specification defines the new Mm and Ml tags (Note that they will be capitalised as MM and ML when officially integrated in the spec)
The latex version of the updated documentation lives there https://github.com/jkbonfield/hts-specs/blob/7fafbdf65291da9377d9e17736c4e4bb06fea9a6/SAMtags.tex#L477
I also made a PDF version, which is easier to read SAMtags.pdf. I think It is quite clear, but do not hesitate to ask.

I completely agree with you, it should ideally be parsed by HTSJDK. There is a PR in the C library samtools/htslib#1132, but I haven't seen anything in the Java one. This will probably follow when it becomes mainstream.

I think the Red and Blue codes for bisulfite made sense, as it was quite intuitive and bisulfite seq gives a clear binary choice. With this new spec, there is now a modification likelyhood score for each bases, so instead of representing as red or blue, I would probably suggest to use a light to dark color scale for each modification. I am not aware of a color coding convention for DNA/RNA mods

I hope this helps

jrobinso added a commit that referenced this issue May 6, 2021
TODO
* parse and use likelihood scores.
* resolve multiple modifications on a single base
* add color scheme by modification type
* add modificaton info to popup text
@jrobinso
Copy link
Contributor

jrobinso commented May 10, 2021

@a-slide There is prototype ready for testing on the nightly snapshot page https://software.broadinstitute.org/software/igv/download_snapshot. All the tests in the draft spec have been implemented as unit tests and work correctly. However I have been chasing a problem with a few negative strand reads in your test data, and suspect there's a problem with the data. In both cases I run out of read sequence before all modifications listed in the "Mm" tag are found. In this case I don't think the Mm tag can be trusted, and am unsure what to do.

Here's an example, from read name d49230b4-7719-4e32-82ca-fded86550a16, flags=16 (negative read strand)

The Mm tag and read sequence are below, as well as the complete SAM record. The modification is "C", however as the read strand is reverse complemented we need to look for "G". The tag then requires at least 4488 "G"s, this is the sum of implied modifications (length of mm) + the skipped Gs. However there are only 4246 in the sequence

Mm:Z:C+m,37,3,844,39,6,7,27,53,19,13,2,8,0,31,3,1,1,0,4,11,11,2,14,27,129,406,5,25,234,13,12,51,362,102,445,145,13,19,6,2,121,9,4,32,33,54,100,7,5,105,10,22,0,1,10,4,2,9,2,38,9,31,31,101,305,29,26,5,125,1,1,6,39,5;C+h;
GCATCTCTATCTTAGGACTATTTATTACTTAATTTACATTCCATTATTGTGGCAGATTGTGGTTGTCATTTGCTTCAGAATCAGTGATAGTGAAATTTACCTCTACTTCAGGACATTCATGGCTGGAATTATCTGTTTTATATTGCTCAAACGAGTCCAGATGCCCCATACCTGTACTCTTTGCCGTCATGAAACTTTGGAAACTACGCATTTGCTCCAGGATATCCTGTTTTTAATGTAGTTTGTCTTAGACATGGAGTCCTGAATCTCTGAAAGTCTCCAGTGAGCAACTCTTAGGGACAGAAGTGACAAGGCCCATCAGGGGAGTCTCTTGTGGACTGGCTTTCCTTTGAGGGAGTAAATTCAGAGTCATACCTGTGCCATGCAGAGTAATTCTACATGTTCACAATAGTATGTGTTGACACTTCCAAGAGTATAAAGCAATTAATTCATTCAGCAGATGTTCTTTTCCAGTACACACTACATTCAAAGCCTTAAGCACAGTGACATGTGCTATATATACTTCTTCAAAACAGTTCTTACCATCAATAGCCGAGACTGGTGGCAGGCAGGCAGGTGGCAAAGAGATACCACAAACAGCTACAGTTTGAAAAAAAGTAAAGTGTCTAAATCTTTTAGAGTTATTCTAAAGGTGCTATTTAAGCCCCTTGTGTGGAAGATGTAAGCAAGCTTGAAGATTGTGTTTCCAAGACTGAAGGAAGCAAAGGGAATGGGTGGGAGGTTGGTGGTGGTGGAGTTTGGGAAGAGATGGTGGCTCTGAGTGGAGGTGGGAAGCGGATTGTTTTAGAGAGAATGTCTCTTGCCAGCAGTTCACAGCAGGATGGAACTGGCTGAAACTGGACAACACCATTGGACCACACTGGGACTTATTTGTGATTGGCCTCATTGTTCTCAGCTGGCATTTGCTTAGAAATCACCATGGGTAGGATGCGGATCTACAGGAAAACCTGCTCGGGAATCAGTTCTTTCCCAAGGTATCCCCACTAAATAAACAGTTTCCCATCCAAATCAAGAGTCGCTGCAGTTTCCACTCAGGGCTGTGATGAGGCGAACAGGCGCTGAGGACCATCCCTGAAGGCAACTTCAGACTTCATAGCCTTACGTGGAAAACCCTTTGGGATGCTGAACTGGTCACCTAAGACCTTGTTACCAATCTGTCATCTTGGTGACCTAGTCCCACGTTATGAATAAAAAGACCACCCATTTTCATGTTGTTAGAACAACCTCCCCTCTGTCAAGAGGACACTGGAGTTTCCTGGCTCACAGACAAACTAAGGTGAAGAGAAGGGGGAGTTTGGAGAAGGCAGAAATCAGATCCCTCAGGAACTATGATAAAGACACAAATATACAAATAGACCTTGTACAAGCACATCCTATAGGAATGACCTGTGAGAGACTCTGGGCTAACCCAGTCCCCAGCTTCCCGGGAGCATGTCGTACCTGAACGAGGGAATGGGGGTTGACCCGGGCTCTTCACTGAGGCCTCTCTCAGAAACCTCACTCAGTGCAGCTGTGTTAGTGAACAAAGCCAGTACAGCATCACACCCCTCTCCTCCACCCTCATCAGAACCTAGACTGCTCCTGGGGCGTCCTTAGTACCCCTTAGAAGGAGATTATTCCAGCCTCCTAGGATAAAAGCTAAAAGGCCCAGATTCTCTGGCTTCTCTGACAGGCAAATCAGGGGCCCAGGCCTGGGGACAGGGGCTGTGAGCAGGAAGTGTAAGGAGGCCTGGGACATATCAAGGGCCAGGCTCAAATCTAGCTCAGATATTTGTCTTTTCTTCTTCTTCTTCCTTCCTTCCTTCTTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCCTCTTCCTCTTCCCTCTTCCTCTTCCTCTTCTTCTTCTTCTTCTTCTCCTGCTCCTGCTTCTTCTTCTTCTTCTTCTTCCTCCTCCTCTTCTTCTTCTTCTTCCTCCTCTTCTTCTTCTTCTCCAGATGTTGACTTCTTCTTCTTCTTGTTCTTCTTCTTTCTTCCTCTTCCTCTTCTTCTTCTAGCTAGCCTCTTCTTCTTCTTCCTCTTCTTCTTCTTCTTCTCAGATATTTATTTCTTCTTCTTCTTCTTCTTCTTCCTTCCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTCCTTCTCCTTCTCCTCCTCCTTCTCCTTCTCTGCCTTCTCTTTTCTCTAACCTTCTCTTCTTCCTTTTCTCTCTTCTTATTCTTCTTCATCTTCGTCTTCTACTTTTCTTTTCTTTTTTTTTGGAGGCGCAATTTCCCTCTGTCCCCCAGGCTGGAGTGCAGTGGCAAGATCTCGACTCACTGGAACCTCTGCCTCCCGGGTTCAGGTGATTCTCCTGCTACCTCAGCCTCCTGAATAACTGGGATTACAGGTGCCTGCCACCACGCCCGGCTAATTTTTTGTATTTTTAGTAGAGATGGGGTTTCACCATGTTGGCCAGGCTGGTCTCAAACTCCTGACCTCAAGTGATCCTCCAAAGTGCTGGGATTGCAGGCATGAGCCACCACACCCAGCCAATATTTGACTTCTGCCCAGACCTCAGTTTTCCTGTGTGCAAAAAGGGAAGAATAATGCCTATCTTAGACAACTGATATTAAGATTAAGTGGGATAATGGATGTAAAGAGACTGGCTGGGCCTGGCACCTAGAATGAGTTCCATAATTGGTGCTTTTTAATGTCTTTAAAAACTCATGGCAAATCCATTGGGGAGAGAGCTGAGTTGGTAACAATCTGTGTGGCTTCAGCGCTTGCAGTTGGTTCTCAGCTAATGTGCTAGGTGCTTAGGTAGGAAGAGATCTTGCTTCGCTTACTTAAAAATCCAATTTAGGGACATGAAAATTTAATTTATAATGTCCTTGCGTAATCAAGGTAGGATGAAATAGTTGGACATGTCTTTGATTTGGGATCAAACAACTTGGATTCAAGTCCAGCTCTGTCCCTTAGTAGCTGTGTAACTTTAGGAATGCTTTCCAAATCTCGGCTTTTTCCTCCATAAAATGGGATTATTTCCTACCTCACTGAAGAATTGTGAAGCTTAAATAAACCTAACATCAAAAGTGCTTTGTAAATACTAGCACACACACATATGGCCACAGTCATTTATTTAGGCAGGGAACGAATCAGGTGGGTGGATTCTGAGGTCCAAGTGTTTAGAATTTGGGGTTCATGTCCCTGACTTATTAGGGAGTTCAGTTCCCAGGGATGCAGCCTAGTTTATAGAGATGTATTTTGGGGAAGGGGTGGCATCAAAATCTCAGTTCAGGACGTCATGGAGAGGTATGTGCTATGACATCTCACAGGTGTCAGGGAGATGTAGAGGCACATTCAAGATGGGTGAGAACCCAGAGAGGGGAAGCAGAGAGGCAGCACCAGTTGACCCTGCCTCAAGTCTGGATGAACCTTTGACCATGAGGGTGACTTCTAAGGGTGGCTGCTGAGCAAGGAAGAGAGTGCTAATTTGGGGCTTGCTGGCTGCAGGTGAGCCACCACACAGAAATGTAAGAGGAGGTGGCTTCAGTTAATCTGTTTCCCATTTCATTCAATTGTTTCCCATGTCAATCTGGAAGCACTGGAACAGCTTTGAAAAGCAGAGTTGCTTTTAGGCAGTTTCTAATCTTTCAAATGTCCATTCAGACTCTTCATACCTGAACACTTGCAGATGGCAGTTCTCCACTGCCTATGCATGATTGGGCATCTTGCAACCTCAGGACATCTCCAGATGACCCAGGCAGAAGGAAAGTGCTCTTTCAAAGCCACTAGTCTTCTCAGTTATTACAAATCCCCTTCCCTCTATGGGCCACCTGGACATCTTCATTTCTGCTTCTGATGCTGAATAAAATGGATATTGGGCTTTACAAAGATATCAGTTTTTTGTTTGTTTTGTTTTTTTTGTTTTGTTTTTTGAGATGGGGTCTTGCTCTGTCGCCCAGGCTGGAGTGCAGTGTCACGATCTTGGCTTACTGCAACCCCGTCTCCCAGGTTTGATGATTCTGCTGCCTCAGCCTCCCAAAGTGCCACCACCCAAACTAATTTTTATTTTTTTTTTTTTTTTTTTTTTTATAGAGACAGATCTCACTCTGTCGCCCAGGCTGGAATGCAGTCAGCTGATCTTGGCTCACTGCAACCTCCACCTCCCAGGTTCAAGTGATTCTCCTGCCTCAGCCTCCTGAGTAACTGGGACTACAGGTGCCTGCACCACACCCAGCTTTTTTGTATGTATGTTTTTAGTAGAGACAGGGTTTCACCATGTTGGTCAGGATGGTCTCGATCTCCTACCTTGACCTTAAGTGATGTCCCACCCCTCGGCCTCCCAAAGTGCTGGGATTAGGCGTGAGCCACTGCACCTGGCTAATTTTGTATTTTTAGTAGAGACAGAGTTTCACCATGTTGCCCAGGCTGGTCTCGAACTTTGACCTCCAGCAGACTGCCCGGCTTGGGCTCCCAAAATGCTGGGATTACAGATGTGAGCCACTGAGCCTGGCCCCAAAGTATCTGTTTTTTTAAAAAATCTAATTCTTGGTGCTGTGCAGTGGCTCACACCTGTAATCCCAGCACTCGGGAGGCCAAGCAAGCAGATCACGAGGTCAAGAGATCGCGACCATCCTGGCCAACATGGTGAAACCCTGTCTCTACTAAAAAATACAAAAATTAGCTGAGCATAGTGGCAGGCTTCCTGTAATCCCAGCTACTCAGGGAGGCTGAGGTGTCACTTGAACCCGAGGCAGAGGCTGCAGTGAGCGAGATCACACCACTGCACTCCAGCCTGGTGACAGAAATGAGACTCTCTCAGAAAAAAAAAAAAAAAAATGAAACTGCTTTTTGTATTTCCCTTAGATTTCCTCCCCAAAATTCTTCCATTGAAATTGGGTAAAATAACAAATAAAATCCATTTTTTTTTTTCAAAGTCAGTCAGAATTAAATAATTTTGTTTTATGGAGCAGGGATCCAGATCATTTTCTCATAACATTCTCCACTGAATTCTTTCTCCAAAATCTTGAGTAGTGGAGATTGCTACTCCTCAGATTTGCTGCATTCCCTCACTGGGCATCCCCCAGAAAGCCCCTAGAAGGGCATGGTGAGGCCTGAGAAGAGGAAAAACATTTTCAAAGCACCCTGCTATGAGCCAGAACTCTGTTTCCATCTGTTTTCTCATTTCATCTTAAAAGCATTGAGAACTGGAGAACAACTAGAAGTGATACTCTGTTGCTTTTGGAGAGGAGGAAGCTTGAAGCCAGAAAAGCTGAAAAAGATCATGTGATAAATAATAGAACTGTGATTTGAGTCCCAGATCTCTTCTAGATCATTCTTTCCTCCCCATGTTGAGTTCCAGTTATTGCTTGCTTCTTAATACAACTTCTCCAAGTTAGGTCTTAAAAACAACATTAATCCTTGCATTTATCTCAAGAATTTTTATGGGTCCAGAGAATTTGAACAGAATTGTGGTCAAGGTGATTTCTTCCTGATGCTTAGTGGATGGGCTGTTCCTAGAATCCAGACAGGTTTACTCACTCAGCAGTGACTACAGTGACCAGTATGCCATCCCAGATGCACAGCCTCTTGGCAGCCAGTGAGGACAGGCATTTGGGCTACTATGGCCTCAAAAGCATTTCCACAGAGAATGTTCTGCAGAGACCTGGGCAAAAACCACAGAAGCTGCACAGCTTTAAGAATGACTCAGGGAGTTCCAGGTATCCACTTCCCTGCTCTATTTTCAGATTAATTGGGCATTGTACTCAGTCTCTCAGTGAGGAGAAGTAGCAAGGATGCAGCCATATTTAACCTATATAAAAGAATACTGTTTAAAATCTACCAAAGAATAGTTACAGCAGCAGAATTTGAGTACAAAAAAATTGGCAGAGAAAAAAATGCAGCCAAAGCCTGAGCTGCACCTGTTTTCAGGAAAAACAAAGTTCAGACAGCCCAAATTTAGAGCATGCCTGCAGCCTCAACTTCCATCTTCCACCTTTCAGAGCTGAAGAAATGCAGATGTGTGAAGGTAAGTGGAGGGGGAAGAGATGTCCCTCCCTCTGTTTCTTAGCTAAACACACACCTCACATTGGCCCTTTCACACGCACACACACACGCCCACACACACTCTTGAATAGTAACCCAGATTCTTTGCTTTGGCTCAAAGGGAACATGAAGCCAGAGATGCAGAGTCCCCAACATGATTTGGGGATGTGTCAGGCACCCTAAGGTGGGCTCCACTCCTGTGTCTCTGGAATTCATTCCTGACACACTGATGGAGTGGGAGCACGCCCCAAGACCCTCCCTGTTCCCCACCTCCATCTCATTCAATTTCAGTTCCCAGAACCACAGTCCCCATAAGCCTAGCTCCTCTGCCTCAGCTCCTGGCACCTGAGGTCCTCCTATCAGGGATCTGACCCACTAGCAGCCAGGTTGCTAGTAATGTCCTCTCTGCCCTAGGGGTTCTGCTGCCTGGATGGGAACCACAGGAGGTAGTACATCCTTGGAGTGGAGAGTGAGAAAAGCAGCCCTCACTATGGACGAGCCTCTAGATAGAGTCAACATCCATCATCAAATTGAACTTCTCAAAAATGAACTGTGATGGTCCAGATCATATGCTCCATCATGTTCCCTAAACCTTACATTATACAAAACATCTACTTCTTTGATTTTTTCTTTTTTCTTAGAGATGGGGTCTCACTATGTGGCCCAGGCTGGATTGAATTCTCGTGGTTCAAGTGACTCTCCTGCCTCAGCCTCTTGAGTAGCTGGGACTACAGGCACACAATGTAATCCCAGCTCCCAGCTTTGGGTTTTAATATCAAAGTTACACACTTGGTTAGCACTAGGTGGCACTGTTAAGGTAAATGTAAAATGTGGGGAAAAGCAGCTGACAATACTGCTAGTCAGGTAGTTACAGAGCCTGGGAGCTGTGAGTTCCTAGAAAATTCATGGTTTTGGATGCACAAATTTTAATTTTACATTTGCATTTTATCCTATGTGAGGTAAAGTGATTAAAAACAGACTCCCATTATTTAAAAGAAACAAGCCTTCACAAATTGTCTGACACAGAATGTCACTATGACATTGTTTCATTTTCAACAACTGTGACTTTGAAAAATTACTCCAGGATTTCTAGAGCTCTCCCACTGTCTTGTACCTGTTTACATCATTTTAGCAACAAGAACACATGGACCACATGGCCGGGGCAGTGTCTCACACCTGTAATTCCTAGCACTTGGGAGGCCGAGGCGGGTGGATCACCTGAGGTCAGGAGTTCGAGACCAGCCTGGCCAACATGGTAAAACCCCATCTCTACTAAAAATACAAAAATTAGCTGGGCATGGTGGCAGGGTGCCTGTAATCCCAGCTACTCAGGAGGCTGAGACAGGAGAATCACTTGAATCCGGGAGGTGGAGGTTGCAGTGAGCCAAGATGTGCCATTGCACTCAGCCTGGTGGCAAAGTGACCTCTGTCAAAGAAAAAAAAAAAAAAAAAAGAACACACTGATACAGCAGTGCACTGGAGAGAGTCTCAAAGAGATTGCTCTGTTAAAGAGCCAAGGAGAAAAGGTAAGCAATGCTCAACCACTGTCTTCCACAATAGCAGACAAATCAGTTGGTTCAATGACTCCTCTAGTAATATGAGGACCTGTATTCTTCCAACAGCTGTGGAGCCACATGAGGACTGGCCCCACTCAGCCTGGGAGTGAGCCTGCACAGCTTCCCAAAATAGCTTCAGAGCAGATGTGAGCTGGCATGTTACAGAGAGCCTGGGAATGGAATGGAGTAGACCAATATCTAATTTACCTGGAGAGCAAAATGTTCTCCTAAAAATATTGGATTGGTGAACTAAGGAACAGCTGAGACATGCAGGAGACTCTCTGCCCTCTGCCACTGTTTGCCCTAAAGGCAGGACATAAATCCCATCTGCTGAATAGCCACTTGTCAGCCTGAGGCAGGCACCTAGCAGACACCAGAAAGCCGACAGACACCCCTTCAGCCAGTATCTTCCCCACCAGCTTTCCCCCTTTGGGAACTGGACACATTCTCTCTTTGTCTTATCACTGCACTAAAATTGTTGCTTTTACAATTGTGCTACTTAAATAAGACTTAAAGCTCATTTCCAATAAATACTTTTAGAGATCACCTGAGATGTACTACTCCCCATGATGGATTATGACATGTATACATGTCCAACACCTGTTTTTCCTTGTTGATCTCTGTCTTTGTTTCAAAGAAGGGTGGCTAATTATGAATTACTGAGGAAGTAATAAAATTCTCTATAATTTTTCTCCCCCTTCACACATTATACAGAAATGTGACTAAGCAGGAAGAGGGAGTCATGTCTGTAGTTCAGAAAGGGCCTCCCTTAAGAAAGCCTCATATGCATTTCAAATTTCAGCCATGTGTTCATCTTCACCATTTGGTTTCCCCAAAGCTGACATGGAACAGAGGGATTTTGCATACAAATACGTTTGGCCCCAGTAGAGATTCTGTTCAAGAAAATATAAATAAGGAAGAAACTTAGTACAGAGATTATCAAAAAAAAATTGCCAGGCTGGGCGCAGTGGCTCACACCTAGTCCAGCTCATTTGGGAGGCTGAGGCAGGAGGATCACTTGAGCTCAGGAGTTCAAGACCAGCCTGGGCAATATGAAAACCGTGTCTCTACAAAAAAATAAAAAATAAAAAAACAATAAAAAGTGCTGGGTGCAGGTGCATGCCTGTAGTCCCAGCTACTTGGGAGGCTGAGGTGGGAGGATCACTTGAGTCAGGAGGTTGAGGCACTGCAGTGAGCTGAGATCACACCACTGCACTCCAGCCTGGGTGACAAAGTGAGACCTGGTCTCCCCAAAAAATACCACTGTGAGTCACCAGAGCTCAGTCCCACCCAGAACTCCACTGTGCCAAACCACACCTGTGAGTTCATCCCACCAAAGGACCTTGAGGAGCAGATATTATTACAACTGCTCTGAATCATTGGTTGAGAGCAGTGGCCCCCATCAGGAACATTAGTGCACACTGCATGCTTCCCCACCCCATGTGGGAAGGTGCAGACCAACAGGGAAAACCTTAGGGAAATGAATTACAGGTGCTTGCAGTTAGCAGCCTGCCTCCCAGCAATGAGAAGCCCACAGGGGATGGAGCCAGGGCATACAAGCAGCCTCCTGGGAGCAATGAATTGGGCTTGCTCTGACCCTGTGCTGCCTCCTTCAGCCAAACAGTTCCCCTGAGCCACTTACAGTGTCCCCAAGCACTCTGCCAAGGACCAGGAAGGAAGGAAAGCTGCCTCAGGCTGCGTGTCACTGTAGAAGAGAGAAGCCTCATTGTTAGGGTGCATCTCCTGATGCAGTCACTTTCCTGGAGCCAGCTCACTGCATCCCTTAGGCATTCTGTGGGGTAAGATTCTTCTTCTATTTTCACCTTAGAGCCATGCTTGTGCAGCCATCTGATTACTTCTTTGAACAATTTGTAACCATCAACAGAGGATCATTTAAAACAGGATCAATAAGTATCAGTCACCAGCTGATAGATGAATTTTCACTCCTCTAAAAAAGCACGGAATGCAGAAGCAGAGTAAAAGCCAGGGCTGTTAAGTCCAGCCATGTGTTGAAAGAACTGGAATGCTAGTAAATGAGCTGCAGCAGGACCTGCTTTCAGCCCCTGGGACCCTTTCAGTGATGGGGACAGTGTGGACATGGTTGAATTCTGCCTGTTTTCTCCCTCTTCCCACCCCACCTGCCTCTGCTTTCCTCATGGTTGAAGGAGTGAGGGTGGTGTGAAAGATAGTTTAAGAATAAGAAGAATTTCCACTACTTCAGCACATAAGTTTATCAATAAAGTGCCCATGAGCAGAAGTTCACTGTCAGACTCCCATGGCTGCCCTGCTGCTTTTCTTGGGATTCTCACTCAGGAACATATGTCCTGCTTTGGGATCACCAAAAGCACAATGAAAGCAAGAGTAGGGCCTTGAGCCCAGCTCATTTTGGGAAGTGATCATAGGACTCAGTGGAGAAGAGAAGAAGGATGAAAGCCATAAAAAACATGCGGTTTAAAGATTATACTGTGACAATGAGGAGGTCCCTATTCCCACCAGGGGTCTGGGTTTGCAGAAAAACCTCTCCAGAGTGTCTGCCTCAAAGAGAACTGATGGCCTGAAAGACAAGAACCAGACTGGGTCACTTCCTGCACTCCCTTCCTGTGTTTAAAGGATGCTCCAGGTGCATCTTCTTCCCCCTGTCCTTTCTCAACTTCAGCTGAGATGTGCTGGGCAGAACCGTGCTACCAGTGTTCAGGCATGCGGTCAGCAGGAACTCTGCCTTTTCCAGAAGGTCCTCTGCAGCTGCCGGTGAAAATCCTGGGGCAGTCCAGAAAGCATCTGCTTCATGAGTGAAGGTCATTCTGAGCCATAGAGGATGCCCACTGGTCCCTGAACAGACTCTCTTGGATGGACTCTGCACCTGCAGTAGGCTGAATAATGGCCTCAAAGACATCCACGTCCTAAATCCACAAGCTTATTGTGAATGTTCCATGTCAGAAAGGACTGCAGAAGTGAATAGGATCTTGAGAGGGAGATTATCTGGATGCATCCAGGCAGGCTTCATCACAATCACAGGTGTCTTATAAGAGAGAGGCAGAGAGAGGTACAGCATATCAGACAGAGAAGGAGGGAGTCTCCTGGATCATCCAGAGCAGGCTCAATCATAATCACTGGAGTGTCACCAAAAGGAGGCAGAGAGATTTGACCACAGACAGAAAGAGGAGGAGCAGTAATGTCACTATGAGTGAGAGAGTAGATGTCCACAGCCAGATGCAGCAGCATAGAAACCCAGAGGGAGCAGGATGGTTCCTGCCAGAGCCTCTGAAGGAGTGTGGCCTTCCTGACCTCCAGATGCATGAGGGAACTCTAAATGCCTGTGGTTTAAACCACAGAGTGGTGAAATAGGTGCACTGTAGCAGCATTAAGGAAATAGACTGCACACCATGCCTGGCTCCCTCATGTTTCTTTCTGGTTTCCTGAGACTGCACACTCTTGCTGCTGCTGGTGAGTGGAGGCAGGAATTGGCTCCCAGAGGGCAGCCAGTTTCTCCCTGCTGTCTTGCTTCTCAGTCTCTACTCCCTGCTCCTGAGCAAGTAAGCCTCAGCCTCTCACTTGTTGTGTGTGTCTGCACCCAGTCACTCTGTGTCCCCCACACTCTAGGACACAGAGGGAGGCTCTCCCAGTGGCTCTCTTACTCTTACCTCTCATGGCCCAGGTTGGGACAGAGCTCCTCTCTCCCCATCCCACAGTGGAGAAATGCCAGCAGCGTCAGAAACTCCAGGAAAGGCTGGCCTCACGCCTCCTACTTCCACCGCCCACCAAATGCCCTGCCCCCTCACCCCCATCATTTTGCAGAAGTTCTAAGCTCAGACATCCAGCACCTCATTTTATAAGTGTGGGGCCACTTGGCTCTCTTTGTTAACTCTCAGCCTTGTGGCTTCAACCCAAACAACCTCAAAAAGGTCCATTTTGTCACCCAGAAAACCAGGCACAATTTCCCAGAGTTGGACTTCATATCTCTGGGCTGGACGCAGCAAATGTGCTCAGCCAGATACTCAGGAATAATGCTTTGTGGCCTCAGATGCATTATCTCCATCCCAGCTTCTGGACAGTCTGTCCCCTAATTCCAAAACCACAGAAGCATCAGCAAGTGTCGGCACTAAAGCACTGAACTAAGACAGGCCTCCCTGCCTGTGGGAGGTTGTTCAGAGAAAAATCTCCCAAAACCAAAAGTGATCATTTGTGGCTGGGCTAAAGATCTGTACTATGAGGATTTTAGCAATGACTTCCTAAAAATAATTGTTTGCTCAACTCCTATTCACAGTCACAAAAAAAAACCACTTACCAGAGGCATCAGATAGAATTTGTTTTTCCCCAAATTTAGAAGAAATCATTATATAGTGAAAAGAAAAGAAAGGAAGGGGTGAAGGGGTGAAAGAAGTAAAGCCTTGGATTTCCTCTTGCAGTGAATTCTACTCCTATCATGAGACTATCAAGATTTTCCATTCTGTCACACATCAGCCTCCTCACTATTGAGTAAATTCTATCTCTAGAGGTTTTTTGTTTTGTTTGACGGAGTCTTGCTCTGTCACCCAGGCTGGAGTGCAGTGGCACAATCTCAGCTCCTGAAACCTCCTGCTGGGTTCAAGCAATTCTCCCACCTCAGCCTCCCAAATAACTGGGATTACAGGTGTGCACCACCACTCGTGGCTAATTTTTGTATTTTTAGTAGAGACAGGATTTCACCATGTTGGCCAGGCTGGTCTCAAACTCCTGACCTCAAGTGATCTGCCGACCTCAGCCTTCCAAAGTGCTGGGATTACAGGCACGAGCCACCATGCCTGGCCAAAGTATTTGGTTTGTATCATAATTAAATATAAGAAAAACTACTTATCTCACTTTAAGAACACATTCTTTTTATAAGAAAAAAGTAGCAACCCATAGCAACAATAAAGCAATACATTCTAACAATAAACGTTTATTAACAAAGAAAAATCATAAAAATAAATAACAATTTGCCTAAGAGGGGCTTTCTGAGGGAGGATGGTCCTGGGCTGATGCATTTCCAGAGAGGCAGATGCTGAGTTGCACCAACTCCTGAGGGGTGGACAGCCTTTCTTCAGCGTCTGCTCCTGGGGAAATGAGAACTAAGCAGACATGATGAAGGCATTATTAGTTTTCCAGATAAGAACACCTGGCTCAAATCAGCAGCTTGCCTCAGATCACACTGCTAGTTAGTGGAGAAGCAGGGATTCAAGCTGGATCCACCCCAAAGCCATTATGCTTCTTCCTATGTATCTCTCCATATTTTATCTTAATGTCCCATAGTATCAACATGCTTTCACTACTTGATTCATCTCATCATTTTCTTTTTTGTTAATAATAAGTGGACCAAAAATCTTACAACCTTATTTTGAAAAATCTTTTTTTTTTTTTTTTTTTTTTTGAGATGGAGTCTCACTCTGTCGCCAAGGCTGGAGTGCAGTGGTGAGATCTCGGCTCACTGCAACCTCCGCCTCCTGGGTTCAAGCGATTCTCCTGCCTCATCCACCTGAATAGCTGGGATTACAGGTGCCTGCCACCACACCAGGCTAATTTTTTGTACTTTTTGTAGAGACAGGGTTTCACCACCATCAGCCTAGGTTGGTCTCGAACCTGATCTTGTGATCTGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCATGAGCCACTGAACCTGGCCAAAATCTTTTCTTTAAAATTATGTTTCAAACATCACTTAAGAGAAAACACAAACCAACATATAAAGCCAGAAGGGCAAATATCATTTTTACTATAATGATTGCTTAACAATAGGAAGTAGATGTTGATTCTTGATCAATCATCACCTAATGAATATTGGGTTGTGATTGTTCTGACCCCACCTATTTCCTGATCTGGATTTTCCTCTCCATTACCCCTTCCCACTGTATAGCAGACTCATGCCTTCCAAAGACACACTCCCCTTTCCTCAGGAATAGGTGCCCCAGTGCCCTACCATGTCCCCTCAGCCCAGTTCTGAGACCACTGGCATCTTCATGGGTAGGCCCCACCTGCAGCTTTGGATTCTGCCTGGAGCATCTGCCTAGGGAGAGTTCTCCCAGGCACCCACAGGAGCACTAATGGCCCAGGAAAAGATAGACAGAGTGCCAGGGGTCCATGTCCCAACACCCCTCCCATAAATGTGAGCAGGAACAGTTTCCTTGGCTTGCTTGGTAGGCTGATGTGCAGGCTACATTCTGTAAGTTTCTCCAGGAAAGGTGTCCAGCAGGATGGAACTTTAGGTGTTCACTGCCAGAGAATGTACTCCAGACACCATTCTTGATAGTTTTCTTCTTCCCACTTTCCACTCCTCATCTTACCACTCATGCCAAATAAACTGCTGCACTCAAATGTTTATCTCAGAGTCATGCTTTTAGGAACCTATGGCAGGAGAAGAAAAAGTCTAGGGAAAGATCATGTTAAAGCAGCTGAGAAGACACAGAGAATAACTACCAGGGTTGGGAATAAATCAATGTTTGTAACATTTACATACCAGTACATTTGTACTGAGTGTGACTTGAGAACCACTAATAAAAATTTGCTTTCACTTTTGTGTTTTCAGCACCTCACATTTGTTTCACTTTTTAATAATGAATAATGGAATGAATGAATAGAATAATTAATGAACAATAGATGAGATTCCTAAGCTTTCTCCTAAGGTTAAGTGAAGGTGTTACAAATTATGCCAAAGAAAGTTTGGATTATAAAAAAAAATAATGAAATAGTGAAAAGCAGGCTTTGTTTTCACTCAGTTCTCCTGGGACACTTCTGACATCATCTGTCTTAGGAGGTTTTCAGCAACAAATTCTCTGGCTCTCTGGACACCTAGTGTTACATTCATTCAAATTCTAACACTACTTAGGAATTAAGCTTTGAATCCCTGAAATCAGAGGGCTCAGTCCCACAGGCCCTGACTGCCTGTTCAGATATAATCCTGTGTGATTTTCCAGGTTGCCCACACTTCTGTCTGCCCTGAAGCTACACATTGGAGTTGCCCTGCAAGCCCCTCCTCAGTTGGATGAAATTTTGTATAATGGTTCCACCAACTCAGGAGAAGCTGTGCTTGTTGCACACTGGTTTATTAAAAGAATACTGAAAGAGACAAATGATGAACCAGTGAAAGGACATGGAGATGGTTCTGGAAGGGCCTGGAGAGTGAAGGAGTTCTCCTCTATTGGGGCTGGGTGTGCTATCCCCCAACACATGGATGTGTTTCACCAGCTAGAAGAAGATCCTCTAGCATGCTGGGTGGATTTTATGGAGACCTCATCACACTTGATATGATCAATTATTAACTAAATCCTCCAGCCCTCTCCCCACCTGAAAGATACTTTGATGGGAGTGAAAGTTTCAAGGATTCCAGCTCCAGTCAGGCCTTAGATGCTCAGCATCCAGCCCTATCACCAAATAGCCAGGAACTTATCCAAAGTCACCTAGGAAGTTCAGAACAAAGGGTGCTCCCATCACCCAGGAGAATTCAGAGATTTAGGAGCTCTTTGTCAGGAACTCAAGAACTGGATCAATGACAAATATTCAGTGAACACTATTTTAATCCTTGGAAGAAACCACAGCAAAAGAAAATTTAAACTCTGTGCCAAGACAGATGAAAACAAATATATGTGCTTCTTATTACATAATATCACATGAAATGATGTAATAATGTAAACAATCATCTATAAAATTTAGACAAATGAAACCATACTAGCATGTTCAATTGGGACAGTGCCAAAAATATAAGGTCAATTTTCCAAATGAATGTTTTAAATATGTCCCATTCTGGCCGGGCATGGTGGCTCATGTAATCCCAGCTCACTTTGGGAGGCCGAGGTGGGCAGATCACCTGAGGTCAGGAGTTCAAACTCCATCAGCCTGGCCTAACATGGTGAAACTCCATTTCTACTAAAAATACAAAAAATAGCTGGGCCGTGGTGGTGCACCTGTAATCCCAGCTACTCAGGAGGCTGAGGCCAGGAGAATCGCTTGAACCCAGGAGGCGGAGGTTGCAGTGAGCCGAGATTGCACCATTGCACTCAGGCTGGGCAACAAGCGAAACTCCATCTCAAAAATAATAATAATAATAAACACCCATTCTTAATAAAATACCAACAAAATTACTTTTTCCCAACTAGTCAGTTATACCCAAAGGTTGTAAAAAGGAAAAATAAAGCATAAATAGATGGCAAGGACAATTCTACAAGGAAAAGGAAATAAATGAGGAAAAGTAATGTAAACCCAATAAAATATAATGTAAATAATTAAATACATTAGATAGACAGCATAGAGCATCAGAAATGACCAATACAGGGTGACATTTCAAATCAATGGAAAGGGAGGGGTGTGGTGATTAACGCTGTCTAAAGTAACACTTTAGGTAAAGAATTGGAAAGAATAACAGGTCAGGAGTTTGAAACCCCGTCTCTACTAAAATTACAAAAAATTAGCTGGGCATGGTGGCACATGCCTGTAGTCCTACCTAATACTTTGGGAGGCTGAGGTAGGAGAATCACTTGAACCCAAGGAGCTTGAGGTCATGAGTGCTATGATTGCACCACTGCACTCCAGCCTGGGTGATAAGATCAGAGATCCCTGACTCAAAAAAAAAAAAACAAAAAGGTATTGGAAATTTGTTTACCCAGTTATCCAAATTCTATTGTAGTATAGGGTATTACACTGGAAAAATAATTCAATCCTATCTCACAGTTTCATTGAAAGAGATTACTAGCAAAGATTTAATGTAATAATAAAAATGAACCTAAAACATTACAGAAGCCGTGGACTTTGTTTGCTTTTACATAATCTAAGAATGGGAAGCCACTTTTTGACAGATTAAATAAATTAGCTAACCAGGCATTTGCAGTACATAGTTTTAGGAAACTGCTGACCAGAAGAAGCATCTTCATCATGTTCTATATCAGGACACCAGGAAACAAGTGCTGAACACAGCATCATTGAGGGGCTCTAGAGTCCCCAGTGAAAAGAAGCAAAAACTTTATTTTTGCAGTAGGCCCATAATAATTAATACCCAGGCTGGTGTTTCCTGGGACAGTTAATGCTGTAAGATCTTCTGAAGTTTCTCAAAAAGCAGTGACAATCTTCACAGTTCTGCTTAGTTTCTCCCTGTGCCCAGCCTGTGTTCAGATTTTGAGTCCTGTAGGATATTCAAATTAAAACTTCAATCAGTTGACTAAAGAAAGCAAAGACCTAGATGCCTGACACAGGGGACTATTATCAGAGCAAATGTTCCCCTAAAGTCAGAATTACATTTTACATTGTGTTTATTTTTAAGTGATCTGATAAAAAAAAAAAAGGACTAGAGTATGGAAAACCTGGCACTCTGGCATGCTTTGGAGCTGAACTTGGGTGGTTTGATTTATCATCAGTTCCCTCTTGGAAGCATTTTACAAGTAAATAGCAACCAAATACAGTATAAAATAGCTATGGATGCTGTTTCCTAGATAATTTATTTATAATGACAAAAAATTGGAAGTCACCTAAATATACCTAGATAAATAAACTGTCTTTGTCTAAATTAAGACAACATGAGCATAAAATTTAAAATGATGTAATTTAATAATATTACTGACCTGAAACCATGTTTTTACAATGATGTGGAAAAGCATATTCAGAAAGCAATTTTATAATTTGGGTCACAGTTTGCAAAAAAAAAAAAAGATGTACATCTCTCTTGGATCATATATTTAGAAAATTCTGAAGTAGGAATGAAAATGGATATTTCTCCCCAGTGAAAATGGATGTTTCATCACAATGTGATTATCCTAATTGGATGGCAGAGTCAATTTTCTCAAGCATAATCAACTTTCCCATATGCTGTCTACACAGCTGTCTTCTAATTCAAAGACACTTGAATAAGTTTAAAGTAAAGAGTTGAAAGAAGGTTACTTATTTAGACAAGTAACCAAGGGACAAAAAGTGACTATGCTAATCAGTGAGACAAAATGAATTGAAGACAAAAAGATATTAAGAGAAAAAGGACATTTTTATAATGAAAAGAGGGAAATTTAGTAGAAGATGTAACAGATATAAATATATATGCATATGCTACTTATTTAAACAGAACCCAAAATCCACTGGAGCAAAACAGACAAAGTCAAGGAAGAAATAGAAAAATTAACGACATTTGTTTTAATATCCCCTTTAATAATGGATAGAATAACTAAGTACAGAAAGATCATAAAGAACTGAGGGACAGAACAAACACTACAAATAAAACTGAGACCTACAATAGTTCCTAACAGAATAACAGCAGAGTGCATTATAGCAGAGAAACATGATCCTAAACAGTTTCTCAGAAAATCAAGCCATAAGTTACCTATATGACCAGCTTAATTCTGCTGCCCAGTATATGTGAATAAAAAATTGAAAACATGTTTGCAGTAAAAACTTGTACACAAACATTCAATAGCAACATCCACGACAGTCAAAGAGTGGAAGCAGACCTAATATCTATCAACAGATGGATATACAGGAATATGGTATATCCACCTGAAATGGAGTGTATTAAGCAATAGAAATGGCTGATATTGATACATGTAACATCCATGGATGAACCATAAAATATTATGTGATTGAAAGAAACCAGACCCACACCTTGTGTATGATTCATTTATATAAATATCCAGAATAGGTAGGATTCACAGGGAACAGAAGGTATTTGATGGAGTTGTAAAGTCAGGGCCCCAGAGTTGGTGGGGAGTGGAAAATGTTTCCCACTAATGGGCATCATTCATTTCTTATGGAGGGAAGTGACAGAAAAATATATGTATCATCAAATATTAGTAATGGATTTGGATAACTCTGTGAATACACTAAAAACACTGAATTGTTCTACTATAAGGGAGCAGGCCCCCAGGAATTGCCCTGAAGTAGCCTCTCCAGCTGTGTTAAAATCAAATGGTGACCAATATGACAAAATGTAACAATTTAAATGAGTTAGGGTTTGAGGGGGGTCTTGAATGTTTGTTCACTTATTAAACTTCCATATGCTTTCTAATAATCTCTAACTTAAAAGAAAGGTCCTGGGATCAATTTCAGAGAAAAAAATGGATGCATTCCCTCACCCCCTCTCCTTGAGACAAGTGGGTGCTAAATTAATCTTTCCTCCACATGCTCCCCTATTTTCCCCCAGCCTCCTGGTGACCTATGTGGGCCCAGATGTGGCTGAGTTCAGTCAATGAACTGTGAGGTACAAATCAGATGCTGTCTTCTAAGAAAACAAAAACAGTTGAAAATACATTGTTTTGCTTCCTCCACCACCCTCTTTTTCTGCTAAGAGCAGAAACCACAGGATGAAAAGCAGCCCAGCTCCAGATGGAGGGCGTGTGGATCTCCCAGTCACTAGCCAGTGATCCCCTCCCCCAACACATGGAACTAAGGCTGAATGAAGCTCTGACTTTTCTTATTAACGAGCCATTCAGTTTAAGCCCATAACTGCTGCTAATCTAGGCTAGTCTATTAAATATATACCCCATATAGACAAAATAAAACAATGATTAACCATTTTGTGCAGGATGATTTAAAAAAAGGCTAGAAAAAATTTAAAGCAAACTAAAAAAAAAAAAATGTTTTTAAAGATCCCAGTGTGGGAAATAATTTTTAAGCACTAAAGCAATGTGAAAGTCATCAGAAGAAGGAAAACTGCTGAATTAAAGGGTAGAAATAAAATAAAATTTTGGAGACAGTAAAAAGAAAGCCACCATATACAAATGGCAAATATGAGGAAATATAATAAATGTCAGTGAGATTAAGGACTATGAGCACTTGAAAGCTATAATTAAGAAAAAAATGACAGGGATGTGAAAAATATAATCTTTTTAACACCTGTAACATTTTATTTGTATATAATACAGGCCTGTGATGATCCCATGCATATATCCAGCTATACCACAGTGATTCTGTAAGGAGATACACTATATGTGTCCATTGAAAAGGAAGTAATTGACAGACTCAAAAATCTTTACAGCTAGCAATTATAATTTGAACTTGGGTTCTCATCAAAATAAGGGAATTAAGCCACTATCACTACAGGAAAGCATGTGAGCTGATACTTAATAATCCAAAGCAATGAAAACAATAATATATTACTAAAAAGATCTAATAGTAATTATAATAAATTATAGTGAGGTATGGTGGGGGCATTCCATTCAACAACTCTTTGTTCATAGTACAGACATTAAATGATTAGTAGAAAATCATTGGGATCCAGGAACTTTCAGGTCTAGGGGATATATCAATGACCAGCATCCCTGAGACCAAACCTGCCTCTGGAGCTGACCTCACCAGTTAAGTATGAGATGTACACAGAGGCATAGATGTTACAAGGATAATAAACATCAAAACCCTAAATATGTTTACACATACTTTAGTTAGCAATTCTAATCCCCTAAACATTATTCTACTCATCAATGGCTAATCTATAGTAGGAAAAGGTTGGAAAGACACTTGAGTCCCTAAAGAAATAGAAATCATCAGAAATCATGTGTGGTACATTCACATTTAAATAATAGCAATAATTAAAAATCATACTTTTTTAAAAAAAGAATGACAGAAAAAATACCTTATAGCATAGTATTATTAGAAGAGGCAGGATATACAGAAATACTACAGGATGATTTGGTGTTTATTATCCTAAGGTGCTTCATGTTAAAATAAAAATCTGGAACTGATATACACTGATATTTAAGCAGCGTGGAAGTGGAAGTAAACTATAGGGTTTAAGAAAATTTCCCAAAAATTTTCACCAATGAACAATGAATAACACCTTTATATAATGATGGTGGGGAGTATTAAGAAAGAAATGTTTTTCTATGCCCTAGTGTGCATGAAAAGG
d49230b4-7719-4e32-82ca-fded86550a16	16	20	13830170	60	26S21M1I16M1I3M3I8M1I8M1I7M1I13M2I12M4I1M1I5M2I6M1D23M1I8M1I5M2I12M1D3M1I2M1I26M1I2M3I6M3D8M1D5M1I16M1I5M1I20M2I17M3I7M1D8M2D23M2I14M2I4M1I5M2I1M1I4M1D9M1D15M1I4M2D2M1I15M1I3M2D2M2I14M1D14M2I13M1D21M1I14M2I14M1I21M1D2M1D4M2D5M1D5M3I4M2I26M1D19M1D8M1I15M1D2M5D1M1I2M1I1M2D21M1I5M1I10M1D9M1I14M1D10M2I28M1I36M3D2M1I9M1I3M4I3M1I1M4D11M1I11M1I16M1I4M1I9M1D2M2D2M1I5M1I8M1D5M2I4M1D5M1D6M1D51M1D7M1I4M1D1M3D6M1I7M2D9M1I8M1I3M1D9M1D5M1D12M1D5M1D4M1I3M1I5M1I13M1I7M2D11M3D4M2D14M1D19M3I7M1I26M2I4M1D7M1D7M2I13M2I27M1D16M3I5M1I37M1I27M1D6M1D19M1D34M1D10M4I1M2D5M2D3M1D6M1D3M2I12M1I6M1D14M1I7M2D3M1I14M2D2M2I38M1I3M1I5M1D16M2D11M2D9M2I15M1D4M1I1M2I21M1I5M2D4M1I13M1I13M1D9M1I6M2I8M1D5M1I14M2I6M1D28M1I11M1I27M1I13M1I9M1I9M2D2M1D24M1I4M1I5M2D26M1I8M2I16M2I7M1D26M1I1M2D12M1D14M1D6M4D4M10I14M1I12M1D29M2I18M1I15M1I6M4I11M2I14M3I40M2I7M1I4M1D12M1I10M1I20M1D8M1D7M2I9M1I16M1D11M1D17M1I19M2D22M1D13M2I15M1I25M1D7M1I24M3D9M1I25M1I18M1D5M2I23M2I5M1D7M1I6M1D3M1I21M1I3M1I2M1I1M1I5M1I5M1I23M1I5M1D6M2I7M1I2M1I13M1I6M1D3M1I4M1D14M1I5M2I22M2D12M1I39M1D6M1D10M1I10M1D8M7I2M2I47M1I2M1D9M1I18M1D5M3D13M1D14M1I3M1I14M1I8M1D9M1I9M1I4M1D14M1I19M2I11M1D3M1I2M1I2M2I3M5D14M5I3M1D10M2D18M1D10M1D6M2I50M1I2M2D4M1D11M1I9M1I10M2I6M1D24M1I10M1D6M1I3M1I2M1D7M2D16M1I9M2D3M1D9M1D28M4I5M1D12M1I5M1D22M1D3M1D38M2I18M2D7M1D9M1D20M1I3M1I5M2I1M1I6M2D9M1I5M1D1M2D10M1I7M1D3M3I37M1D30M1I5M1D14M1I3M1D20M1I2M1D3M1D13M1D1M1D11M1I4M1D8M1I9M1D3M1I14M1I3M3D6M1D2M1D5M1I6M1D3M2I6M1I18M3I5M1I17M1D56M1D4M2I19M1D3M4I16M1I5M5D2M1I10M1I6M1I5M1D5M1D3M2D8M1D8M2D1M1D19M1I2M3D7M2I3M2I14M1D9M7I4M5D7M1D6M1D13M1D16M1D7M1I5M2I22M1I5M1D6M1D5M2D12M1I8M1D16M4D18M1D9M1D3M1D5M1D3M1D36M1D8M3I2M2I2M1I7M4I8M6I13M1I7M2I1M1I2M1D35M2D5M1D2M2I12M1I33M1I6M3D45M1I16M1I20M3D5M2I7M1I9M1D13M1I4M1D15M1I9M1D22M2D7M2D10M1D16M1D2M1D9M1I8M1D3M1D16M3D5M1D1M1D8M2I19M4I26M1I11M3I23M1D6M2I7M1I13M1D13M2I2M1I36M2D8M1D69M1I33M2D10M1I8M1D41M1I11M2I1M2I49M2I10M4D19M1D16M1I9M1D5M1D11M1D4M1I109M2I9M1D8M2D3M2D13M1D2M1D4M1I10M5I4M2I5M1D9M4D4M3D6M1D8M1D8M1D8M1I2M1I28M2D5M1I29M1I2M2I2M2I27M2D5M1I4M1D11M1I5M2D12M1D7M1D5M1I9M1D6M1I4M1I1M2I3M2D10M1D8M1D8M1I27M1I17M1D12M2D2M1I3M1D1M1D3M1I8M2I9M1I14M1D18M2D5M2I5M1D4M1D12M1D19M1D2M1I11M1D4M1D13M2D4M1I12M1I14M3I3M2D8M1D5M1I8M1I3M1D18M2I6M1D15M2I6M1D14M2I29M1I5M4D10M1D19M1I41M1I5M1I16M1I5M1D2M1D5M2D5M4D33M1D10M3I5M2D30M1I14M1I15M4D4M2D16M2D13M1D7M1I7M2D4M1D18M1I7M1D8M1D11M1D6M1I11M1I9M1D5M5I3M1D1M2D3M1I28M2I6M1I5M1I6M2I6M2D1M1D8M2D4M1I8M1D9M5I11M1D11M1I11M1I20M1I33M2I11M1D3M1D8M1I39M1D16M1D7M1D10M1D20M1D2M1I13M1I3M1I38M2I2M1I7M1D34M2I21M3D4M5I2M2D15M1D7M1D9M1D3M1D5M1I9M1D16M3I6M2I7M1I7M2D8M1I2M1D7M1D11M1D3M2I14M1D39M1D33M1I6M1I16M1I1M1I5M1I15M3D5M1D7M1I4M1I4M1D8M2D2M1I3M1D7M2D25M1I13M1I11M1I3M1D6M1D14M1I15M1D1M2I9M1D19M1I8M1I3M2I4M1D10M1D20M2D72M2D14M1I8M1I21M1D9M1I128M1I25M3I22M1D19M1I8M2D8M4D9M3D12M1D4M1I4M1I2M1I3M1I10M1D5M2I1M1D23M1I4M1D6M1D4M1I6M1D24M2D11M1D54M1D19M1D10M3D12M1I2M1D30M2D20M1I8M2I2M1D5M3D5M1I4M2I9M2D19M1D8M3I3M1D6M1I14M2D19M1I10M1D3M1I13M1D4M2I25M1I22M1I8M1I17M1I4M1I7M1I17M1D42M1I166M4D4M1I9M1D53M1D22M1D12M2D4M2D1M1I10M2I8M1D6M1D13M1I9M1I4M1I9M3I2M1I7M1I12M3I4M1D14M1D6M1D10M3D7M2D2M1D20M4I12M2D14M4I6M2I15M1D5M1I3M1I9M1I22M2I3M2I32M1I7M2D3M1D21M3I1M1D36M1D7M1D10M1I6M1D6M1I14M4I1M1I6M1D11M1I3M2I22M2I12M1D8M2D8M1I12M1D11M1D3M1I1M2I3M1D3M2I12M1I23M1D5M1I8M1D2M1D79M1D7M1I7M2I19M1I14M4I41M1D7M1D5M1I9M1I6M1I14M1I12M1D10M2D8M3D2M4I23M1I7M1D17M2I7M1D4M1D5M1I10M2I5M3D13M1I6M1D8M1I1M2I4M1I6M1I15M1I7M1D9M2I11M3I3M1D7M1I22M1I3M2D6M1I6M2D4M1I5M1I2M1D8M1D9M2I4M1I6M1I11M3I11M1I5M4D7M1D19M3I23M1I6M3D6M1D14M2D3M1I4M1D6M2D3M1I14M1D8M1D4M2D2M1D8M2D4M2D10M2D3M1D14M2I9M1I10M1I26M3D4M2I10M1I4M2D8M1I34M3I33M1D14M2D1M1I17M1I6M1D8M1D14M1D13M2D3M1D23M4I27M1D30M2I5M1D40M1I11M1I4M1I22M3I5M1I5M1D8M1I18M1D16M1I13M2I5M1I6M3D4M1D4M1D9M1D3M1D27M1D18M1D3M1D5M1D14M1D8M4D3M2I15M3I3M1I14M1I1M3I16M1D7M1I4M1I12M3D5M1I7M1I6M1I4M2I10M1D6M1D3M1I4M1D10M1D11M1D11M1I6M1D5M2D22M1I9M2I2M1I8M1D8M1I5M2D13M1D6M1I4M1D7M1D7M1I3M2D2M1I4M1D6M1I8M3D5M1I12M1I1M2D12M2D6M1D6M1D7M1D3M1I11M2I3M2D4M1I15M1D9M1I19M1D11M1D4M1I26M1D11M1D9M1I8M1D5M3D4M1D10M2I10M2I5M1I8M1D20M1I5M1I20M1D14M4I12M1I2M1I4M1D5M2I2M1D11M1I6M1D1M2I2M1I9M1I9M1I2M1I8M1D8M1I19M2I7M1D23M1I7M2I4M3I1M1I5M1D33M1D32M1D3M1I3M1D1M1D5M2I10M1D20M1I5M3D2M1D2M3D5M1D7M3I10M1D19M1I14M1I5M1I11M1I8M2D6M1I10M3D3M1I5M2D2M1I7M1I4M1I11M2I43M1D23M1I30M1I22M1D10M4I14M2D7M4I5M2I26M1D3M1D5M1D4M1I22M1I3M1I2M1D5M2D7M3I11M1D36M2D16M1D55M2I12M1D58M3I8M3I8M1I7M1I6M1I19M1D4M1D63M4D8M2I31M2I12M1D10M1I5M1D14M1I14M1I2M1I3M5I1M3D5M1I21M1I7M1D8M1D10M1D3M3I59M1D5M3D6M1I5M1D5M1I15M2D31M1I8M2I11M3D3M2I17M1D11M2I6M1D6M2I8M1D13M2D2M1D21M1I9M1D6M2D10M1D1M1D6M1I22M2D3M1D23M3I5M4D8M1D26M1D7M1D3M1I6M1D18M1I2M1I11M2I1M1D14M1D2M3D5M1D14M1I5M1I5M1D18M1D1M1D3M1D26M1I12M1I3M1I14M1I14M1I17M2D14M1D12M3D6M1D8M3I13M2D3M1I4M1I6M3I29M1I19M5I2M1I3M2D9M1I15M1D45M1I12M1I3M2D21M1I22M1I4M1I15M1D6M1D3M1D10M1D10M1D8M1D7M2D28M3I10M1D5M1D7M1D7M1D13M1D8M1D75M1I51M1D71M1I22M1D11M1I21M1I9M3D5M1I20M1I6M1D12M1I5M4D4M1D3M3D37M1I2M1D18M4I21M1D3M2D5M1D7M1I3M1I3M2D16M1I45M2I2M1I2M1D3M1I2M1D4M2I24M4D7M2I18M1I1M2I4M1I2M2D22M4D40M1I3M1I4M1D1M2D54M1I10M1D37M1D17M1D14M1D1M1D5M2D4M2I16M1I3M1I12M2I15M4I15M4I6M1I3M2D2M2D1M1D71M1I3M2D8M1I9M1I12M1D6M1I4M1I7M3I1M1D5M1I13M1I15M3I41M1D5M1I19M1D3M1D8M1D3M5I7M1I9M1D7M1I3M1I18M1I23M2D4M1I7M2D9M3D4M2I9M1I15M1D4M1I6M3I2M1D18M1I5M1I21M3D1M1D19M1D4M1D12M5D24M1I3M1I11M1D38M1I10M1D7M1I3M3I3M1D2M2I9M1D5M2I19M1I6M2I7M2I28M1I8M2I16M4I1M1I7M4I10M1D12M1I9M1D19M3D14M1I33M1I10M4I6M1I4M1D10M1I10M2D4M2I3M3I4M3I24M1I22M3I3M1I8M6D11M1D5M2I3M3I1M1D11M2I12M3D12M1D2M3I27M1D9M1I19M1D5M1I4M1I7M1I7M1I15M1I2M1I11M2I9M1D5M1I3M1D3M3I5M1I8M1D6M2D11M1I27M1I1M2D5M2I11M1I5M1D5M2D6M1I29M4D19M1D10M1I17M4I7M1I4M1I8M1I6M1D2M1I5M2D3M5I32M1I14M1I5M1I11M2D4M2D9M1I15M4D4M1I9M2I14M1D14M1I2M1I1M1I2M1I4M1I25M1D8M1D2M2I11M1D11M1D19M1D15M2I6M1D8M6I9M1I17M1D7M1I3M1I6M1I15M1I11M1I6M5D2M1D22M1D5M2D9M1I36M1D21M2D12M4D1M2D13M1I19M1I31M1I71M1D8M1D58M1I16M1I73M1D55M1D7M1D22M2D26M2D7M3I4M1I3M1I3M5I84M1D82M1D5M1I16M1I15M1I7M1I2M4I34M1D8M2D2M1D26M1D15M1D97M1D8M1D6M1I4M2I6M1D1M3D6M1D8M2D11M1D3M1D11M3D2M2I4M1D10M1D26M1I2M1D1M1D9M3D6M1D18M2D8M1D40M2I1M1D3M2D13M1D1M1D2M2I9M1I1M1I6M2D4M1D19M1I10M1I5M1I3M1D4M1I9M1D7M1I2M2I2M1D13M2I37M2D1M1I3M1D15M1I5M1I4M1D2M1D5M2I7M1D7M1I10M1D9M2D27M1D4M3D2M2I14M1D11M1D2M1I13M1I5M1D11M2I10M2D12M1I3M1I4M1I1M1I26M3D49M6I1M2D35M1D62M1I6M1D8M1I26M1D15M1I84M1I16M1D4M1D43M1D24M1D6M1I7M1I16M2D9M3I1M2D50M1I41M1D13M1D62M1D8M1D47M2D82M1D4M1I9M1I2M3I1M1D51M1D77M1I58M3I96M2D13M1D46M1I25M6I6M1I53M8I22M3I1M1D9M1I1M1I32M1I3M1I54M1D93M36I3M1I49M13I28M1D3M1D22M2D15M1I8M1D4M2I16M1D92M1D10M3D10M1D4M2D3M4I14M1D49M2I13M2I10M2D52M1I11M1I6M1I5M2D2M1D75M1I2M1I11M1D50M2D12M1I5M2D50M2I67M2D8M2D12M1D1M1D2M1I3M1I2M1I19M1D15M1D2M1D1M2D7M1I3M1I15M1D13M1D46M1I17M2D16M1I32M4D4M2I7M1D116M2D40M1I13M4D38M1D11M2I16M2I33M1I53M1I14M1I7M1D123M1I9M2I18M1D3M1I28M1I2M1D13M1D6M1I30M1I21M1I43M2I2M1I14M1D6M1D36M2I30M1D23M143S	*	0	20474	GCATCTCTATCTTAGGACTATTTATTACTTAATTTACATTCCATTATTGTGGCAGATTGTGGTTGTCATTTGCTTCAGAATCAGTGATAGTGAAATTTACCTCTACTTCAGGACATTCATGGCTGGAATTATCTGTTTTATATTGCTCAAACGAGTCCAGATGCCCCATACCTGTACTCTTTGCCGTCATGAAACTTTGGAAACTACGCATTTGCTCCAGGATATCCTGTTTTTAATGTAGTTTGTCTTAGACATGGAGTCCTGAATCTCTGAAAGTCTCCAGTGAGCAACTCTTAGGGACAGAAGTGACAAGGCCCATCAGGGGAGTCTCTTGTGGACTGGCTTTCCTTTGAGGGAGTAAATTCAGAGTCATACCTGTGCCATGCAGAGTAATTCTACATGTTCACAATAGTATGTGTTGACACTTCCAAGAGTATAAAGCAATTAATTCATTCAGCAGATGTTCTTTTCCAGTACACACTACATTCAAAGCCTTAAGCACAGTGACATGTGCTATATATACTTCTTCAAAACAGTTCTTACCATCAATAGCCGAGACTGGTGGCAGGCAGGCAGGTGGCAAAGAGATACCACAAACAGCTACAGTTTGAAAAAAAGTAAAGTGTCTAAATCTTTTAGAGTTATTCTAAAGGTGCTATTTAAGCCCCTTGTGTGGAAGATGTAAGCAAGCTTGAAGATTGTGTTTCCAAGACTGAAGGAAGCAAAGGGAATGGGTGGGAGGTTGGTGGTGGTGGAGTTTGGGAAGAGATGGTGGCTCTGAGTGGAGGTGGGAAGCGGATTGTTTTAGAGAGAATGTCTCTTGCCAGCAGTTCACAGCAGGATGGAACTGGCTGAAACTGGACAACACCATTGGACCACACTGGGACTTATTTGTGATTGGCCTCATTGTTCTCAGCTGGCATTTGCTTAGAAATCACCATGGGTAGGATGCGGATCTACAGGAAAACCTGCTCGGGAATCAGTTCTTTCCCAAGGTATCCCCACTAAATAAACAGTTTCCCATCCAAATCAAGAGTCGCTGCAGTTTCCACTCAGGGCTGTGATGAGGCGAACAGGCGCTGAGGACCATCCCTGAAGGCAACTTCAGACTTCATAGCCTTACGTGGAAAACCCTTTGGGATGCTGAACTGGTCACCTAAGACCTTGTTACCAATCTGTCATCTTGGTGACCTAGTCCCACGTTATGAATAAAAAGACCACCCATTTTCATGTTGTTAGAACAACCTCCCCTCTGTCAAGAGGACACTGGAGTTTCCTGGCTCACAGACAAACTAAGGTGAAGAGAAGGGGGAGTTTGGAGAAGGCAGAAATCAGATCCCTCAGGAACTATGATAAAGACACAAATATACAAATAGACCTTGTACAAGCACATCCTATAGGAATGACCTGTGAGAGACTCTGGGCTAACCCAGTCCCCAGCTTCCCGGGAGCATGTCGTACCTGAACGAGGGAATGGGGGTTGACCCGGGCTCTTCACTGAGGCCTCTCTCAGAAACCTCACTCAGTGCAGCTGTGTTAGTGAACAAAGCCAGTACAGCATCACACCCCTCTCCTCCACCCTCATCAGAACCTAGACTGCTCCTGGGGCGTCCTTAGTACCCCTTAGAAGGAGATTATTCCAGCCTCCTAGGATAAAAGCTAAAAGGCCCAGATTCTCTGGCTTCTCTGACAGGCAAATCAGGGGCCCAGGCCTGGGGACAGGGGCTGTGAGCAGGAAGTGTAAGGAGGCCTGGGACATATCAAGGGCCAGGCTCAAATCTAGCTCAGATATTTGTCTTTTCTTCTTCTTCTTCCTTCCTTCCTTCTTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCCTCTTCCTCTTCCCTCTTCCTCTTCCTCTTCTTCTTCTTCTTCTTCTCCTGCTCCTGCTTCTTCTTCTTCTTCTTCTTCCTCCTCCTCTTCTTCTTCTTCTTCCTCCTCTTCTTCTTCTTCTCCAGATGTTGACTTCTTCTTCTTCTTGTTCTTCTTCTTTCTTCCTCTTCCTCTTCTTCTTCTAGCTAGCCTCTTCTTCTTCTTCCTCTTCTTCTTCTTCTTCTCAGATATTTATTTCTTCTTCTTCTTCTTCTTCTTCCTTCCTTCTTCTTCTTCTTCTTCTTCTTCTTCTTCTCCTTCTCCTTCTCCTCCTCCTTCTCCTTCTCTGCCTTCTCTTTTCTCTAACCTTCTCTTCTTCCTTTTCTCTCTTCTTATTCTTCTTCATCTTCGTCTTCTACTTTTCTTTTCTTTTTTTTTGGAGGCGCAATTTCCCTCTGTCCCCCAGGCTGGAGTGCAGTGGCAAGATCTCGACTCACTGGAACCTCTGCCTCCCGGGTTCAGGTGATTCTCCTGCTACCTCAGCCTCCTGAATAACTGGGATTACAGGTGCCTGCCACCACGCCCGGCTAATTTTTTGTATTTTTAGTAGAGATGGGGTTTCACCATGTTGGCCAGGCTGGTCTCAAACTCCTGACCTCAAGTGATCCTCCAAAGTGCTGGGATTGCAGGCATGAGCCACCACACCCAGCCAATATTTGACTTCTGCCCAGACCTCAGTTTTCCTGTGTGCAAAAAGGGAAGAATAATGCCTATCTTAGACAACTGATATTAAGATTAAGTGGGATAATGGATGTAAAGAGACTGGCTGGGCCTGGCACCTAGAATGAGTTCCATAATTGGTGCTTTTTAATGTCTTTAAAAACTCATGGCAAATCCATTGGGGAGAGAGCTGAGTTGGTAACAATCTGTGTGGCTTCAGCGCTTGCAGTTGGTTCTCAGCTAATGTGCTAGGTGCTTAGGTAGGAAGAGATCTTGCTTCGCTTACTTAAAAATCCAATTTAGGGACATGAAAATTTAATTTATAATGTCCTTGCGTAATCAAGGTAGGATGAAATAGTTGGACATGTCTTTGATTTGGGATCAAACAACTTGGATTCAAGTCCAGCTCTGTCCCTTAGTAGCTGTGTAACTTTAGGAATGCTTTCCAAATCTCGGCTTTTTCCTCCATAAAATGGGATTATTTCCTACCTCACTGAAGAATTGTGAAGCTTAAATAAACCTAACATCAAAAGTGCTTTGTAAATACTAGCACACACACATATGGCCACAGTCATTTATTTAGGCAGGGAACGAATCAGGTGGGTGGATTCTGAGGTCCAAGTGTTTAGAATTTGGGGTTCATGTCCCTGACTTATTAGGGAGTTCAGTTCCCAGGGATGCAGCCTAGTTTATAGAGATGTATTTTGGGGAAGGGGTGGCATCAAAATCTCAGTTCAGGACGTCATGGAGAGGTATGTGCTATGACATCTCACAGGTGTCAGGGAGATGTAGAGGCACATTCAAGATGGGTGAGAACCCAGAGAGGGGAAGCAGAGAGGCAGCACCAGTTGACCCTGCCTCAAGTCTGGATGAACCTTTGACCATGAGGGTGACTTCTAAGGGTGGCTGCTGAGCAAGGAAGAGAGTGCTAATTTGGGGCTTGCTGGCTGCAGGTGAGCCACCACACAGAAATGTAAGAGGAGGTGGCTTCAGTTAATCTGTTTCCCATTTCATTCAATTGTTTCCCATGTCAATCTGGAAGCACTGGAACAGCTTTGAAAAGCAGAGTTGCTTTTAGGCAGTTTCTAATCTTTCAAATGTCCATTCAGACTCTTCATACCTGAACACTTGCAGATGGCAGTTCTCCACTGCCTATGCATGATTGGGCATCTTGCAACCTCAGGACATCTCCAGATGACCCAGGCAGAAGGAAAGTGCTCTTTCAAAGCCACTAGTCTTCTCAGTTATTACAAATCCCCTTCCCTCTATGGGCCACCTGGACATCTTCATTTCTGCTTCTGATGCTGAATAAAATGGATATTGGGCTTTACAAAGATATCAGTTTTTTGTTTGTTTTGTTTTTTTTGTTTTGTTTTTTGAGATGGGGTCTTGCTCTGTCGCCCAGGCTGGAGTGCAGTGTCACGATCTTGGCTTACTGCAACCCCGTCTCCCAGGTTTGATGATTCTGCTGCCTCAGCCTCCCAAAGTGCCACCACCCAAACTAATTTTTATTTTTTTTTTTTTTTTTTTTTTTATAGAGACAGATCTCACTCTGTCGCCCAGGCTGGAATGCAGTCAGCTGATCTTGGCTCACTGCAACCTCCACCTCCCAGGTTCAAGTGATTCTCCTGCCTCAGCCTCCTGAGTAACTGGGACTACAGGTGCCTGCACCACACCCAGCTTTTTTGTATGTATGTTTTTAGTAGAGACAGGGTTTCACCATGTTGGTCAGGATGGTCTCGATCTCCTACCTTGACCTTAAGTGATGTCCCACCCCTCGGCCTCCCAAAGTGCTGGGATTAGGCGTGAGCCACTGCACCTGGCTAATTTTGTATTTTTAGTAGAGACAGAGTTTCACCATGTTGCCCAGGCTGGTCTCGAACTTTGACCTCCAGCAGACTGCCCGGCTTGGGCTCCCAAAATGCTGGGATTACAGATGTGAGCCACTGAGCCTGGCCCCAAAGTATCTGTTTTTTTAAAAAATCTAATTCTTGGTGCTGTGCAGTGGCTCACACCTGTAATCCCAGCACTCGGGAGGCCAAGCAAGCAGATCACGAGGTCAAGAGATCGCGACCATCCTGGCCAACATGGTGAAACCCTGTCTCTACTAAAAAATACAAAAATTAGCTGAGCATAGTGGCAGGCTTCCTGTAATCCCAGCTACTCAGGGAGGCTGAGGTGTCACTTGAACCCGAGGCAGAGGCTGCAGTGAGCGAGATCACACCACTGCACTCCAGCCTGGTGACAGAAATGAGACTCTCTCAGAAAAAAAAAAAAAAAAATGAAACTGCTTTTTGTATTTCCCTTAGATTTCCTCCCCAAAATTCTTCCATTGAAATTGGGTAAAATAACAAATAAAATCCATTTTTTTTTTTCAAAGTCAGTCAGAATTAAATAATTTTGTTTTATGGAGCAGGGATCCAGATCATTTTCTCATAACATTCTCCACTGAATTCTTTCTCCAAAATCTTGAGTAGTGGAGATTGCTACTCCTCAGATTTGCTGCATTCCCTCACTGGGCATCCCCCAGAAAGCCCCTAGAAGGGCATGGTGAGGCCTGAGAAGAGGAAAAACATTTTCAAAGCACCCTGCTATGAGCCAGAACTCTGTTTCCATCTGTTTTCTCATTTCATCTTAAAAGCATTGAGAACTGGAGAACAACTAGAAGTGATACTCTGTTGCTTTTGGAGAGGAGGAAGCTTGAAGCCAGAAAAGCTGAAAAAGATCATGTGATAAATAATAGAACTGTGATTTGAGTCCCAGATCTCTTCTAGATCATTCTTTCCTCCCCATGTTGAGTTCCAGTTATTGCTTGCTTCTTAATACAACTTCTCCAAGTTAGGTCTTAAAAACAACATTAATCCTTGCATTTATCTCAAGAATTTTTATGGGTCCAGAGAATTTGAACAGAATTGTGGTCAAGGTGATTTCTTCCTGATGCTTAGTGGATGGGCTGTTCCTAGAATCCAGACAGGTTTACTCACTCAGCAGTGACTACAGTGACCAGTATGCCATCCCAGATGCACAGCCTCTTGGCAGCCAGTGAGGACAGGCATTTGGGCTACTATGGCCTCAAAAGCATTTCCACAGAGAATGTTCTGCAGAGACCTGGGCAAAAACCACAGAAGCTGCACAGCTTTAAGAATGACTCAGGGAGTTCCAGGTATCCACTTCCCTGCTCTATTTTCAGATTAATTGGGCATTGTACTCAGTCTCTCAGTGAGGAGAAGTAGCAAGGATGCAGCCATATTTAACCTATATAAAAGAATACTGTTTAAAATCTACCAAAGAATAGTTACAGCAGCAGAATTTGAGTACAAAAAAATTGGCAGAGAAAAAAATGCAGCCAAAGCCTGAGCTGCACCTGTTTTCAGGAAAAACAAAGTTCAGACAGCCCAAATTTAGAGCATGCCTGCAGCCTCAACTTCCATCTTCCACCTTTCAGAGCTGAAGAAATGCAGATGTGTGAAGGTAAGTGGAGGGGGAAGAGATGTCCCTCCCTCTGTTTCTTAGCTAAACACACACCTCACATTGGCCCTTTCACACGCACACACACACGCCCACACACACTCTTGAATAGTAACCCAGATTCTTTGCTTTGGCTCAAAGGGAACATGAAGCCAGAGATGCAGAGTCCCCAACATGATTTGGGGATGTGTCAGGCACCCTAAGGTGGGCTCCACTCCTGTGTCTCTGGAATTCATTCCTGACACACTGATGGAGTGGGAGCACGCCCCAAGACCCTCCCTGTTCCCCACCTCCATCTCATTCAATTTCAGTTCCCAGAACCACAGTCCCCATAAGCCTAGCTCCTCTGCCTCAGCTCCTGGCACCTGAGGTCCTCCTATCAGGGATCTGACCCACTAGCAGCCAGGTTGCTAGTAATGTCCTCTCTGCCCTAGGGGTTCTGCTGCCTGGATGGGAACCACAGGAGGTAGTACATCCTTGGAGTGGAGAGTGAGAAAAGCAGCCCTCACTATGGACGAGCCTCTAGATAGAGTCAACATCCATCATCAAATTGAACTTCTCAAAAATGAACTGTGATGGTCCAGATCATATGCTCCATCATGTTCCCTAAACCTTACATTATACAAAACATCTACTTCTTTGATTTTTTCTTTTTTCTTAGAGATGGGGTCTCACTATGTGGCCCAGGCTGGATTGAATTCTCGTGGTTCAAGTGACTCTCCTGCCTCAGCCTCTTGAGTAGCTGGGACTACAGGCACACAATGTAATCCCAGCTCCCAGCTTTGGGTTTTAATATCAAAGTTACACACTTGGTTAGCACTAGGTGGCACTGTTAAGGTAAATGTAAAATGTGGGGAAAAGCAGCTGACAATACTGCTAGTCAGGTAGTTACAGAGCCTGGGAGCTGTGAGTTCCTAGAAAATTCATGGTTTTGGATGCACAAATTTTAATTTTACATTTGCATTTTATCCTATGTGAGGTAAAGTGATTAAAAACAGACTCCCATTATTTAAAAGAAACAAGCCTTCACAAATTGTCTGACACAGAATGTCACTATGACATTGTTTCATTTTCAACAACTGTGACTTTGAAAAATTACTCCAGGATTTCTAGAGCTCTCCCACTGTCTTGTACCTGTTTACATCATTTTAGCAACAAGAACACATGGACCACATGGCCGGGGCAGTGTCTCACACCTGTAATTCCTAGCACTTGGGAGGCCGAGGCGGGTGGATCACCTGAGGTCAGGAGTTCGAGACCAGCCTGGCCAACATGGTAAAACCCCATCTCTACTAAAAATACAAAAATTAGCTGGGCATGGTGGCAGGGTGCCTGTAATCCCAGCTACTCAGGAGGCTGAGACAGGAGAATCACTTGAATCCGGGAGGTGGAGGTTGCAGTGAGCCAAGATGTGCCATTGCACTCAGCCTGGTGGCAAAGTGACCTCTGTCAAAGAAAAAAAAAAAAAAAAAAGAACACACTGATACAGCAGTGCACTGGAGAGAGTCTCAAAGAGATTGCTCTGTTAAAGAGCCAAGGAGAAAAGGTAAGCAATGCTCAACCACTGTCTTCCACAATAGCAGACAAATCAGTTGGTTCAATGACTCCTCTAGTAATATGAGGACCTGTATTCTTCCAACAGCTGTGGAGCCACATGAGGACTGGCCCCACTCAGCCTGGGAGTGAGCCTGCACAGCTTCCCAAAATAGCTTCAGAGCAGATGTGAGCTGGCATGTTACAGAGAGCCTGGGAATGGAATGGAGTAGACCAATATCTAATTTACCTGGAGAGCAAAATGTTCTCCTAAAAATATTGGATTGGTGAACTAAGGAACAGCTGAGACATGCAGGAGACTCTCTGCCCTCTGCCACTGTTTGCCCTAAAGGCAGGACATAAATCCCATCTGCTGAATAGCCACTTGTCAGCCTGAGGCAGGCACCTAGCAGACACCAGAAAGCCGACAGACACCCCTTCAGCCAGTATCTTCCCCACCAGCTTTCCCCCTTTGGGAACTGGACACATTCTCTCTTTGTCTTATCACTGCACTAAAATTGTTGCTTTTACAATTGTGCTACTTAAATAAGACTTAAAGCTCATTTCCAATAAATACTTTTAGAGATCACCTGAGATGTACTACTCCCCATGATGGATTATGACATGTATACATGTCCAACACCTGTTTTTCCTTGTTGATCTCTGTCTTTGTTTCAAAGAAGGGTGGCTAATTATGAATTACTGAGGAAGTAATAAAATTCTCTATAATTTTTCTCCCCCTTCACACATTATACAGAAATGTGACTAAGCAGGAAGAGGGAGTCATGTCTGTAGTTCAGAAAGGGCCTCCCTTAAGAAAGCCTCATATGCATTTCAAATTTCAGCCATGTGTTCATCTTCACCATTTGGTTTCCCCAAAGCTGACATGGAACAGAGGGATTTTGCATACAAATACGTTTGGCCCCAGTAGAGATTCTGTTCAAGAAAATATAAATAAGGAAGAAACTTAGTACAGAGATTATCAAAAAAAAATTGCCAGGCTGGGCGCAGTGGCTCACACCTAGTCCAGCTCATTTGGGAGGCTGAGGCAGGAGGATCACTTGAGCTCAGGAGTTCAAGACCAGCCTGGGCAATATGAAAACCGTGTCTCTACAAAAAAATAAAAAATAAAAAAACAATAAAAAGTGCTGGGTGCAGGTGCATGCCTGTAGTCCCAGCTACTTGGGAGGCTGAGGTGGGAGGATCACTTGAGTCAGGAGGTTGAGGCACTGCAGTGAGCTGAGATCACACCACTGCACTCCAGCCTGGGTGACAAAGTGAGACCTGGTCTCCCCAAAAAATACCACTGTGAGTCACCAGAGCTCAGTCCCACCCAGAACTCCACTGTGCCAAACCACACCTGTGAGTTCATCCCACCAAAGGACCTTGAGGAGCAGATATTATTACAACTGCTCTGAATCATTGGTTGAGAGCAGTGGCCCCCATCAGGAACATTAGTGCACACTGCATGCTTCCCCACCCCATGTGGGAAGGTGCAGACCAACAGGGAAAACCTTAGGGAAATGAATTACAGGTGCTTGCAGTTAGCAGCCTGCCTCCCAGCAATGAGAAGCCCACAGGGGATGGAGCCAGGGCATACAAGCAGCCTCCTGGGAGCAATGAATTGGGCTTGCTCTGACCCTGTGCTGCCTCCTTCAGCCAAACAGTTCCCCTGAGCCACTTACAGTGTCCCCAAGCACTCTGCCAAGGACCAGGAAGGAAGGAAAGCTGCCTCAGGCTGCGTGTCACTGTAGAAGAGAGAAGCCTCATTGTTAGGGTGCATCTCCTGATGCAGTCACTTTCCTGGAGCCAGCTCACTGCATCCCTTAGGCATTCTGTGGGGTAAGATTCTTCTTCTATTTTCACCTTAGAGCCATGCTTGTGCAGCCATCTGATTACTTCTTTGAACAATTTGTAACCATCAACAGAGGATCATTTAAAACAGGATCAATAAGTATCAGTCACCAGCTGATAGATGAATTTTCACTCCTCTAAAAAAGCACGGAATGCAGAAGCAGAGTAAAAGCCAGGGCTGTTAAGTCCAGCCATGTGTTGAAAGAACTGGAATGCTAGTAAATGAGCTGCAGCAGGACCTGCTTTCAGCCCCTGGGACCCTTTCAGTGATGGGGACAGTGTGGACATGGTTGAATTCTGCCTGTTTTCTCCCTCTTCCCACCCCACCTGCCTCTGCTTTCCTCATGGTTGAAGGAGTGAGGGTGGTGTGAAAGATAGTTTAAGAATAAGAAGAATTTCCACTACTTCAGCACATAAGTTTATCAATAAAGTGCCCATGAGCAGAAGTTCACTGTCAGACTCCCATGGCTGCCCTGCTGCTTTTCTTGGGATTCTCACTCAGGAACATATGTCCTGCTTTGGGATCACCAAAAGCACAATGAAAGCAAGAGTAGGGCCTTGAGCCCAGCTCATTTTGGGAAGTGATCATAGGACTCAGTGGAGAAGAGAAGAAGGATGAAAGCCATAAAAAACATGCGGTTTAAAGATTATACTGTGACAATGAGGAGGTCCCTATTCCCACCAGGGGTCTGGGTTTGCAGAAAAACCTCTCCAGAGTGTCTGCCTCAAAGAGAACTGATGGCCTGAAAGACAAGAACCAGACTGGGTCACTTCCTGCACTCCCTTCCTGTGTTTAAAGGATGCTCCAGGTGCATCTTCTTCCCCCTGTCCTTTCTCAACTTCAGCTGAGATGTGCTGGGCAGAACCGTGCTACCAGTGTTCAGGCATGCGGTCAGCAGGAACTCTGCCTTTTCCAGAAGGTCCTCTGCAGCTGCCGGTGAAAATCCTGGGGCAGTCCAGAAAGCATCTGCTTCATGAGTGAAGGTCATTCTGAGCCATAGAGGATGCCCACTGGTCCCTGAACAGACTCTCTTGGATGGACTCTGCACCTGCAGTAGGCTGAATAATGGCCTCAAAGACATCCACGTCCTAAATCCACAAGCTTATTGTGAATGTTCCATGTCAGAAAGGACTGCAGAAGTGAATAGGATCTTGAGAGGGAGATTATCTGGATGCATCCAGGCAGGCTTCATCACAATCACAGGTGTCTTATAAGAGAGAGGCAGAGAGAGGTACAGCATATCAGACAGAGAAGGAGGGAGTCTCCTGGATCATCCAGAGCAGGCTCAATCATAATCACTGGAGTGTCACCAAAAGGAGGCAGAGAGATTTGACCACAGACAGAAAGAGGAGGAGCAGTAATGTCACTATGAGTGAGAGAGTAGATGTCCACAGCCAGATGCAGCAGCATAGAAACCCAGAGGGAGCAGGATGGTTCCTGCCAGAGCCTCTGAAGGAGTGTGGCCTTCCTGACCTCCAGATGCATGAGGGAACTCTAAATGCCTGTGGTTTAAACCACAGAGTGGTGAAATAGGTGCACTGTAGCAGCATTAAGGAAATAGACTGCACACCATGCCTGGCTCCCTCATGTTTCTTTCTGGTTTCCTGAGACTGCACACTCTTGCTGCTGCTGGTGAGTGGAGGCAGGAATTGGCTCCCAGAGGGCAGCCAGTTTCTCCCTGCTGTCTTGCTTCTCAGTCTCTACTCCCTGCTCCTGAGCAAGTAAGCCTCAGCCTCTCACTTGTTGTGTGTGTCTGCACCCAGTCACTCTGTGTCCCCCACACTCTAGGACACAGAGGGAGGCTCTCCCAGTGGCTCTCTTACTCTTACCTCTCATGGCCCAGGTTGGGACAGAGCTCCTCTCTCCCCATCCCACAGTGGAGAAATGCCAGCAGCGTCAGAAACTCCAGGAAAGGCTGGCCTCACGCCTCCTACTTCCACCGCCCACCAAATGCCCTGCCCCCTCACCCCCATCATTTTGCAGAAGTTCTAAGCTCAGACATCCAGCACCTCATTTTATAAGTGTGGGGCCACTTGGCTCTCTTTGTTAACTCTCAGCCTTGTGGCTTCAACCCAAACAACCTCAAAAAGGTCCATTTTGTCACCCAGAAAACCAGGCACAATTTCCCAGAGTTGGACTTCATATCTCTGGGCTGGACGCAGCAAATGTGCTCAGCCAGATACTCAGGAATAATGCTTTGTGGCCTCAGATGCATTATCTCCATCCCAGCTTCTGGACAGTCTGTCCCCTAATTCCAAAACCACAGAAGCATCAGCAAGTGTCGGCACTAAAGCACTGAACTAAGACAGGCCTCCCTGCCTGTGGGAGGTTGTTCAGAGAAAAATCTCCCAAAACCAAAAGTGATCATTTGTGGCTGGGCTAAAGATCTGTACTATGAGGATTTTAGCAATGACTTCCTAAAAATAATTGTTTGCTCAACTCCTATTCACAGTCACAAAAAAAAACCACTTACCAGAGGCATCAGATAGAATTTGTTTTTCCCCAAATTTAGAAGAAATCATTATATAGTGAAAAGAAAAGAAAGGAAGGGGTGAAGGGGTGAAAGAAGTAAAGCCTTGGATTTCCTCTTGCAGTGAATTCTACTCCTATCATGAGACTATCAAGATTTTCCATTCTGTCACACATCAGCCTCCTCACTATTGAGTAAATTCTATCTCTAGAGGTTTTTTGTTTTGTTTGACGGAGTCTTGCTCTGTCACCCAGGCTGGAGTGCAGTGGCACAATCTCAGCTCCTGAAACCTCCTGCTGGGTTCAAGCAATTCTCCCACCTCAGCCTCCCAAATAACTGGGATTACAGGTGTGCACCACCACTCGTGGCTAATTTTTGTATTTTTAGTAGAGACAGGATTTCACCATGTTGGCCAGGCTGGTCTCAAACTCCTGACCTCAAGTGATCTGCCGACCTCAGCCTTCCAAAGTGCTGGGATTACAGGCACGAGCCACCATGCCTGGCCAAAGTATTTGGTTTGTATCATAATTAAATATAAGAAAAACTACTTATCTCACTTTAAGAACACATTCTTTTTATAAGAAAAAAGTAGCAACCCATAGCAACAATAAAGCAATACATTCTAACAATAAACGTTTATTAACAAAGAAAAATCATAAAAATAAATAACAATTTGCCTAAGAGGGGCTTTCTGAGGGAGGATGGTCCTGGGCTGATGCATTTCCAGAGAGGCAGATGCTGAGTTGCACCAACTCCTGAGGGGTGGACAGCCTTTCTTCAGCGTCTGCTCCTGGGGAAATGAGAACTAAGCAGACATGATGAAGGCATTATTAGTTTTCCAGATAAGAACACCTGGCTCAAATCAGCAGCTTGCCTCAGATCACACTGCTAGTTAGTGGAGAAGCAGGGATTCAAGCTGGATCCACCCCAAAGCCATTATGCTTCTTCCTATGTATCTCTCCATATTTTATCTTAATGTCCCATAGTATCAACATGCTTTCACTACTTGATTCATCTCATCATTTTCTTTTTTGTTAATAATAAGTGGACCAAAAATCTTACAACCTTATTTTGAAAAATCTTTTTTTTTTTTTTTTTTTTTTTGAGATGGAGTCTCACTCTGTCGCCAAGGCTGGAGTGCAGTGGTGAGATCTCGGCTCACTGCAACCTCCGCCTCCTGGGTTCAAGCGATTCTCCTGCCTCATCCACCTGAATAGCTGGGATTACAGGTGCCTGCCACCACACCAGGCTAATTTTTTGTACTTTTTGTAGAGACAGGGTTTCACCACCATCAGCCTAGGTTGGTCTCGAACCTGATCTTGTGATCTGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCATGAGCCACTGAACCTGGCCAAAATCTTTTCTTTAAAATTATGTTTCAAACATCACTTAAGAGAAAACACAAACCAACATATAAAGCCAGAAGGGCAAATATCATTTTTACTATAATGATTGCTTAACAATAGGAAGTAGATGTTGATTCTTGATCAATCATCACCTAATGAATATTGGGTTGTGATTGTTCTGACCCCACCTATTTCCTGATCTGGATTTTCCTCTCCATTACCCCTTCCCACTGTATAGCAGACTCATGCCTTCCAAAGACACACTCCCCTTTCCTCAGGAATAGGTGCCCCAGTGCCCTACCATGTCCCCTCAGCCCAGTTCTGAGACCACTGGCATCTTCATGGGTAGGCCCCACCTGCAGCTTTGGATTCTGCCTGGAGCATCTGCCTAGGGAGAGTTCTCCCAGGCACCCACAGGAGCACTAATGGCCCAGGAAAAGATAGACAGAGTGCCAGGGGTCCATGTCCCAACACCCCTCCCATAAATGTGAGCAGGAACAGTTTCCTTGGCTTGCTTGGTAGGCTGATGTGCAGGCTACATTCTGTAAGTTTCTCCAGGAAAGGTGTCCAGCAGGATGGAACTTTAGGTGTTCACTGCCAGAGAATGTACTCCAGACACCATTCTTGATAGTTTTCTTCTTCCCACTTTCCACTCCTCATCTTACCACTCATGCCAAATAAACTGCTGCACTCAAATGTTTATCTCAGAGTCATGCTTTTAGGAACCTATGGCAGGAGAAGAAAAAGTCTAGGGAAAGATCATGTTAAAGCAGCTGAGAAGACACAGAGAATAACTACCAGGGTTGGGAATAAATCAATGTTTGTAACATTTACATACCAGTACATTTGTACTGAGTGTGACTTGAGAACCACTAATAAAAATTTGCTTTCACTTTTGTGTTTTCAGCACCTCACATTTGTTTCACTTTTTAATAATGAATAATGGAATGAATGAATAGAATAATTAATGAACAATAGATGAGATTCCTAAGCTTTCTCCTAAGGTTAAGTGAAGGTGTTACAAATTATGCCAAAGAAAGTTTGGATTATAAAAAAAAATAATGAAATAGTGAAAAGCAGGCTTTGTTTTCACTCAGTTCTCCTGGGACACTTCTGACATCATCTGTCTTAGGAGGTTTTCAGCAACAAATTCTCTGGCTCTCTGGACACCTAGTGTTACATTCATTCAAATTCTAACACTACTTAGGAATTAAGCTTTGAATCCCTGAAATCAGAGGGCTCAGTCCCACAGGCCCTGACTGCCTGTTCAGATATAATCCTGTGTGATTTTCCAGGTTGCCCACACTTCTGTCTGCCCTGAAGCTACACATTGGAGTTGCCCTGCAAGCCCCTCCTCAGTTGGATGAAATTTTGTATAATGGTTCCACCAACTCAGGAGAAGCTGTGCTTGTTGCACACTGGTTTATTAAAAGAATACTGAAAGAGACAAATGATGAACCAGTGAAAGGACATGGAGATGGTTCTGGAAGGGCCTGGAGAGTGAAGGAGTTCTCCTCTATTGGGGCTGGGTGTGCTATCCCCCAACACATGGATGTGTTTCACCAGCTAGAAGAAGATCCTCTAGCATGCTGGGTGGATTTTATGGAGACCTCATCACACTTGATATGATCAATTATTAACTAAATCCTCCAGCCCTCTCCCCACCTGAAAGATACTTTGATGGGAGTGAAAGTTTCAAGGATTCCAGCTCCAGTCAGGCCTTAGATGCTCAGCATCCAGCCCTATCACCAAATAGCCAGGAACTTATCCAAAGTCACCTAGGAAGTTCAGAACAAAGGGTGCTCCCATCACCCAGGAGAATTCAGAGATTTAGGAGCTCTTTGTCAGGAACTCAAGAACTGGATCAATGACAAATATTCAGTGAACACTATTTTAATCCTTGGAAGAAACCACAGCAAAAGAAAATTTAAACTCTGTGCCAAGACAGATGAAAACAAATATATGTGCTTCTTATTACATAATATCACATGAAATGATGTAATAATGTAAACAATCATCTATAAAATTTAGACAAATGAAACCATACTAGCATGTTCAATTGGGACAGTGCCAAAAATATAAGGTCAATTTTCCAAATGAATGTTTTAAATATGTCCCATTCTGGCCGGGCATGGTGGCTCATGTAATCCCAGCTCACTTTGGGAGGCCGAGGTGGGCAGATCACCTGAGGTCAGGAGTTCAAACTCCATCAGCCTGGCCTAACATGGTGAAACTCCATTTCTACTAAAAATACAAAAAATAGCTGGGCCGTGGTGGTGCACCTGTAATCCCAGCTACTCAGGAGGCTGAGGCCAGGAGAATCGCTTGAACCCAGGAGGCGGAGGTTGCAGTGAGCCGAGATTGCACCATTGCACTCAGGCTGGGCAACAAGCGAAACTCCATCTCAAAAATAATAATAATAATAAACACCCATTCTTAATAAAATACCAACAAAATTACTTTTTCCCAACTAGTCAGTTATACCCAAAGGTTGTAAAAAGGAAAAATAAAGCATAAATAGATGGCAAGGACAATTCTACAAGGAAAAGGAAATAAATGAGGAAAAGTAATGTAAACCCAATAAAATATAATGTAAATAATTAAATACATTAGATAGACAGCATAGAGCATCAGAAATGACCAATACAGGGTGACATTTCAAATCAATGGAAAGGGAGGGGTGTGGTGATTAACGCTGTCTAAAGTAACACTTTAGGTAAAGAATTGGAAAGAATAACAGGTCAGGAGTTTGAAACCCCGTCTCTACTAAAATTACAAAAAATTAGCTGGGCATGGTGGCACATGCCTGTAGTCCTACCTAATACTTTGGGAGGCTGAGGTAGGAGAATCACTTGAACCCAAGGAGCTTGAGGTCATGAGTGCTATGATTGCACCACTGCACTCCAGCCTGGGTGATAAGATCAGAGATCCCTGACTCAAAAAAAAAAAAACAAAAAGGTATTGGAAATTTGTTTACCCAGTTATCCAAATTCTATTGTAGTATAGGGTATTACACTGGAAAAATAATTCAATCCTATCTCACAGTTTCATTGAAAGAGATTACTAGCAAAGATTTAATGTAATAATAAAAATGAACCTAAAACATTACAGAAGCCGTGGACTTTGTTTGCTTTTACATAATCTAAGAATGGGAAGCCACTTTTTGACAGATTAAATAAATTAGCTAACCAGGCATTTGCAGTACATAGTTTTAGGAAACTGCTGACCAGAAGAAGCATCTTCATCATGTTCTATATCAGGACACCAGGAAACAAGTGCTGAACACAGCATCATTGAGGGGCTCTAGAGTCCCCAGTGAAAAGAAGCAAAAACTTTATTTTTGCAGTAGGCCCATAATAATTAATACCCAGGCTGGTGTTTCCTGGGACAGTTAATGCTGTAAGATCTTCTGAAGTTTCTCAAAAAGCAGTGACAATCTTCACAGTTCTGCTTAGTTTCTCCCTGTGCCCAGCCTGTGTTCAGATTTTGAGTCCTGTAGGATATTCAAATTAAAACTTCAATCAGTTGACTAAAGAAAGCAAAGACCTAGATGCCTGACACAGGGGACTATTATCAGAGCAAATGTTCCCCTAAAGTCAGAATTACATTTTACATTGTGTTTATTTTTAAGTGATCTGATAAAAAAAAAAAAGGACTAGAGTATGGAAAACCTGGCACTCTGGCATGCTTTGGAGCTGAACTTGGGTGGTTTGATTTATCATCAGTTCCCTCTTGGAAGCATTTTACAAGTAAATAGCAACCAAATACAGTATAAAATAGCTATGGATGCTGTTTCCTAGATAATTTATTTATAATGACAAAAAATTGGAAGTCACCTAAATATACCTAGATAAATAAACTGTCTTTGTCTAAATTAAGACAACATGAGCATAAAATTTAAAATGATGTAATTTAATAATATTACTGACCTGAAACCATGTTTTTACAATGATGTGGAAAAGCATATTCAGAAAGCAATTTTATAATTTGGGTCACAGTTTGCAAAAAAAAAAAAAGATGTACATCTCTCTTGGATCATATATTTAGAAAATTCTGAAGTAGGAATGAAAATGGATATTTCTCCCCAGTGAAAATGGATGTTTCATCACAATGTGATTATCCTAATTGGATGGCAGAGTCAATTTTCTCAAGCATAATCAACTTTCCCATATGCTGTCTACACAGCTGTCTTCTAATTCAAAGACACTTGAATAAGTTTAAAGTAAAGAGTTGAAAGAAGGTTACTTATTTAGACAAGTAACCAAGGGACAAAAAGTGACTATGCTAATCAGTGAGACAAAATGAATTGAAGACAAAAAGATATTAAGAGAAAAAGGACATTTTTATAATGAAAAGAGGGAAATTTAGTAGAAGATGTAACAGATATAAATATATATGCATATGCTACTTATTTAAACAGAACCCAAAATCCACTGGAGCAAAACAGACAAAGTCAAGGAAGAAATAGAAAAATTAACGACATTTGTTTTAATATCCCCTTTAATAATGGATAGAATAACTAAGTACAGAAAGATCATAAAGAACTGAGGGACAGAACAAACACTACAAATAAAACTGAGACCTACAATAGTTCCTAACAGAATAACAGCAGAGTGCATTATAGCAGAGAAACATGATCCTAAACAGTTTCTCAGAAAATCAAGCCATAAGTTACCTATATGACCAGCTTAATTCTGCTGCCCAGTATATGTGAATAAAAAATTGAAAACATGTTTGCAGTAAAAACTTGTACACAAACATTCAATAGCAACATCCACGACAGTCAAAGAGTGGAAGCAGACCTAATATCTATCAACAGATGGATATACAGGAATATGGTATATCCACCTGAAATGGAGTGTATTAAGCAATAGAAATGGCTGATATTGATACATGTAACATCCATGGATGAACCATAAAATATTATGTGATTGAAAGAAACCAGACCCACACCTTGTGTATGATTCATTTATATAAATATCCAGAATAGGTAGGATTCACAGGGAACAGAAGGTATTTGATGGAGTTGTAAAGTCAGGGCCCCAGAGTTGGTGGGGAGTGGAAAATGTTTCCCACTAATGGGCATCATTCATTTCTTATGGAGGGAAGTGACAGAAAAATATATGTATCATCAAATATTAGTAATGGATTTGGATAACTCTGTGAATACACTAAAAACACTGAATTGTTCTACTATAAGGGAGCAGGCCCCCAGGAATTGCCCTGAAGTAGCCTCTCCAGCTGTGTTAAAATCAAATGGTGACCAATATGACAAAATGTAACAATTTAAATGAGTTAGGGTTTGAGGGGGGTCTTGAATGTTTGTTCACTTATTAAACTTCCATATGCTTTCTAATAATCTCTAACTTAAAAGAAAGGTCCTGGGATCAATTTCAGAGAAAAAAATGGATGCATTCCCTCACCCCCTCTCCTTGAGACAAGTGGGTGCTAAATTAATCTTTCCTCCACATGCTCCCCTATTTTCCCCCAGCCTCCTGGTGACCTATGTGGGCCCAGATGTGGCTGAGTTCAGTCAATGAACTGTGAGGTACAAATCAGATGCTGTCTTCTAAGAAAACAAAAACAGTTGAAAATACATTGTTTTGCTTCCTCCACCACCCTCTTTTTCTGCTAAGAGCAGAAACCACAGGATGAAAAGCAGCCCAGCTCCAGATGGAGGGCGTGTGGATCTCCCAGTCACTAGCCAGTGATCCCCTCCCCCAACACATGGAACTAAGGCTGAATGAAGCTCTGACTTTTCTTATTAACGAGCCATTCAGTTTAAGCCCATAACTGCTGCTAATCTAGGCTAGTCTATTAAATATATACCCCATATAGACAAAATAAAACAATGATTAACCATTTTGTGCAGGATGATTTAAAAAAAGGCTAGAAAAAATTTAAAGCAAACTAAAAAAAAAAAAATGTTTTTAAAGATCCCAGTGTGGGAAATAATTTTTAAGCACTAAAGCAATGTGAAAGTCATCAGAAGAAGGAAAACTGCTGAATTAAAGGGTAGAAATAAAATAAAATTTTGGAGACAGTAAAAAGAAAGCCACCATATACAAATGGCAAATATGAGGAAATATAATAAATGTCAGTGAGATTAAGGACTATGAGCACTTGAAAGCTATAATTAAGAAAAAAATGACAGGGATGTGAAAAATATAATCTTTTTAACACCTGTAACATTTTATTTGTATATAATACAGGCCTGTGATGATCCCATGCATATATCCAGCTATACCACAGTGATTCTGTAAGGAGATACACTATATGTGTCCATTGAAAAGGAAGTAATTGACAGACTCAAAAATCTTTACAGCTAGCAATTATAATTTGAACTTGGGTTCTCATCAAAATAAGGGAATTAAGCCACTATCACTACAGGAAAGCATGTGAGCTGATACTTAATAATCCAAAGCAATGAAAACAATAATATATTACTAAAAAGATCTAATAGTAATTATAATAAATTATAGTGAGGTATGGTGGGGGCATTCCATTCAACAACTCTTTGTTCATAGTACAGACATTAAATGATTAGTAGAAAATCATTGGGATCCAGGAACTTTCAGGTCTAGGGGATATATCAATGACCAGCATCCCTGAGACCAAACCTGCCTCTGGAGCTGACCTCACCAGTTAAGTATGAGATGTACACAGAGGCATAGATGTTACAAGGATAATAAACATCAAAACCCTAAATATGTTTACACATACTTTAGTTAGCAATTCTAATCCCCTAAACATTATTCTACTCATCAATGGCTAATCTATAGTAGGAAAAGGTTGGAAAGACACTTGAGTCCCTAAAGAAATAGAAATCATCAGAAATCATGTGTGGTACATTCACATTTAAATAATAGCAATAATTAAAAATCATACTTTTTTAAAAAAAGAATGACAGAAAAAATACCTTATAGCATAGTATTATTAGAAGAGGCAGGATATACAGAAATACTACAGGATGATTTGGTGTTTATTATCCTAAGGTGCTTCATGTTAAAATAAAAATCTGGAACTGATATACACTGATATTTAAGCAGCGTGGAAGTGGAAGTAAACTATAGGGTTTAAGAAAATTTCCCAAAAATTTTCACCAATGAACAATGAATAACACCTTTATATAATGATGGTGGGGAGTATTAAGAAAGAAATGTTTTTCTATGCCCTAGTGTGCATGAAAAGG	##&)),(&(&2)'$'(*&%%#%$&#&&#%%-.&0($$'#+%%&#%(&'%%&'%%$$$'#$&)$'($#$)+&%&$)#$'.,%%$'-&*&$$'%%($(,%###(($$#%%#%,,'')&+'+&''##$''&'-&&%$$(),()%##'(/5)38(*&&2('*.-+)),3/)'+',-1.(%'&7:<8,-'(3+7'89?/'$4().2<2-(-+-(7(</+61/3'&0119'5.(6*;@?*1+93).5+;'.=;>6$&*%.*$$"0-(241=*)891'0*,;/:.=&2)0(<<-)>2&;**.(/0'))*$12)5,&+)61-);3(6+47:97.*7)-(&('(/4(,1.+*14*58;>8*+')(&''--(*'(%%((,1%'##"$&-)6/.4,7'*)&%8282-*&.*)3>4(&$%'%%&0(6/(/93.;)3(<0'3$*$*2:(2*6%+25/+3,3*6+)>---3.?:9*)>(79=>(,2)0)'%(%)43*:)?+8%>9+68&-87*2(:>(07.):'33)7:*3)$40*7:4,<,7&>?(,5/'9.>+)1.7(,1+,,&4.,3:3+3-*($$$))&($,&.&-.'0+,&4)$%*'*&&',;+?**))2/)3'9@B;/.8A??>61:-=?52*17+)AA9,<;3)%'#+8(-'++(4812.6+/958C)57)186-33)+.+-7'29+-:-76/):,'((),506'%*%)*02(/&.773,';:(9)@A/)8=(233'4)175(6:)*0/9)-7*.**5=&<+%7%?'<>*.*.=;*1)07*1(*):+*+:,:195'78/1-$$(7&9:(3=>1&(&%(+1..-',(,6/-<854(:*0-/'&'&'',-*(%''/'&**%$%.31+5*:/',+0')5,5,-2-%.-+;&64:/9+;,&)=(4(54),809;)(--+&&+&%#$&$#&%"#%('(&&&&&00&-)5)7&0.</')28)/,.&3(+)$$%%;51DF):=71)''$)019&304&*&#$-(6)5:31)/&69:--(16A'(;@1+37,@,,9.,((0-A>',01--)..#$*%(')%**),$#+)+31*(3.*=5(5#''+%%,&&(%&#'*&#.2($+&.(23)*%'$%-(&%%)$%($//*-)(4%/21+''&&'&'((%**$#%%$(6-'0()'2:&*806;,;>+2=6<)::4*<9)87()>)'0;01=2;2';('7**41),0<+.&'7:*4-904,<;;104+5,18*0/CI;2)(3;*7&-/;:8'$*,.;*8:8+'(6'<&4*/;*)4'&,//'''90+0')*,'2&)0;5)2>2+2-?96'43,%+'))3442&,,(45(73'(,4+*&'7>='7*90-(,'&(&()$&$%)0.0*51,+;'4&88'*+&(6)4)1-80,;853,-0=B'))(-7&7,808:5A)0)1&697).(*65.98**$'$&($($'&&')(*$'0*)7*,7,&)+$%&*)(/1+..'*2090')$$0982'8<:9-$.:)+:).1()478//%%'-$,))3/'$'.'&$*)$/',0#$%%%$%%&*&%)-1/751(7-.?*5>?1%:,92.'76'-&0)-*6:75)+'7,*40*19,+1&(($%$&'/%%$*/2+'(&5,(56++,&$(''&/**38;5;8*&%//=/8'5;+/<'/35','38+8<(.(==EB0'-.7-(*/;<@7>?>)=;-4*2)>:+-<*.1-0;*22<(*;(<77*,;+)4)1-%$'8*,*+..*)+))$)$$%#&($$%$$#&&''$0+*).&*:*40)#$%*249<&6.6)*+'36)+0##(-+-/</0,)/<(&1157(.1)'/((2&++/$&)'''&,$'.('%,(&/('*(+0)&-((0*'.,&3*%+/(2*.2*.5-*3'/3(.3/'42/2/,3,&7'34%,:6'5&&+6,+//156$0.)4)&/((-')/(-2*/4*,*47'(%)31'+.1)'%)%+(%*(),))1(+3'-,+((&1,',3,-2+'&-))'-5'44&8.0192*83)9/->*-(6,,:/,%97+7*8/)5--0+*2)9:8(83+9*+1),/15)9)6384)2**.624+;469)9)/6(3()67(.72'1-'20(2*++4.6)17*)2-260145';*-;+55185''*,&2,(.,'/(((),2)+3*(.4$+3('&-)&-(&,''-((%)$/&$+&)%)'((&%/&)(&1&,-2/02%&4)-01%1-2()&4/703/,&%&)-2'((%:;(7'6($<)6<+)**8*,5/&-(.7+&%'&(,6'9)*A=9=16;4/,1)?)1'7*=:,)(49==3-0></'35;CA@?9/''0.(,&%6'/<-+05+;;)0+;;85*E-)1--''2*>3?'C=*&D=@.(&4(/+'*+*.*/@*2()+72-<*8;2)4.@F177?&,,C6BD8'#&&$$&7*),';1*9+&*;.)4,';1?G(?9*(13'$(+5)6)1'8-+*$'=*+,'%@A$<DA?)-*22?HI/70(.'-+='7@=)8C0(,:-.*)9*+/)*AB)73&/25;3,>/8/')+A7).A.%AA'1;'+<&;0$)'(9)0)3A'4%4+30B9&*1)B7)>-0((5,5=.302;&9'567,,.*<3*(%$###$%(+*8*(5CF7)93-+/7)&<>@<25:,3*5>-63<'6-7+3(0<-17:.4144(-+/4),?;)=:%63:08+-$'&.'('+(*&,,$-1))(*+'%')1'*'.-(8/)0578+*+++<:&.,2&5$)&%'%&*234/0/'$(%$(&'3<?,)=3/(0-0%>(-.7(&0-=7+',*05*,'17+8(/.09+3-0)7+*+/;+;,>-1+2)&%5+'0(+.*&'>:')+)%+/%-068)&4-7)1+(<0,8)000040/*1)0,4'(%'%%%)*(34;1*BFE))(4).7>=0<90&%#%).5A=&;+9<&=;,-;-36&4)%%$%#$&,'1&(),&.24',%++'$$%)/&6*---&&$#$%,,$3+244,)(694+(3+;)16'25$&&*&2*/-'9,-(+4:7<++67.(&((()%/+$$'(&(''%$$$46.)**)('.%'&+-,9<;'1,2.1-:'>A@<2:3327&&(&$,-)57+6+4(5.8(9421-)(+*&)::%/9)%=@153/.*;)8'7<:5,2';;)'(*0*.)$&%'&(&(#*'((*.*%%&('0)90,),8?:-89('%$+()00/2'$&&*).-)'('+/*/.1=(1'+-/*(6$2(82)7(,%9';=*58:-%++7'07-:+,3=):2/%,149>),%1*)+'6%0-.81=9'7);/&8,8'<>;)''''%&$$$%%**'''--&',+*&&'%$$))#*)'%&$%&*%)$%30(.%)'$(&*%#$')$%$#$#)&$30(--'%(+&)&''&&(*%*)'$%%'%&##$$$$$$$$$&'%'$'$,&(%'$$$&%$&$(%%%+,*%&%%%&'$$*+0'(%#&&%'%(,')-$&)%**('*$-%%*'#&#$$)$#'$&&&(+%$&('&,%')*&%#('(('%%&$#""#&&%%$'+)*+#%&%%+#"%$$'*'&()%%$$##%$'$###"$')''$&+%'$&')&&$,)('$&.(')*)(%1/),%)&%)&&)#$#&&'-/'+)&%13)%$**&(&$'0)60(0''&(*'+$$$$(*&$%*%$(&(&%(&$&&'&$+*+*#')$$&(/$%).*&'())$&*.'&&,)%&&)*%/)%%$%$%&+0$(*$&+(0*)##$(&)$$&*#'&'#%%&#%$%'$'0(/,(,%$%$%'%"&##$%&&&-$')..0.*-$&,$$'''%+%&$%+*%&%)*&%*$&%$#%#$%%(&)*$&%%#"#%$$$%%)'("&%##%$%&%&'()*''-,&&&%*%+$+,))('(0-+)&##%'()$$$(((%%#%#&&"$$$$&(*&#&&*)'&%*-$('%,'*174&&%'%#%($%$$$&(#%.1)),-+%%#$09786*$)8/')/.%*%473321+%'56+&0<776'(&1,.(/2.)&%."%',)*%#$%8+.7--2,:(&0-,+2)%/***-.*+(,(+##%$#$%$&%)())+(&%=<1'1*62$#(%&)6;'%&&(('5.',,0.*)<*'0&)*%%&#$%%(*)$.%*('+#%$%'"'****-27;:9764320/.-,,'$'$))/*#$)$(-,'2%&+%%,'(88/;<8''&((+&&'&,&$*('&$(')+524&)*'%&'%7*72(*('*,(AA*-9+C<&&/9'56?E5/'/./&75(%&='';)),'13(,)++>B''+0847)&,-)('(&,+%$%%51'*%%3774&+&%+,0+.)/AB;,,+,.&--$+*67):C?57*7%%..-&'$'&7'*)8=%'2+)',/%$)&$,*&,)(-')'%*,*%&&#/02&(&'%/',*)6061>;(7F'50..(7544((6527&)$'(<)*'''#)%$()52,9&<=2('//?AB*4-+$%68**)$$+*C,)**('(*.=*'9-*=1*9$0*,*(/6)+3/)1'+,/%'7%*(-%',&)'''%776,3166,>.)40%4+/.(3''().)+:/%%'4,/(-0+&$#*(*,-,+0.)+(-)/)%$"$%'''''%$13,70.()%)"$&#&(*%&))%$'0,540)31*)**';%')$.'BE+'&$(%&"&%$%)('*&$'((&',(11-,*()+($%'$(%%'###%$$$$',,0*&&'%'$+''&),'')3,((,'(**('%&%&+<><<,*&'3-0<4&+2',)%%)010$6''&##))'&&)'#&$$'1%C6),)''-(3.%4((9+,24)1%%%$,$$$$$'$((#%))*'#()$.26()4%$$*()(+)%$&('&:8(+.0,(&1)'((=3(0/.-*,*&(*&'&(%,*)('&%%'%#'3/.6<;97641/-,&%#%%#$$"$$%&&##%#%&&-'&'&%%'4;7%,,)67+'30%/4'/(+%'.,&'/++1%((((&%$$$##&*$,*36$&0*'%756533563'&.3,$*$(&+&'$%$#%,2/1,7%;;4',/-&%&#%$#,,&*.$%)%(&%$$%&+*('&&($)'))*-&.-)##$%('+5(.7,)1,*)7:.*'1)/,$*&&-&+$$&&1##'##&'&&%,)%&4,%$&&)++/*65&+%%%&,+--'-'++')&&&%&-11*&&*&)%+&(,-*.(&#%$#$$&)%*&').+.8-*$&-)*((%%(%#$$''$$$$%%$$)%'))%&$&)')'%60(*''**(19:6'(%%&7+),/,(&-.+&$%$#$%(%%%'%(&##$#&)&$%%#&&''$"'&$%$$$&/""#'&$%&##%*''(+)($#$%'%)%&+&'(-+'#$$$)14,'&&%&'&%'-)&*5)(33&&'*&&(&(&%+2**(%.11'**,&&%%$&.&$$&%$#&,%(*+((*7+&%'$&9('$(&4'($'%*#%+$$%)%$0('')%$#&#.(.25'/.-')&$(%&)*('&.46.'/5,)'%&&(&&%&'#$$27-/)'&&(*$')2500,$/$'**,-&&$&)%%(%&##$$'#$#%%$)&(**$-,-.*'/-*10'/&(#$#)*)&),'5&)('&$#$+)+%'%)+&%3/&%%$%-+*3(&(--*('.)((/452*-*#%&$$%%''((&%($))&*11($$$###%)(&3(&&-*%+)*'$&'('(#,*%%$%'(-$0)(+*'%#'%#%-&(''%.((')(*'.-%,&''$$*))%$3,&##&%%%+%%'$%+.'5430(%-%((%%##%'##%&%"#$$%&+#$$&'&)(()%('+,)7'(()&%)&*'$$0/'+%$&#$$$%(/.*)$$#%'$%%$%*(*%$'$-().*()*/..,*-)%&(()%#''')&'((-&(%&&+&$'(()$)+(-)(%$$'((-20+$$'&$%)('6*-86)*/%$)&('($#%&%+',&('*))%(($&%%'$%%%*)+)994*,'&)'%&*'$%)6=153-$##&$'&'*%#+))$($&&$%#%$'($.**"$)%+0/-%'+&$&&.#&'+&.&$+(&($&4($%%#&$)()'%##%%$%'&%$#&$(',%%$$&%'&'((&%'('$%#'%)&++%'*,..**-*%#%%)*)(##(),*'$(,,()(%'&&$$))($&*++''$(+0*(&$&$&&$*$$&#%$$%+,/%(*&(*(&)('**%%$&$#$%$$$$$%$##$%%%$$%#$%$'*'3+.,1)($$&$%%#$*#&+(02(*(*,).+/.&,,$)%%$&&''&'&%%%($'&'%##$%#,,/5.*$'((,.$$7'*+-&$$#$%)'#$%&&&++'&(('&$'*330+'%&50((-''.(%%())1$-'$$7$*)('$#$$$()$*&/$%%10&%%$&%%)33((---)/&,,0&*$#%',,)',)*6-1//%/-..1'.%0,*))1(.*'%$$('-%'%,-,..)$$$&$+.%)&&'7/)*,(2)-+**/0%5%)%%#&())$%')0'(-%'',,'&--&%&&&(#(*#"$#$%%#%$%-&4&,'&&%%%&('*'-'%$&'%.0'-%%',&1)&%%#$&%'*+6*0(&'&&$(&*#,)($&$&$$$&&*2(,)(+$+4-//''/%&(&//63&&4$78/&.(&)&&5(+($$&.'&*%$%$$%#$#$$$"#$&'#)$$'''%.*'))*-(),((%''%$"%('.*'',&&.,'%+()''&&#%(((%&###&%$('''2/$&00$-&))%$&$%'$#$/*)%'0&')$%1+*'*$#%+43580'%209:7*22(,(0.+)45..&)..%',(')&/*=(7@(15)0$6&%5++'(%#(*,)01-*0*(.(',0(+**2%/;8)2A:5&$')*)/-',,$-@+43-*/04&&&'#%$&%(#%&4.(*&(226')$%%'($*/'78.,***''%-&$2)$%$'#$$$#'0&&''(&%$.,%,,(#'(&'(&%'('%%$&&('*/--)))*&%'//)"($#$&#&&*'%%$###$+*)&&*'&%'%'#$#%$#%$#''%$#%'%'$$%%&(*$&%.-42/'.&'%();5$+(&,%#$')*$)0('&)$&$$&%(+2*)&/058+')))/('%)$$%$%%'&),*$'')(0-&&&$*'''%$%%&$&'''23.#)+'$%+$$'$'$((./$00"(##$$$#&%&'&##$$$#'&+)&&$#%.,53&&%3,+$%%#%$#&#&*$%-'$)/7764%+'$&7(,&&$%10#%'&&'**(-,*)&%&*-)+('&%'($%%%$$$$&##34-',$)2%$.',+,'%$%%0.4&0$%&2./''(0(('(.&&-*&%)*(-)(&.2.$7*4$+)(/2@-*7/*3'%$*:6A&+2++)?'+*)*8&.+88=;3797:59-&569/1-,7&$=(?7;+1)*41&(*=7'2;/.):7)1-9-*?>=/-*'%618&09(87.&9<;2'=++(.)'%-&%(&/%'&8%:;;49)*///74'<))3//352:-'.-2(63(+##;;6-<*(-&'8(97)(5*)&+'),94><)#)+-#&3'&&/1)(+%(('&%+.$#&&%--)'$&%0,&.,+$)&.+$&%#&%#'*1466777776530/,&&(''$##$'*%#&%&')%$%$$$%''-%%&#%&&&+(.51$&)&&,&$'))$2&+)&$$#$'%(+'&$,4,$('&%%#(.+,$,,,%*%)$%'&))'.%%%$,))&''))*(''$)'))++&*$%$(''/-)))),'$$&$-(&%$'#,((10+*(&$)1/'-%1',-*'(&%-'&$%*#$%)&#'*&(&%'(*'(%%%%-$$+-$($''%%%#%-$%$##$$#$%$%%$-%$#&%$$#%&&$&'.01%&+('$$$$$$%%$*)$'$'%$&'$-%$()',*$&#$$$&#$'$%$&'-#$#%%#$'$''$$%&%&'#(#0'780/*@7(&8--)221(,%-(((%%&%(#'(*+&*('''%&(#&.'$,&$$$%)$'.%*%$$'&%%%&/0%-&$$&#%&%58),15&(+&$'&&%)2&(&)+0)-,*$%((,$&'&%%###-+%$$*&0--)''&%$2+2(('*,2,(&&**+*,.(,'*&'(%'%$$(./))#$%&&()')(#'($$$))35(,*(%'&)&(()(,*0*))*+%&&&'*-*)*)'&&%***,)(263&&',+&++%%,%#%+&)+)&&1#+.&$&&%%$&%'$*#%%'&(((*&/(%((%'((%-2'&+(*%#(*'('*&%.&%%',.-+$%&#',(%#$$%#%$'#(##%"$$**-,'+))1+*'##$%'%$&(%&$($%$+%+&&$&%$%&%$,8660)'&''%(-+&&$###'%'((&.1'*(0*&%'%'%,'((**-))&$$(()*##%&&%()%**&%#-(%$%/**("$%%('799)-/166-).*+&(&&)/+'%$%'$//)'#&('$##*&-*22*)%%%&$'%$'&$%**$#%&'((+%''4*%('*3.**%#%(&$%()%%&)*$$#$#$%$%$$).&),$'&#'&))$#'%+##%'&'$"##$).&(.$20)54('*&&$%'#'#%+(%,(($%&+/$"%%%#"$%#%+(''%%&15,++$)$#$&$($%$%,)%$%*1$&(%%,*()'$$1+++')*,/'-5-%$(''+%$$$&'&)-1&'%7862+)+&%(%#$'+'00&463(/.*)6100-,+,2'&,#$.%,###$-,8)*C67A)+&&%;.8/+9(=;(12))7*11378)0*6*&75%%)00<0787732=*15'&&'&(-)''%#&(11210(/'8?8660)%4788+*&5311,%&))(&%$$$%'%$#$$%'#$%/')+&&(/*0./-+12<C9,*-)964+0;4>;6-'(,;''4=9*@'+.&'%8*7,.('+5./56*6.(-)/$''%)-((**'(91A<8)'$0&27))'')**':+1(46)'5=.)54++('%&*.-32)$'%%%%&(%),+*(%#%%'$$&#''$'+-%&&$&$%'.(*,,+/''%(&&&'%$(0%'%&%&$$$#%%(&&&%)''%+$$(%0#&,03.%*+&,'$))('$(&$*+$$%$&%##'-,++')')$&#&%)$$$%$%&&,&)2.%%$%'+,&*%##%&'%($$#**&+,%$(($'$%$$##$&&&&&('(,-0()%+*)(&$&&/*-%3*$#"#&'$'.'&&(-*/73&)-,'%(-*'>)2'$%#(#%'+(+($%)&''*$*###$$'(%$-00/7,/)&,$%%'&*.&%,($'$'+,,%%$&#$($(%'')*'%&)$$&&$'%))**'+,$&&1+'')$%&#&'$&((&&3%+(,1')'*#%%''%(%%%&%'&('.2*)-$*/&/+(%&''$&$$$%%*-(&$+*71,$(&+(&&.'&/'*+.4&/-&3/*(,.$*%($$#$(-&02'-$&%%*$$$%'($#"#%%$&)+'&*)(53$+/+)%*)#0$&'..%$%&%&'(%'*%(#*&(+2%(/22%.)$'$$%%.$''&#%&%+*.)*&&(%%%.0))-,,(,('+($(&-/+&'*('2%(&&1/*%#%#$&$#%$&'%&$$%%$%$$$%%)+,'&(%+(%%'($-*%$$')('$)%$%,(,,/))$'')%$(&%##'-1'-3/%-'24%&+*%''*%)(*(''('&%#)#%'(&%%%#%#%&-//+)$%$&*$&'&/*(('%'#%%%$('&&%&'&%&&&$%(',)&#$#%&*)&%*+%%$&%%$%&'%&%$%$+%&%10$$)$##'$&$$##%')&'#$%$&)*%$%%%$.)(,&##%$%%'-'&71''*+0(33(&'(&',%&'&'')(&(&'*)&0-'&%%&'%('%%')&&&&)/-/792&+/.%&103&.&(./*('&,**$.&-)'$#%-,+--,%&&2(&')(/*(0&'&1,*$&'&'(..%$(&%$03'..&)+*+&-+1*+)58/)-%#%$$#%##$$&$##&%%(**&%'$&$')%(,%)*'$,(%$"$$'(#.((#$%$$#$%#,,(**%,%-,.*)*$###,##&&&*(''%)/-0/&(+'$&%$*'&''%&)+)()(&$)*+'%*+,*&'')&,(%$%##$"#$(*($%$*%#&&$-)(%&&'($%#%#$**,%&$20+&0-&%$*$#))%($/0*)&'(&%%&#%')%#&()%0)(,&$#)'%#'%$$-,(''$#%%#"$.&4(++#)##$$%$''$''&&,%$&'%'$-&'21+,'%'%$#%*&&%(+$''$$).+6)**+)+0.-$&.((%%%$%''.%$*%%%'&#'''#&$#%$$$#&''$*)$%)%'$$+*$%%#$()'&*&(&%'$**-'&&#$%#%-&&&'.,,*.&)0+)1+-2%$"#&&%$/,*(&#$%''$##(.30,&%)-%(('*&&&#$)%%#$$%&'*+%$###$%+)*&,(&'&%+%$$#%())((%('&)&'$##&%&*&'$%$/*(%$%'())**(%%%'$$)(1('5&%'(),--&%&')$-+*(()(%%(*+(),'#())((&'*'$,++))&%//(&/'''%&&#,+-*&&(*)*+(,+$&$&#(3')+(6-,+)&(++-*%&)(*()*-())/*-)-',5)/1*'$#$#'$$$%&&$$(&*&)2**-(''&&+*(*-+++1.)'0&&*+*.'++$&'&%&)*$###"&('+%)$%'3--/,%&(&'((-+%-&$$$#%%-+%%$%$&&/3,%%$+%$&)'*'%&$#$&%),*6&(&$&%,+&'*0'('&(+#$$%$%'',-%$#%).*+'%#$*-.%'$'$$-(0'&$$'#$+&%"#$#(&'#%&&(+&((**%1$,$#''%#%#&'*('1&'#$+*$''%'(&'&$$#$$$%$%#%*)$$%()$*.)&'$$$'.*%)'%&(&,&'$%*&#)''$(&##$$+(&&%)'&((+%+)%&&'#%%&$#'&&)+'&%$*%'(&&)*''(%%&#&&0%+()('$%&$#&*%,)'+$#'&&,%%'''&$%&&#'&%+/%%%,%4&.*($%&#&$))-(,&%*%&%&&%#''#+*+%&')%&&&8+((#%###)&&),($$%'($&)$%%,.-,-.)45+),%(&%%%#$%%#%&%(&#%&&%)#$#$%#%()*0',),-$&'',)$%$%'#%#&''%-*$%#%%&$&)-1.&'&%),*62%&'')%%+*1'.,+&%)$##"$%'(**&'+%'*$+*(*,%)(%#&%'.%(&*(%&%&('*.02,2+((%')(&$&$(&+-4*-+'1,)'&'"%%$'$%3&+%##'()+)$%(+%6.%$$'*'$$$%)))$%$%$'(('(-&)%.&0"$#$#))%%$&&%')&$$$%+)'%&%,'&(($#&$&&)))$$%(%'*&%82(-%'%&((+''+((/&'2'%%$%/-&%&$&.-"#'&$$$&*'(&+$(*-%&%%*))-$*(%.%&%%(.2-(($%%565*0'4,)#%%%%,)$#,*')&&))&/+$&'&'*%,)'%&5-$+*%&%$$$%&-*()'"#&(+**+$"$$&(&%'&$$$$$&&(1/&&34&()&42/%/((3522)'*-($'&$#)'&'%&&'&%%*$*(-%%%*&*5**&)(**&%(351&#$$*$')$++*'*,%$)%')('('%$%'%(*''%&+)'*)*,&(&$%##$$*+('/-%)&(.%%2+'10'&%(&&+((%**%&)&$'''$$$.-&('&&$#%'%(+.',%%$$$(),&(+##$$%&$&$$&'*03*'--&(##&$$#-'%($&'((("((((&$%*'&*()'%#'%%%%%(0)'0*&0''*-(&%++,'+))*$%%&1,%+''45(.&*+&*(()##'*+,(%)''+*()5-&&)%)%$$###'.(.$%0-&'&($#$$$'',3*$##&%&)'-%'$'%*)-(&(+0,%'$%,$%&&0((-'-&&&%$$$'&1233&(,&%'$(*/&$)&'.(+./.'$#&7*(','%%&(,(&1+&&$),&#*$'*$(#&$&#'8/'#"#&*&$%'(*(**'475+/0'&0%-2+$%))&,,0+'*++(&%+.*)*%''&*483.4.'(%$%%$$&%#$'%)%&'))&#'&()%('#-967'((($.,$)0$$&-(#72&'+%#'$$$%$$%$'64)%+*.(&%-('*%'&(&''%'()).)()',+'(*&$%($#%$#"#$#):7&-($$'$&%$&%%'$)''$#&3+'%%$%+(#%%')%'*&('%*255+1&$5-$%*,'&#*'(&'$$'(()('%#'##)'$%#%*-+'.%%%&$$##%&$&%4:<<+$&23&(*,%&'&$-$'5-7)+/0-%&)'*=C(6B?21/='&&,-)01811167785'-')))***(0,*-1',%&$$$#)12)'79-##'&<+**:-'$,31&':6*%=/+6''-')0&1,15(,-5:+*+1'(0,2(&'/+(*&&)1*)'(<B@A(5&:%ABC3,/6&%<:27)4+(.?<(*A45/*:(&**)*;+,,%(+&8'&5+.+&)%?:,33,+,8&+(3/,$$$(*$84*(&5*%*&)%/B5>1)0&,4.,'%,332,($'))B+0953/';&%6012%*)%+'/0'&&89-'%+'$%-)-'),(&'',*$%0/66'*/)/0.*'(()#%)+()+&'()&&)56'):?7-)(/)&(++((&$('''.&%%&&%(&&3*(%,,%(%"#&&$#&'-)&$(&$1**%&$$#)--+-6)(((0(&(/.51&&&%((,,)*(-*+*)%'*&($$%%%+*&,$&%(%)+($$%#,1/%)*(+&()*&%(+('-'*%%&./41**+'$$(.'+&'$*()'$%'12$%&&&.'')')(&&')'&&221*%,&)261($%$*%*%$$'(*/0-'&&)('600(%&))/',(&'&%$(#&()%'('%&(*$'#$*#(%())&(%&-%.,((*))+)(%&#&))5(.,,%'-'%%')0(-/%'#$.$&&%%$%&$(',$'.(*/&,.%'%&..&(($''$*%,2(+.(%%&'&$&&&$'($&&$#$'+&*''%&$&#$$%%%(&('(("$*)')*,&+'%&#%%%$%'(%($++',*&&%$&'$&&&'#$$%&'(0##$'&&)*&-%665&--,('%#&(,*)+'%-.%3'/1*+.:69))-'&$#.('*)1(*/+)&(986'*&-26:<=<;97531/.-,+**)(%'/.+2-7,$(45,(*5(&,)')*7%+'--'67(*<,(8,032()00)()8*(&+.&-('()2)4),81(9A(:7%25)?0/1-'(3(9A(29-&)*-'/+%%,%++)+,%.982&6:23%.-)4<..*0)'(08)%+).'24/7*,-,9&4<88&*/-(,7:8,&'%3*1++%2</&F7,'$%$&%'$&%,%*)%0*21%2&%%+02,%%''$&)3)*++76,**3=+4%0+'/6-,18D*-<1&%%(3(5D'%1.))8'&'2?@&=5.(&)$#0+*,)+*,.76%1(**%#$%'(1,'#'&-&./(-(/&()+*$%(')'''%(/+$%"#%)%$%%&#%&&%'/$$&$%%/)'%#(*(&&&'$(%/--(&)++(&$%('&*%$$'&,($*($)'&&$%&$''$3**&+6&(,&+-(&($&%%(*')-0-*')&$%$'$&$%'('%&(($++*$$#+*''$)$&$$%+,,')&(0%*&#--('+,./-.)('($$/4///-60&$')%&%$((()%%&'%*#1432*(0)#%%%#$&))'.-&01/%&%'%'(''%$$$%#$+%$%%$$$))&%,,'((((---&&%-$0&+)*4'$('-&&''0/)1&'*,&(*$$')&%$&''0-)$)('%$"##))('-#&0(&#/'&&'%$',-)&%,-%$/2),%&*&.',.%#$'&&%#+&%%&2,)&)*%('$(&###$"(.$-+%$#&#&%'&#)&,)&(&'))&)###'%)%$#%$#%,31)&+%&%$-)'&&#$#$$$()'&','-62&(&')%%$$#"&$$&%$()('&%()''%$%#"$"$*$2%&%$++'*90((1&(&*$$#**,-/1'3*'),/))&-%%%%$#&&'0(20)(),'-%,+))-,,%$#%%$$$%($$$%'2---)+))%$8>9%-%(.0'131#$060+(%$'/**))-',)#$&%&-(#$%0+,5..&&%$*#%'%$$$&&$'+*%5/&()*()(#&&'$&+%))31&%(((+)/%$##)&''-%$'%)&31%*%,&$$-/*'+)&$''$%$++,2($,.&$$%&%)&%&'(('%$%%*'&'$,$$%&&(&0+%(&'10.8,))$,%%21$$#$###,4+$$%(#$$%$&##$'+'$*#$&&##%&&'&$###%%&$'%&(*&$#*+('$).&$$&)+'&'562*(0*%57+'$###%%%&#$%(*('-30&$&%))*(/('*(*&(-%%)&&*(&$$&''%)3,#%%*(2.-+1*.(,&$2/-&&('%%))$2),&-&#$--,'%.-+(+')/(),&+''%''+$2$'+%(%'+'&)%'&1'&0)#%$)(&(&&+$&,8;:60)2+,&&$#/,)'+))#'&&%"%&%&%0.++475&)$$*+(&&*&&)#$$'(&'"$#%#"$$'&%'($$"#')&($+)#+0%8.+*-(%3&0+-*0('%($$$&())(**2+''.*&$%&&&%$%&++$*$'$/0-&--*((%%$$&%&'%''(%$&()),,9.$%)*'3&)'4.&&('%$&(%$$%*)%%1'()&(%#.&*+)3+$)1%(%&$%%&&%&%%).'(&%&+%##'%$'&'/(-4&01.#*&(5'*)(*($%)*%)($###'###&&,'%)"&4(#)'#$"#))%0640(10('%('($&*)#(&#$)$$#&''&'&)+&1)--'&/*))%(&(%%%%###$+&',)&&&$"##&%(%,+83'%*-53(&($$%''')2,%#*&(*00*&'%%%'&(*&&&(+$*-%%&%#$#%#$$%$&)%,1%()++(&&+($$%%)+&,$)&&%0(''(,('&$'('&$'($*-)&&*()%'3750)&%$%$+'%+-%%*&%.-#$#$-$)%#$$&'')'-**3('#&$%#'&$&'))('.''4.,))&)#&$&#$$&$%#$$'(($"##%$%**(,$)#$&)'$&'2*++-...*%11)**()-*'$$&%)),&&$%#%(+(%$)'-&$*.'*))&+4)&+'*&#)(-)*%)*-'&%,-(0',)()%'$%%%)%)%&3'5)4&-4(.(,+$&$%((%'(+)+'*&*##$$$1*'+$%)(&&.+$&(&&%%.%*'*)%31)&-,*'''5-+%%-'//'&*'('.,&1+))$%0/4)#./''%(0/20%&#&*(()''((('*&'$&(%()%(,/'2'6-+%%($&#%#$%%%'$'$%##+'''&&%(.'+%.-%%($%)##$''&%''/(02+')%%&0/(++*/-0.,*/01()15-&$+;/.&$$%$%#%%'$$(*'(&%**+($%%&##%'%(88&(&$%++%#'$'$)**'&+*,,1'''&%%33/)6-#$)$&/''&+'$$($$%$$$"#'%'$$%/%&)%(%$#%$)$#&'042-*'&''%$($%%,/1'+'14''''''$'+*$)%#$$%$'''',,+%(&/)(),**.3210(6-.*&%&(3/''0'+$"$'+,);,79**5(+*7/99*(0)111722(C69756.&&.*<*&<,*(,(%&)(*)*'()('*/#'(+,$%%3**+3.0.-62-/5'$&'..+8BC;&.()9<41),%+,&&*(&(/./)(,,*(%%%,#&%$--)B*;+)',08-&$5087('&41($(&7/.4>))(2**7'748=+,0.13/,3'6<+7<(;<*7'**3*..--+,'25-?-'*(((&&/).,('(($$$(%,-')**7(%'2(&*,25);=:5%3-()5*'+&*&',/()*%&#'24%%+(*-'66.&*(+$-+&/0&%'$%(576.$$$+*(&)&-'.'2($(#$%%'5(&%0+'%$+,,'*,$,-/(&%.,#&($(,*)'&.*(&-&.).+$+)20%%#$$%,()0+$0.+0$&(74&+-'/(*84%'%))#'&*(&&#'((*270,&#--$#$++&&$'%'('$$#&(-,%&,$%%%'5%(((%%(%.3.++#42*&(($$3,()(+&&(/&**/13.'98.&,40-*&)0&/4,&++(+*(&('+%$&+%$"$$'")%%''$%&)%(%&,.(&'$%()%$+'-'0-'44#(()$&$$%*-&-.,&/*;3%/)0()4*),/..((%%+964),$#)9?55+%+'5750))(+,+5.*,0/&-,'*(()%(,+)2()-)-%-&*'(--+31/74.'480+%'9>*/.0.,,+&306(7@+0('%%&'%+&&,$+&&'*%+'$+*&20*%$%%&+&)))+*'%&7$&$3&&-26/)($$%$$'))&20*%%;/')'**&'(**+-/56),2*(786/&%$$$#'&&&'%')%$&)$#%$$$$+'%%,%+)*$)%##$'$'$#$$(%%(')(&'"$(''&+'544()&*(,'1-'%,-%$(()$%%&,64,//*($-)'$(&&'#($'%$'&&$$%(')'%%$($%&*#(0,+%&''(0*)'2,&+-.(&*((0-$&((,+5&%53+.(4+%').+'#$%#/()&*$)+1..*-'-,)()%%$223/'&+(()%(%0,%--$*('&')&&&$()$&$#$$"#&#-###'$$%.1'%%'%%"#$""%%%'#&$)*&)'$%&/*2+'$%&%&'&)*$'(*%%%*(&)%$$+--11(+()',-%%'%&$$$'%$%##(&&'%$&(&#$&%%&'*&&)&%+$*(,42('*,#%221+'&&.('&(%$##$$$%%(&,/)&#%&&'%()/()$',,'%$$%$&('14,+-$$).-&+%5%('(##%$$%')#&,2&)%#'&%+3%.**&13/+$**(,'')30)&0.)%($0$//'&##&$&&:-,&'.*+&($%$$&*'.((&%(3$&'(.5.*$$'&$+$#&$&'$&#%($(*%&&'*)''((+-''%(,)*'&)'$0-%).-&($($$%)$&')"($&'&&%'%'%&&+.$"$##$'$$%$'#$))(&#0*((,'*0-%+)(&$%$-&'()022*##%%(%%&74$%*,*)&*-'+$&,/%%%(%''''&&&&&&%&,'&$$')&($+&((-1&%##$&+'&12%*/',*'&*,+%)&$#%$%*%'%&*,/+.%1)$#$-)'$)&/*-''*)('-,+.&**(&+,/62(&%,%&&'3.%.#'0*$$44*+(*.$$())(($%&#%*+/*/%'$'+%.0,*0)'),*%$*1%'+2))+.)%$#%2972.)',$&%'%%%$2)-.5-'%$%&%)&&2%$2)),4-.0.+)&'&%))'&*($'#)),&,%&'($%#'%%)2/'05+),4*+&'%&+%#'1)/--.,+((.&*'%*')&%,($%$&((4:91'#"%#$%$##&$-$00-%'(+%%*$$#,,)#,,1%42($,,/$6,%(&*%$&(*%40#&&4677654320.)#&%%*%%#$$',(%.%%'%%*$/***+7('&$'/(*+%#$'$''&$((3$#(/91&(1**')7-%)+'(&.'%&6:932--.037=(/-+)$$%%%$'$%&%%,,&&$$$&%(%2)**'&$$/$0,)453''%%)%+'')/*%&$#(*))-&.%')%$%()(*%#'('&#$&)*-'/&&%$0'$*%%1%&$$*%%)%%.&-)$)+(&%$2.$$&%*&(,+&%'&%)$###$$#%#$$%&0+-1,-%%1,&0(,'(50.%)*%%%)&'##%(+%$)#%$&$$%&.0+)&)')*)()(*&)64/)&('##%&*&&%&34/**2+'(,3685'123+)*2)$&#(-*(/*,0($#+%%)(%))&(,)%,%$.&)/.*+'$$%%&$#$%%##$$#$$*#$)%&)%%($$('+'%.5.&&,&#%-$'#$)*)&$*,%%*&$%&$#**0(/$(0(&*$$.3/$,($$#&%*&08-()<:4'3*)%&$%%.3.5--4&&+4,'-///,4&%%.$&'%&)*+72##(*)&16-$%'%%$%)1,'$$$%$$+'%$$$%$&1,&#&0,'&%%&''%'&$$%'%%&('#%%$&$'$%,*2)&.&&,'&$%#%($'$%%&&'$*$,)$$&#$%%%(&$&#&%.3;(,//+)--,'($&)#&$$$&%&%&%'%(&$%(*'('+##$#$%*2)**$''')'&%#$'$&%#%&($&+0**&('&&)*(%&'',91'&&&%/2,(%###$#$+$$$&$%('/%+$$($'.%%&))('&%&-,'))%0'#/$2(/(($($$($$#(&'%./(-&'6+)25(%62)$$/(&)#&$$&)-.&**.+.2/'$#$$(*&))*$%%%#$(2$(%&5+'(%1.*('%',2-,(),.*)''&&$$&&&)'$*%&13&,*,(#)'((79-)(.)),*%'%#%.'1/&%-&%&(%$**''&%'$%+&$**&&(%%-'+-4)))&#(.&'&./*%))'%$*%%'$(#)-%$&)'+)))+($$&'&&&$)%%$%-*#'(*)*,2,',&'+2%277+)($(()(+&$'-+&,0/(0;:()-',(-,%&%,&)&$'+&+-%$$%##$''$$%$%$(''*&&(+/.-('',331+(&%&&#&$$#$%$,1.%$#-%***'%&,%%0/'+&#)$%&)%%&'''&&')$*')+'&$#$%%%$%'.'')$$$%%%%+'0+%%*)%&'((($%*%$$$*&%)$$#',#&%(&)%$$*&-&'(&$#&%('$##$,0$$*)(&$$&2.%&*,&$.)&&&#.2/'&%#*)('&&$#&%(%-.)3/&$#)(%$$'&%$'&&&($#$%$$$%&%')$$'%$##')&%%#&$"#&..$'1)*54)'1,*&%$%$./.))%0&,))'+'(-1)%&,)/30'%''%0:=674+(*6'0&%+./&3(*)#(.1/')))'$$&%%(&$+)%$*+(($$#%+&$'#%#$$%%$'&4,'()''')70.'%&%'**.696)./0+-6'(&,'-,$'&((&-%),%2*'&$&&$&$#%%%%()%))*(/+)'+.+*)#$%%'$""**$&#$&%(%#%#%""%%%)&&)0.&*'3-*&$&)3/%&&&#$"&&#()140'%&&)+'&3*%('$%'&%##%%%'&%(')'(%$$&*$,0'/(%%$56-*&&-93&((&-%$(')%1%.0.,*.(%&#)$%&(&-*('$&)%)&'&$%&$$##$'*(&)-75)-)/.-()%$%'$)$&%%'%&'*+*%+#%&$$$$$%&##&&))&'%#%$$%%%$'&$*'+/2''&##$''$$$#"$'&%)####%&1'%*'$%%'*'(/)%&#%'-)*+''(%(++'$#$#$$&&'1*(#$//*&%.(%&-0&.$(/.43((*)'%3(**$$')'&2420,&$%%'&%+87.4(783&9,"+(9'($+57888886431(/(::98,'&%'2%$)%''&%%*))'.-'&-*-**'*/$**%$+)3#&$.$%#%*+4/-'++&'''($($++'-*%#$$$'(+,-&+*$+*&%$$1/**&(9+1'21,0:8/(*%%&%,%)-784('&)1&&*&*&,/(++**5*(%'-15'($#'#''&0,&&%+&&%(*#$'%(%&-'(&('+)--&$*$'%&#*'))($)('#''$'$%#$%(&(41,52&.&'*%%(-&')%)(323$%$$&,%$###%'#'%&%(%$%(''&$,((%%+,%#$#%%&$'#$%''&,*)'((#$%'&'&'+$&''010.,$'#$'#)#$)#$$$.--,;'&%+''&,'&(%'$$#&#&.%$'%'$&.1,))47(%&$%#$&&#&$&&'()'*,-,4:30('&&##$#&++"$%'$(%((%25/+41('(&,(&8'('%%*$,(&&%&*(&'(&)&)$&*'*,')'%&*&(%0&+/+$%-+*%('$,&)),'$$%0)(24)*&171$,&'%%,,+)$2*&%)(''*#'%-.(362*(,((&(.+)#%0',''+(*''2&$('.)31'&&'(+0-0-*'%($%,&)+)/*.%'$%($&((&'*%,'#'$%&*('&'(,'$((+'('%#%%"$%#.22,/&$-*#&1%%1*&+())&,-()(0'%0)$%'*,&%%&%%%($#$'&$*%%(#(($&%%(,%&(+'')($%)&%$%'(%%&%'*))$#(%)$+-'$$%'&&&'$&#%$$#"%&&'('%%%%#%%'%$#(()2&%$,(+.%())(&&($()&$&0$$%%#-4,$$##"$#%-/*'(%'&##,&&.&%)),-),%%&($$($(%(2'"&+-).1)%)$#%'$%'&&''%&"$$.'25)$.-%+%('/&&'*#$&,&$%''&##-3*#/+#$$$.3,,,/*&'%$%*$#$($'&-(&($$$%(&%&'&(&%'+-41&&#$*%$&3'.*3562&'%/++,7::9)*895261$'')++'-&%7<<=2%%$%$$&$-'(*$%,'$$*'$&#()(#&*&()41'&&&#&&$-+$'##%##$-.%$&/.8*)'+('+,%%'')*(&)''%($$$%"$%$*&*/&#*()22'+.*%'%%$$$$&(((((''%*)$&($%+#&($"'&&'')#%%%&$#$*+'"#%%($')'2,%+$$(,*),)*-*&721,-,&'%%%$1-++))&)$$%&+&''$%$$$%$'&%#.-'%*'%*-(,/-%+./%,)*&&0+$*2+(&1423*%$###$&%''#%#%$#%#%$%%%&&	AS:i:18590	MD:Z:9T5A1T36C35A5A3^C2A0T1A18C11C5G0C0T3^T16T22^GGC8^T21G2C40G4^C0A5C1^TC0G18T31^T9^T6C1T6C3^TA17A2^AC5C10^G27^C1C5A10C0A3T1A0T29G0T12^G2^G4^GG5^G6T11T9A0G5^G13C2T2^C0A8A3C0T1C1G4^T2^AAAAA4^GA12C0A0A0G10T1T7^C10C1G0G9^T0T14C1T56^GGA18^GGCA24C1C2A0T7G0T11^T2^CT3C11^A9^G5^A6^C20G0A2A0A0T11A1A0C1A0C6^T1T5A3^G1^GGC13^GC1T1T8T7^A9^C5^C0C9T1^C2G2^C13T1C16^AC11^GAC4^CC6T1C2T2^T22A33^C1G0T4^C29G17^C35G31C0G0G15^T6^T7G0T10^G0G5C7A1T17^G11^AA0A4^CT3^A6^T3C1C9T0T1T0T1^C8G1C5T4^AA17^CA40A7^C16^AA1T9^GA7A16^C2C2C9C3G0C0C9^GT4A2A0C0C1C18^G3A5G1T0T10^A25^T0T16A0T0G0T0T7G15T1T18A30^TC2^T28T2C1^GT9G0G1A1A2A0T8T1T16T1A3C4^A1G13T11^TT5T0T5^T6T2C1T2^G0T1T0A0C1^CTAA7C1T0T19^G23G12C12T0A1G1C17C6C2C11C1G0T16T4C1C0T21^T4T9T3G4T18^C8^G11T0A5C4C8^C0C1A0G7^T5A30^CT3T0T0A0C3T7G3^A1T8G0T12C28^T8T7T9T4^ATA3C31T16^C6G0T0G6A0A16^C13^C7A16C0C6C5A9T14A4^T17G0G15^A0A6^T20C20^AA3T18T3G1A17T1A2^C6^T7T12^A10T19A0T14A12^C18C8^C5^CCT1T11^A4T10A2C20^T0T11T1G0C2G3^C44^C10^TTCTC17^A10^TC0T8A1T6^A4C2C2^A34T1A0T4C15^GC1T2^G13C8T1T1T9^T13A17T2^T3C7^A7^TT12C0A0A10^TA3^C9^A13G0G18^T10G1C4^T0G0T1T18^T3^T38C1C1A0G12^CT7^A7G1^A11A0T22^GT4T9^C1^CC13C0T2^C21T3C3C3T0C5^T35^A17^G5A0G6T8^C3^G0G0T8G2^A1^C3A0T0A1C0G6^C0C16^T20^GGC6^T0T1^T11^A9C0A1T19C0A15^T8G12C4T0G0T0T1A24^T4C18^G4C4C14^TTTTT2A9T0T9^G0C2C1^A0A2^TC8^C8^TG1^T21^TGG7G5C2C0A2C1G1^T2T10^ATTTG7^A0G0C4^G5G7^G0G8A0G5^C35T3^T6^A5^AC10A9^T13T2^GTGA18^T9^G3^T5^T3^T11G0G0C17C4^C8C3C3G16A16^C0C27G6^GT5^A2C15C6A27^TAA11G13T19A6T28^CAA1C0A7C1C4G3^C8G0G0G0A5^G3C0G2C0T15^C17C4^TT0A6^TG10^G16^T2^T2A4G9^C0A2^G1T14^CTT5^G1^T3T10A0C1C26T0C24A6A0A0G0C6^C6T6C1C10^T15A35^TT8^T0A3T55C9T19T11^GC18^A19A6G0A9A16C57^GGCG10C8^A6T0A0T0T9G5^T5^A6A1T2^C18T0G0T1C5C0A0A7T2C5A1T0C71^G8^CC3^GT2C10^C2^C4A4C0A1A6T3^T4G0G0G0G1^GCTG0G3^TCT2T3^C0T7^G8^C0C37^TG23T1T20C1T3G0G1C9^GC2C0A5^G11C2A1^AG0A1C9^T1A5^T10G3^T11T2^AC10^A0A7^G12G18C1T9A8^A10A1^AG2G2^G1^C11G0G21^C1G16^CA2T3C3^G4^A12^C19^T3C1T7^C4^C4C8^TC30A2^TG0T5A1^T1T11T2^T11G0C8A2^C15T5^C1C46^TGCT2T0T0G0T4^G0G0C18T1T23G0T5C0T31^T2^A5^GG0G4^TCAG15T0T8C7^A13T1^TT17T0G0T5T0C13T8T0T8^TTCA4^TC14T1^GT0C12^T5A3T1A2^TC4^T25^C8^T11^T26^T8^C1^GG42C6C1C0T1^CT1^C2T2C2^GT12^G20^T36G0G0A0A19T18T7^C3^A20C0G12T12^A1G6G7^G7^A10^G9C1A0T7^C4A0T3C1G16A2G0G0G1C2A26^T12C0T13C6G1T18^CTG6^GT9C5^G3T0A2^T3G5^T3^G6C7^T5A11C0A3A11C1^GG10^T0G3T2^A11^G3A13^G39^G15T1T7A14A16T1A16^GCA5^G15^C1G0T5^GT5^T0A1C4^AA11T1A1T1G0G3A4A0T10C10C1^A3T0G1^G7T0A5C4C4T4^G3T1T4^G6G9C0A16^C10^G6T0T1A10^TC7C0C10C36T0G14^AA22A18G1^T88G21T73^T27^TG8^TTGA4T4^TGG0G4G0T5^T11T1C9^T6^G2A2A0A2T1A8C2G3^G6^G10^G2G0C1C18^TG2T8^T1A1T23C10T15^G19^T0G3C5^TCT8G5^T30^GA30^A0A4^TTA0A2G14^TG2T13T2^C11^T0T0T7T0A6C2^TT29^C1A1C12^G1C2A82C8A7^C47G0C4C0T30A102C0A7C0A0T8^GGGA13^G53^C9C0A11^G0G4C6^CG1T2^GG2G8A5G1^A0A5^A5G3A7C1C2C6C9C1T14G3^C11T2^A6^T10^TTC4G0T1^TG0T1^G0G19A11^CC8C1T4G19^G18C13C4A6T1C7G0A8T0G8C6^TC3^G2C9C6G2^T36^A0A1T4^G4G0C6T3^C0A1T7C10T5^C14C6C1T0G0A1C20^G3C4^GG20^C11^C7^T6T8T1G14T5^G5C7^C2^G15C0A37A0T0T22^T8G11T0G26A0A15G0C0A7A0A0T10^T7^T0T5T35C3^T3T1T4^AA1G6^GGC32^G24^G4^G5T6T0G4A1^GCG19^C2G38^C1G15T5^C29T2^TC12^GA11^A8^T10T20A0A1A0A0A1A7^GAAA1T5^C2A25A0G0T8C8^TGA0G5^C14^AA7^C6^CT4T2T4C4^G0G0C6^G4^TC2^G8^AC4^CA2C7^TG0C2^C12G39C3T0C1^AAG6T7C3^TA0A13A8T1A2T1C3C0T10T0C0A0A1T23^G14^CA1T1A14A5^G8^C14^T2A10^AG3^C25T2C0A2G0A16^T35^C21T11T0G0A5A9C35^T9T16^T5T0G0C8C7A2T12^AAG2A1^G4^G9^T3^A0G5C1C1A0A1C2C10^T0G6C2T0T0A5^C3^G5^A6A2T0G3^G8^GCGG16C2A13T3G5C8^A1T21^CTT5T6A17C1^T4C1^G7^A10^C11^T17^C3A1^TT9G0C20A2T1T0A3^A0A1T10^GG0C12^A10^A7^A1G5C2^CA6^C14^AAA2T2T0T11^AC12^TA6^G0C5^C7^G14C2^CT9C0T3C4^C7C2C0C2T13^C11^G5G12A11^G5G5^G7C9^C5^CTC4^C10C22^C2G8C0T1C26C3^A2C1T1C1T6A16^C1G5^C2C6C5C1^G10A1C1T0C7C7^C16C3C7C5^T0G17T4T0G15^G17T12G0G1^T14A17^G6^A1^T11T3^G20C4^ATT2^A2^CTT5^G17^G43T5A0T6^AA3G0T1G0G8^GAA6T1^TT15T5C0A10C9C0G22^A1A21C2C8A1G2C14C8T8G1^T6T1C2A0A0A1T8^CA2T1A0A18C1G0T10^G3^A5^C9T1T0C4G13^T0G4^GC3C1C2T1C0C0A5^C1C0C0A32^CC6T1T5T1^G35C17T13^T62A0C4G0G0C1A8C20A3^C4^T1C53T7^TTGT4A1T32C11^C10G4^C23T1T8^AAA0T10C8A0T6C0T3^G8^C5G4^T9C0A1C22T26^T5^TCG6T4^T18G1^TT3G18G1A15T3C2T2^GCC7T0A11^G2T14^A14^A13^TA2^C2A0A0T0A11C1G1G8^G6^AA0A4A0C3^G1^A1A8C4C3G0G0C6^CC3^G8C0T2G13T1^AACA8^T0G16C8^G7^C0A8^C2T29^A5T0A0A0G5^C2^GCA2T2^C20T3^T7T10^C1^C3^T0A3C29A0A20T1C12T4C9^CT9A0G3^C0A2T6G1^TTC2T3^T8C4C4C0G1^AG27T14T3G0G0C1G3C2G8^TC5T0T2C9G2C1^A1G5C0T33G14T2^TG0G0T8C26T20T3^C4T1^G3^T0G5T3^G10^C8^T7^GG0G23C4G0A7^T0T4^T4T2^C7^G13^T0G4C2^C31C0A20C14G6T50^C22T33A36^C41^GGG0G26G3^G1A1T13^AGGT4^C3^TTG0A5C19A0G11^G1C20A4T11^T3^GG5^C13^GA1G33A0A0A2T24^T0G4^T6A19G1^TGGT3G0A3G4T6C11^GC0C3C6C8A1^TAAT3G1G37C3^C1^GG57A0G5^C37^A15C1^G0G0G12^C1^C5^GC9C10C9A19C16T0T5^AT2^AT1^C1C10C0A44C2A1T0T9^CC29^G2T1G2G10^A5A0A5T5C1C53^G11G12^G3^G8^T0T14T3^T11T1C16T0T19^TG11^CC2A4G1^GAG6C4C16^T12^C20A0A1C1T18^TGT1^T1T17^T0G0T2^C12^GGTGT17G20^C48^G13^A8C2^G5C10A1T1C29G32G0T5A7A8^T21^G19^AAT2T24G5T6T0G1C4G3C2G1T9^G0T0T8T5G1T1^GG7A0A8C7T0G0T7T15G10T1C3^GTAAAA11^T9^A11C11^GTG2T9^A29^T28^T0G1C21C0C3C0C15C13^A8^T16^C6^TT12G26^GT5A10C4^G0T1G0T1^TT21C2C10^AGCT2G9C0T5^C7C4T8G1G0T0T8G9C1A0C4^T2C4^TC35C20C8^TC4^CT24^CTTC27^G17T6C23^A8^C13^C11^C6C10G1^G15C5^T2C18C3A0A0G0A0G0C3^T18G18G0T0C8^AAATT2^A3T0T17^C5^AC9C14A17T2^G15C5^CT12^TTCT1^TT0G27T3C3C12G72A5C3C1^C2C5^C3A33A0A32C39C23T0C1T8^A17C17C1C5G11^T7^G22^TG26^GT3C7G43C4T11C3C21G0T1^C5G64G11^C1G0G2C55C2C9C1G2^T8^GT2^A0C25^T1T13^G7T21C1T13T7A19A1C0G1A2C15^A8^A16^C1^GGC6^T8^AA11^T0A2^A9A1^GGC2T3^T10^T2G0T3A0T4C6C7^A1^C9^CAG1C1G2^G2T2C3C2C0C0T3^TC0A7^C10A4C14C6C3^G3^GT6C2T1C1^G1^G3G0C1C11^GC0C1A1^A14T22^C13^T2C8^T2C17A0G0C14T2C4C1G2^TG4^C7T5A2C0A3T2^T2^T2A9^T7C2G0T3C1^T3T2C2^GC1T4T3T1C0C6T0T0A4^T1A2^AGC3T12^T11^C4C0A0A13^G0C17T2^TG0G2C1T40^TGG1T0G0C19C9G5T0G9^GC4T30^G27C40^G12G1C19^G21T83T9^A4^T0T2C2C36^C0A23^C3G0T10C13^TT10^TT91^G6T6^A62^T8^G2T7G0T0T34^TG0T81^C16^A51^T105T121T3^AA0A12^G86A11G8G5G39^C38A3A2A53^A2T21A34G5G5G2A5A8G72T10^G3^C1G0G19^AC8T14^C5A0C13^T0T59C13T17^G10^GGG10^G4^AA17^A52A2G3C12^CT54T9T4C0A3^GG2^T88^G50^AG3T13^GC117^CC8^CG12^T1^T8G14T0T1^C2T0A9C1^A2^T1^TT1T5T17^C0G12^G49G0T12^GT48^AACA8C0C1^G72T0C1T29A10^AA53^CCCT38^G61C0C51C13T5^T150^C1A1A7C21^T3A9^T6T98T0C9^T6^A15C40C9^T23	NM:i:3789	cm:i:500	de:f:0.1449	ms:i:18574	nn:i:0	s1:i:4250	s2:i:87	tp:A:P	Mm:Z:C+m,37,3,844,39,6,7,27,53,19,13,2,8,0,31,3,1,1,0,4,11,11,2,14,27,129,406,5,25,234,13,12,51,362,102,445,145,13,19,6,2,121,9,4,32,33,54,100,7,5,105,10,22,0,1,10,4,2,9,2,38,9,31,31,101,305,29,26,5,125,1,1,6,39,5;C+h;	Ml:B:C,254,255,5,252,253,255,254,5,255,3,255,86,255,254,52,250,255,7,68,9,145,210,2,5,6,8,10,8,11,75,255,4,3,3,6,255,77,63,255,255,37,4,3,4,5,2,4,2,4,255,255,3,255,4,255,255,240,255,35,255,230,51,252,2,5,19,255,12,3,7,2,3,4,253

@jrobinso
Copy link
Contributor

jrobinso commented May 12, 2021

@a-slide I am stuck until i get some feedback on the negative strand reads in your test data. I'm fairly certain I am parsing them according to the spec, which is straightforward, of course I could be wrong. For example, for the "top-rev" case from @jkbonfield 's test data in orient.txt I compute zero-based read sequence offsets of 4, 5, and 28. Those offsets are relative to the read sequence as reported in the SAM record. This matches the data in orient.txt, which should be counted from bottom -> top

top-rev	16	*	0	0	*	*	0	0	ATATGGCATATCCCCCGCCGATCCGCTAGAGATCCT	*	Mm:Z:C+m,1,3,0;	Ml:B:C,128,153,179

A	T
G	C
G	C
A	T
T	A
C	G
T	A
Cm50	G
T	A
A	T
G	C
C	G
G	C
G	C
A	T
T	A
C	G
G	C
G	C
C	G
G	C
G	C
G	C
G	C
G	C
A	T
T	A
A	T
T	A
G	C
Cm59	G
Cm70	G
A	T
T	A
A	T
T	A

@cmdcolin
Copy link

@jrobinso I think there was maybe a bug and an updated version of the bam files was uploaded that has a fix...it was something i saw also :)

GMOD/jbrowse-components#1869 (comment)

@cmdcolin
Copy link

the issue was very apparent if I ran samtools calmd on the BAM file because then I saw that almost all bases in the reverse strand didnt match the reference, the new file in the box link looked ok now afaik https://nanoporetech.box.com/s/82pnw3lhusfs93s0vj7azxiz4x7kxabo

@jrobinso
Copy link
Contributor

Great, thanks @cmdcolin looks good now. And the modifications make sense, in the old file they looked rather random.

So @a-slide The snapshot build is ready for testing https://software.broadinstitute.org/software/igv/download_snapshot. After loading your data select "Color alignments by > base modification". I also find it helpful to "Group by > read strand". We could make this grouping automatic for this color choice.

Some non-trivial changes were required to support this so it will be a major number release. You are the only group I know of that can really test it so I will await your input.

@a-slide
Copy link
Author

a-slide commented May 12, 2021

Hi @jrobinso

Thank you very much. I gave a try to the IGV version you pointed me at and it seems to be doing what I was expecting. It is really nice to be able to see the mods directly in IGV.

igv_snapshot_cpg

We will be testing more thoroughly at ONT and I will give you the feedbacks I collect. but I am quite impressed. One suggestion I would have is to change the pileup color scheme as well in modification mode so that it shows the percentage of modified reads at given position. @cmdcolin has implemented something similar in JBrowse and GMOD/jbrowse-components#1869 (comment).

Thank you @cmdcolin for pointing Jim to the new file. This seems to have fixed the issue indeed.

@jts
Copy link

jts commented May 12, 2021

@jrobinso I modified nanopolish to write out Mm, Ml tags with the reference as SEQ to test this, it looks good to me

image

@marcus1487
Copy link

@jrobinso I have tried loading megalodon mod_mappings output (with SEQ field replaced with reference bases), but I am getting the following error Error encountered querying alignments: java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0. See full terminal error at the end of this comment.

I've run the parse_mm.pl script provided with the hts-spec tag MR and confirmed that the scores and positions are extracted as expected.

I am happy to provide example reference and cram files if that would be helpful. Hopefully the provided error text will be helpful to track down the issue.

ERROR [2021-05-18T10:56:08,064]  [AlignmentTileLoader.java:316] [pool-2-thread-3]  Error loading alignment data
java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
	at org.broad.igv.sam.ByteSubarray.getByte(ByteSubarray.java:26) ~[igv.jar:?]
	at org.broad.igv.sam.AlignmentBlockImpl.getQuality(AlignmentBlockImpl.java:124) ~[igv.jar:?]
	at org.broad.igv.sam.DenseAlignmentCounts.incBlockCounts(DenseAlignmentCounts.java:329) ~[igv.jar:?]
	at org.broad.igv.sam.BaseAlignmentCounts.incCounts(BaseAlignmentCounts.java:139) ~[igv.jar:?]
	at org.broad.igv.sam.AlignmentTileLoader$AlignmentTile.addRecord(AlignmentTileLoader.java:499) ~[igv.jar:?]
	at org.broad.igv.sam.AlignmentTileLoader.loadTile(AlignmentTileLoader.java:248) [igv.jar:?]
	at org.broad.igv.sam.AlignmentDataManager.loadInterval(AlignmentDataManager.java:418) [igv.jar:?]
	at org.broad.igv.sam.AlignmentDataManager.load(AlignmentDataManager.java:363) [igv.jar:?]
	at org.broad.igv.sam.AlignmentTrack.load(AlignmentTrack.java:433) [igv.jar:?]
	at org.broad.igv.ui.IGV.lambda$repaint$12(IGV.java:2429) [igv.jar:?]
	at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1800) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
	at java.lang.Thread.run(Thread.java:831) [?:?]

@jrobinso
Copy link
Contributor

@marcus1487 I think that error has been fixed, coincidentally I ran into myself. It was triggered by a bam file without base qualities. Could you try the latest snapshot? If the problem persists I might need test data.

@jrobinso
Copy link
Contributor

@a-slide the coverage track now displays the % of modified reads as in bisulfite mode.

@marcus1487
Copy link

I can confirm that the bug does appear to be fixed in the latest snapshot. Thanks so much for the fix!

For some background on the reason for the empty quality scores. Megalodon mod_mappings output replaces the read basecalls with the mapped bit of reference sequence. This allows more accurate methylation calls made against the reference bases instead of the basecalls.

@a-slide
Copy link
Author

a-slide commented May 20, 2021

@a-slide the coverage track now displays the % of modified reads as in bisulfite mode.

Yes it works perfectly and with the fix for missing quality string we can now display results obtained from both Guppy (basecall anchored mod call then aligned to genome) or from Megalodon (reference anchored calls).

Thank you very much for the hard work implementing this feature

igv_snapshot

jrobinso added a commit that referenced this issue May 21, 2021
* Remove deprecated GA4GH classes.

* Remove unused "lite" classes

* Combine classes PicardAlignment -> SAMAlignment

* Fix autoscale & group autoscale repaint problems

* mm tag support

* Introduce "ByteSubarray" to avoid copying read sequence and quality arrays

* Add unit test

* rename "isSoftClipped" -> "isSoftClip" for clarity

* Add option to "color by base modification".   See issue #945.

TODO
* parse and use likelihood scores.
* resolve multiple modifications on a single base
* add color scheme by modification type
* add modificaton info to popup text

* alpha-shade base modifications by likelihood

* Draw base modification after base mismatches

* base modifications -- parse all cases from spec

* Change preference hierarchy behavior -- user settings for generic alignment tracks ("Alignments" tab) will now cascade down to RNA and 3rd gen alignments if there is no specific user setting for those types.

* remove unused export

* Add popup text for base modifications

* Popup text for base modifications

* update test

* Bug fix -- file name used for track name in "load from server".  Fixes #959

* Base modifications -- add stable colors for known modification types

* Optionally write relative genome paths in sessions

* Handle case of SAM record without base qualities

* Add  "Flags" to alignment record popup text.  See issue #864

* Support base modifications in coverage track.  See #945

* Group feature tracks by strand.  Fixes #962
@jrobinso
Copy link
Contributor

@a-slide This thread has gotten pretty long, but I think we can maybe close it and open more targeted issues if they arise. Two dangling threads are left here. (1) multiple modifications per base aren't really handled, the modification with the highest likelihood wins, as you suggested. (2) likelihoods don't factor into the coverage track representation. Both could be handled with some complications, but I don't know how important these are right now, and I would want a good test dataset to work with. So I think these should be new distinct issues if/when they become important.

Any guess when the spec will be official? If ONT tools are already producing these files I don't need to wait for an official spec to do a release, there are plenty of IGV features supporting non-spec tags. I suppose checking for both MM and Mm wouldn't be a bad idea.

@a-slide
Copy link
Author

a-slide commented Jun 2, 2021

Hi @jrobinso,

  1. It is probably fine at the moment, there isn't an easy way to represent overlapping mods anyway. At the moment the only highly reliable model is m5C. As new modification models are added this might eventually become more complicated and users might start asking for a way to customize what is displayed, but this can be treated as a separate issue.

  2. Also fine for now I think. I would also say it should be a separate issue if required by users. In that direction, it could be interesting the add ability to load a Bed Methyl file containing mods probabilities aggregated at genomic positions as the coverage track (I will likely raise the issue when Guppy is able to output the format).

Regarding the spec I really don't know. This is frankly out of our hands (though we reactivate the issue from time to time). The conversation started nearly 3 years ago, so hopefully this will be released before the end of 2021. And yes ONT Guppy and Megalodon stable versions output BAM with Mm and Ml tags and we have no intentions to drop the support in the future. I agree with you about supporting both upper and lower case.

@jrobinso
Copy link
Contributor

jrobinso commented Jun 3, 2021

@a-slide OK ill release this as is the, probably quite soon unless we find something in testing. There are a number of features in this release to test, not just this one.

@jkbonfield
Copy link

Any guess when the spec will be official? If ONT tools are already producing these files I don't need to wait for an official spec to do a release, there are plenty of IGV features supporting non-spec tags. I suppose checking for both MM and Mm wouldn't be a bad idea.

A good question.

When I wrote it I chose a half-way house of upper-lower case as it fitted in the user-defined space but not an area where most people venture (user defined tags are nearly always pure lowercase or lower+digit). The intention was to have a "draft tag" area of the specification which telegraphs our intentions and lets people implement the ideas and test them out, before making them concrete and immutable. This was in response to the debacle of barcoding tags which dragged on for so long that groups just started to implement their own, conflicting, ideas. It's better for an official "idea" than none at all, even if that idea may subsequently change due to community testing. That was the intention anyway.

In reality it sat as a PR without being merged, so it kind of fell flat. :/ The main problem here really has been lack of knowledge by the specification maintainers (myself included!), which makes it hard to judge whether the specification is sound. It's really the community uptake which demonstrates that, so thank you all concerned.

Given it's now picking up speed, I think what's likely to happen now is it'll get merged as a draft tag and announced to the community with a relatively short life span in draft form before being made official with uppercase variants. So I'm hopeful it'll be before the end of summer.

As you say, it's not so hard to decide whether to only check the official tag names or to check either case. (Sadly I've already seen another bam file using uppercase MM for something different recently, but frankly that's their problem! The user-defined namespace is there for a reason.)

@jrobinso jrobinso added this to the 2.10 milestone Jun 9, 2021
brainstorm pushed a commit to umccr/igv that referenced this issue Jun 11, 2021
* Remove deprecated GA4GH classes.

* Remove unused "lite" classes

* Combine classes PicardAlignment -> SAMAlignment

* Fix autoscale & group autoscale repaint problems

* mm tag support

* Introduce "ByteSubarray" to avoid copying read sequence and quality arrays

* Add unit test

* rename "isSoftClipped" -> "isSoftClip" for clarity

* Add option to "color by base modification".   See issue igvteam#945.

TODO
* parse and use likelihood scores.
* resolve multiple modifications on a single base
* add color scheme by modification type
* add modificaton info to popup text

* alpha-shade base modifications by likelihood

* Draw base modification after base mismatches

* base modifications -- parse all cases from spec

* Change preference hierarchy behavior -- user settings for generic alignment tracks ("Alignments" tab) will now cascade down to RNA and 3rd gen alignments if there is no specific user setting for those types.

* remove unused export

* Add popup text for base modifications

* Popup text for base modifications

* update test

* Bug fix -- file name used for track name in "load from server".  Fixes igvteam#959

* Base modifications -- add stable colors for known modification types

* Optionally write relative genome paths in sessions

* Handle case of SAM record without base qualities

* Add  "Flags" to alignment record popup text.  See issue igvteam#864

* Support base modifications in coverage track.  See igvteam#945

* Group feature tracks by strand.  Fixes igvteam#962
@jrobinso
Copy link
Contributor

This is now released in version 2.10.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants