RNA二次構造予測(1) - SFC Bio | Systems Biology Project

RNAの研究が熱い!
• そもそもどういう背景で細胞内に多数のRNA
があることが判明したか
– 完全長cDNAのゲノムへのマッピング
– FANTOMプロジェクト
• なぜRNAが重要と考えられるのか
– miRNA、アンチセンスRNA
• RNAの解析を進める上でどんな手法がある
か
– 二次構造解析
RNA二次構造予測(2)
生命情報解析
2007年10月25日
RNAの二次構造の解析
• RNAは一本鎖なので、
折れ曲がって自分自身
と結合を作りやすい
5’
3’
• 二次構造が機能と大き
く関わっているため、機
能を知る手がかりに?
二次構造の抽出
複数の配列を並べると…
• 一次配列の保存性 … 配列パターン
• 二次構造の保存性 … 配列パターンでは見え
にくい場合がある (RNAの構造など)
RNA二次構造による
塩基間相互作用
CC
C C
AT
TA
CG
GC
AT
TA
CC
C C
AT
TA
AT
GC
AT
TA
CC
C C
AT
TA
GC
GC
AT
TA
CC
C C
AT
TA
TA
GC
AT
TA
CC
C C
AT
TA
A G
GC
AT
TA
(a)
(b)
(c)
(d)
(e)
(a)
(b)
(c)
(d)
ATGCTACCCCTAGCTA
TAGATACCCCTATCTA
TAGGTACCCCTACCTA
TAGTTACCCCTAACTA
(e) TAGATACCCCTAGCTA
結合エントロピー (1)
• 2つの情報源から組み合わせとして得られる
情報の情報量の期待値
• サイコロ1と2を考える
– サイコロ1が”6”の目… -log1/6の情報量
– サイコロ2が”3”の目 …-log1/6の情報量
– 両方のサイコロを振ったとき、サイコロ1が”6”の
目で、サイコロ2が”3”の目 … -log1/36の情報量
結合エントロピー (2)
• サイコロ1(情報源X, 情報xiが出力される)とサイコロ2 (情報
源Y, 情報yjが出力される)の目を組み合わせとして考える
– サイコロ1の目がxiである確率をP(X=xi)、サイコロ2の目が
yjである確率をP(Y=yj)とする (省略してP(xi)、 P(yj)と表す)
– サイコロ1の目がxiのときにサイコロ2の目がyjである確率
をP(X=xi, Y=yj)とする (省略してP(xi, yj)と表す)
• サイコロ1の目のエントロピーH(X)は-∑iP(xi)log P(xi)
• サイコロ2の目のエントロピーH(Y)は-∑jP(yj)log P(yj)
結合エントロピー (3)
• 2つのサイコロを同時に振って、サイコロ1の
目がxi、2の目がyjであることが分かったとき
に得られる情報量は、-log P(xi, yj)
• 期待値を取って
結合エントロピー H ( X , Y )   P( xi , y j ) logP( xi , y j )
i
j
但し、∑∑P(xi, yj) = 1, ∑iP(xi, yj) = P(yj), ∑jP(xi, yj) = P(xi)
結合エントロピーの計算
U V
U V
U V
A
A
A
A
C
C
C
C
G
G
G
G
T
T
T
T
A
A
A
A
C
C
C
C
G
G
G
G
T
T
T
T
A
A
A
A
C
C
C
C
G
G
G
G
T
T
T
T
A
C
G
T
A
C
G
T
A
C
G
T
A
C
G
T
(a)
C
C
G
G
G
G
T
T
T
T
A
A
A
A
C
C
(b)
C
C
C
C
G
G
G
G
T
T
T
T
A
A
A
A
(c)
(a)のケースでは、
AAの頻度P(ua,va) = 1/16
ACの頻度P(ua,vc) = 1/16
:
TTの頻度P(ut,vt) = 1/16
従って列UとVの結合エントロピーH(U, V)は、
-P(ua,va)log P(ua, va)-P(ua,vc)log P(ua,vc) - … -P(ut,vt)log P(ut, vt)
=4
結合エントロピーの性質
• H(U, V) = H(V, U)
• 0 ≦ H(U, V) ≦ H(U) + H(V)
• 列Uの塩基の出現と列Vの塩基の出現が互い
に独立なら、
H(U,V) = H(U) + H(V)
相互情報量 (1)
• 一方の情報源Xから情報を得たときに、他方
の情報源Yのことがどれくらい分かるか
• 一方の列Uの列が塩基uiと判明したとき、他
方の列Vの列の塩基の種類に関する情報は
どれくらい得られる?
相互情報量 (2)
• 情報量の加法性より、
列Vの塩基がvjであることが判明したときに得られる情報量
= 列Uの塩基がuiであることが判明したときに得られる列Vに関する情報量
+その上でさらに列Vの塩基がvjであることが判明したときの情報量
• 式で表すと、-log P(vi) = I(vi//ui) + -log P(ui,vj)/P(ui)
従って、 I(vi//ui) = -log P(vi) --log P(ui,vj)/P(ui)
= log P(ui,vj)/(P(ui) P(vi))
相互情報量 (3)
• U, Vについて期待値を計算して、
相互情報量I (U // V ) 
 
i a,c,g, t j a,c,g, t
P(ui , v j ) log
P(ui , v j )
P(ui ) P(v j )
列UとVの塩基間の関連性の強さを定量的にとらえている
相互情報量の性質
• I(U // V) = I(V // U)
• I(U // V) ≧ 0
• I(U // V) = H(U) + H(V) – H(U, V)
相互情報量の計算
U V
U V
U V
A
A
A
A
C
C
C
C
G
G
G
G
T
T
T
T
A
A
A
A
C
C
C
C
G
G
G
G
T
T
T
T
A
A
A
A
C
C
C
C
G
G
G
G
T
T
T
T
A
C
G
T
A
C
G
T
A
C
G
T
A
C
G
T
(a)
C
C
G
G
G
G
T
T
T
T
A
A
A
A
C
C
(b)
C
C
C
C
G
G
G
G
T
T
T
T
A
A
A
A
(c)
(a)のケースでは、
H(U)=2, H(V)=2, H(U,V)=4
従って、
I(U//V) = H(U)+H(V)-H(U,V) = 0
演習問題
U V
A
A
A
A
C
C
C
C
A
A
G
T
C
C
G
T
列U,Vにおける塩基間の相互情報量を求めよ。
tRNAの二次構造
5’ G
CC
A 3’
GC
GC
AU
A GU
H
CG
GC
GC G G
U
UGCCC U AG
G
B
U
A
A
C
GCGGG
C
CUUG
G
UU
C
G
GAAU
UF
UUA
A
G
C CG G G
CG
D UA E
GC
CG
C C
U
A
G UC
A
aspU
aspV
aspT
ileV
ileU
ileT
valV
valW
alaU
alaT
alaV
alaX
alaW
hisR
pheV
pheU
thrW
asnT
asnW
asnU
asnV
glyW
glyV
glyX
glyY
thrV
thrT
thrU
metU
metT
lysT
lysW
lysY
lysZ
lysQ
lysV
ileY
ileX
valT
valZ
valU
B
C D
E
F
G H
1
2
3
4
5
6
7
0123456789012345678901234567890123456789012345678901234567890123456789012345678
-GGAGCGGTAGTTCAG-TCGGTTAGAATACCTGCCTGTCACGCAGGGGGTCGCGGGTTCGAGTCCCGTCCGTTCCGCCA
-GGAGCGGTAGTTCAG-TCGGTTAGAATACCTGCCTGTCACGCAGGGGGTCGCGGGTTCGAGTCCCGTCCGTTCCGCCA
-GGAGCGGTAGTTCAG-TCGGTTAGAATACCTGCCTGTCACGCAGGGGGTCGCGGGTTCGAGTCCCGTCCGTTCCGCCA
-AGGCTTGTAGCTCAG-GTGGTTAGAGCGCACCCCTGATAAGGGTGAGGTCGGTGGTTCAAGTCCACTCAGGCCTACCA
-AGGCTTGTAGCTCAG-GTGGTTAGAGCGCACCCCTGATAAGGGTGAGGTCGGTGGTTCAAGTCCACTCAGGCCTACCA
-AGGCTTGTAGCTCAG-GTGGTTAGAGCGCACCCCTGATAAGGGTGAGGTCGGTGGTTCAAGTCCACTCAGGCCTACCA
-GCGTTCATAGCTCAG-TTGGTTAGAGCACCACCTTGACATGGTGGGGGTCGTTGGTTCGAGTCCAATTGAACGCACCA
-GCGTCCGTAGCTCAG-TTGGTTAGAGCACCACCTTGACATGGTGGGGGTCGGTGGTTCGAGTCCACTCGGACGCACCA
-GGGGCTATAGCTCAG-CTGGG-AGAGCGCCTGCTTTGCACGCAGGAGGTCTGCGGTTCGATCCCGCATAGCTCCACCA
-GGGGCTATAGCTCAG-CTGGG-AGAGCGCCTGCTTTGCACGCAGGAGGTCTGCGGTTCGATCCCGCATAGCTCCACCA
-GGGGCTATAGCTCAG-CTGGG-AGAGCGCCTGCTTTGCACGCAGGAGGTCTGCGGTTCGATCCCGCATAGCTCCACCA
-GGGGCTATAGCTCAG-CTGGG-AGAGCGCTTGCATGGCATGCAAGAGGTCAGCGGTTCGATCCCGCTTAGCTCCACCA
-GGGGCTATAGCTCAG-CTGGG-AGAGCGCTTGCATGGCATGCAAGAGGTCAGCGGTTCGATCCCGCTTAGCTCCACCA
GGTGGCTATAGCTCAG-TTGGT-AGAGCCCTGGATTGTGATTCCAGTTGTCGTGGGTTCGAATCCCATTAGCCACCCCA
-GCCCGGATAGCTCAG-TCGGT-AGAGCAGGGGATTGAAAATCCCCGTGTCCTTGGTTCGATTCCGAGTCCGGGCACCA
-GCCCGGATAGCTCAG-TCGGT-AGAGCAGGGGATTGAAAATCCCCGTGTCCTTGGTTCGATTCCGAGTCCGGGCACCA
-GCCGATATAGCTCAG-TTGGT-AGAGCAGCGCATTCGTAATGCGAAGGTCGTAGGTTCGACTCCTATTATCGGCACCA
-TCCTCTGTAGTTCAG-TCGGT-AGAACGGCGGACTGTTAATCCGTATGTCACTGGTTCGAGTCCAGTCAGAGGAGCCA
-TCCTCTGTAGTTCAG-TCGGT-AGAACGGCGGACTGTTAATCCGTATGTCACTGGTTCGAGTCCAGTCAGAGGAGCCA
-TCCTCTGTAGTTCAG-TCGGT-AGAACGGCGGACTGTTAATCCGTATGTCACTGGTTCGAGTCCAGTCAGAGGAGCCA
-TCCTCTGTAGTTCAG-TCGGT-AGAACGGCGGACTGTTAATCCGTATGTCACTGGTTCGAGTCCAGTCAGAGGAGCCA
TGCGGGAATAGCTCAG-TTGGT-AGAGCACGACCTTGCCAAGGTCGGGGTCGCGAGTTCGAGTCTCGTTTCCCGCTCCA
-GCGGGAATAGCTCAG-TTGGT-AGAGCACGACCTTGCCAAGGTCGGGGTCGCGAGTTCGAGTCTCGTTTCCCGCTCCA
-GCGGGAATAGCTCAG-TTGGT-AGAGCACGACCTTGCCAAGGTCGGGGTCGCGAGTTCGAGTCTCGTTTCCCGCTCCA
-GCGGGAATAGCTCAG-TTGGT-AGAGCACGACCTTGCCAAGGTCGGGGTCGCGAGTTCGAGTCTCGTTTCCCGCTCCA
-GCTGATATGGCTCAG-TTGGT-AGAGCGCACCCTTGGTAAGGGTGAGGTCCCCAGTTCGACTCTGGGTATCAGCACCA
-GCTGATATAGCTCAG-TTGGT-AGAGCGCACCCTTGGTAAGGGTGAGGTCGGCAGTTCGAATCTGCCTATCAGCACCA
-GCCGACTTAGCTCAG-TAGGT-AGAGCAACTGACTTGTAATCAGTAGGTCACCAGTTCGATTCCGGTAGTCGGCACCA
-GGCTACGTAGCTCAG-TTGGTTAGAGCACATCACTCATAATGATGGGGTCACAGGTTCGAATCCCGTCGTAGCCACCA
-GGCTACGTAGCTCAG-TTGGTTAGAGCACATCACTCATAATGATGGGGTCACAGGTTCGAATCCCGTCGTAGCCACCA
-GGGTCGTTAGCTCAG-TTGGT-AGAGCAGTTGACTTTTAATCAATTGGTCGCAGGTTCGAATCCTGCACGACCCACCA
-GGGTCGTTAGCTCAG-TTGGT-AGAGCAGTTGACTTTTAATCAATTGGTCGCAGGTTCGAATCCTGCACGACCCACCA
-GGGTCGTTAGCTCAG-TTGGT-AGAGCAGTTGACTTTTAATCAATTGGTCGCAGGTTCGAATCCTGCACGACCCACCA
-GGGTCGTTAGCTCAG-TTGGT-AGAGCAGTTGACTTTTAATCAATTGGTCGCAGGTTCGAATCCTGCACGACCCACCA
-GGGTCGTTAGCTCAG-TTGGT-AGAGCAGTTGACTTTTAATCAATTGGTCGCAGGTTCGAATCCTGCACGACCCACCA
-GGGTCGTTAGCTCAG-TTGGT-AGAGCAGTTGACTTTTAATCAATTGGTCGCAGGTTCGAATCCTGCACGACCCACCA
-GGCCCTTTAGCTCAG-TGGTT-AGAGCAGGCGACTCATAATCGCTTGGTCGCTGGTTCAAGTCCAGCAAGGGCCACCA
-GGCCCCTTAGCTCAG-TGGTT-AGAGCAGGCGACTCATAATCGCTTGGTCGCTGGTTCAAGTCCAGCAGGGGCCACCA
-GGGTGATTAGCTCAG-CTGGG-AGAGCACCTCCCTTACAAGGAGGGGGTCGGCGGTTCGATCCCGTCATCACCCACCA
-GGGTGATTAGCTCAG-CTGGG-AGAGCACCTCCCTTACAAGGAGGGGGTCGGCGGTTCGATCCCGTCATCACCCACCA
-GGGTGATTAGCTCAG-CTGGG-AGAGCACCTCCCTTACAAGGAGGGGGTCGGCGGTTCGATCCCGTCATCACCCACCA
C
A
B
D
F
0 1 2 3
0
0 0 0
1
0 0
2
0
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
4
0
0
0
0
5
0
0
0
0
0
6
0
0
0
0
0
1
7
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
E
7
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
4
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
7
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
3
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
0
0
1
0
0
0
0
0
0
G
4
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
1
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
6
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
3
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
1
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
H
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
演習問題
相互情報量I (U // V ) 
 
i a,c,g, t j a,c,g, t
 H (U )  H (V )  H (U ,V ) を示せ。
P(ui , v j ) log
P(ui , v j )
P(ui ) P(v j )