cat('\014')

rm(list = ls(all = TRUE))
seed  = 123456
# Loading data
#download.file(url = 'https://www.ebi.ac.uk/~hamedhm/Fully_loaded_R_data.RData','Fully loaded R data.RData')
#download.file(url = 'https://www.ebi.ac.uk/~hamedhm/All_Human_Cells_data.RData','All Human Cells data.Rdata')
JAX_Primary_Viability_correct_for_Hamed =
  read.csv(
    "C:/Users/hamedhm/Dropbox/ML_ESSENTIAL_GENES/Hamed/JAX validation/JAX_Primary_Viability_correct_for_Hamed.csv",
    check.names = FALSE
  )
load(file = 'All Human Cells data.Rdata')
load(file = 'Fully loaded R data.RData')
overall_human_cell_lines = overall_human_cell_lines[, -c(
  #Violeta remove two columns
  grep(
    pattern = c('gecko'),
    x = colnames(overall_human_cell_lines),
    ignore.case = TRUE
  ),
  grep(
    pattern = c('shrna'),
    x = colnames(overall_human_cell_lines),
    ignore.case = TRUE
  )
)]

####
library(GeneViability)
aM = initialization(
  data = DMDD_test,
  response = 'Viability',
  speed = TRUE,
  seed = seed
)
## 
##  Response is not found and then set to NULL
## 
##  Duplicated data found and removed! check: MGI:3642803|MGI:2676311|MGI:2444858|MGI:1922509|MGI:2443217|MGI:1916763|MGI:3650030|MGI:4439625|MGI:3801970|MGI:3782614|MGI:5595797|MGI:4834241
## 
##  Response is not included!
## 
##  Shuffling in process ...
## 
##  Missing data more than 70 percent in rows (5141=19%) [removed]: MGI:5456130|MGI:2655401|MGI:98542|MGI:5456134|MGI:5579959|MGI:3642737|MGI:5434537|MGI:4937021|MGI:5531070|MGI:2429506|MGI:3651331|MGI:3650294|MGI:5141940|MGI:5455513|MGI:5454482|MGI:3781514|MGI:3589281|MGI:3030754|MGI:1859664|MGI:3802172|MGI:1351335|MGI:3644272|MGI:2676295|MGI:3781826|MGI:1919326|MGI:1922513|MGI:1925426|MGI:3651913|MGI:5455326|MGI:5610841|MGI:5504090|MGI:3801724|MGI:5611045|MGI:5455766|MGI:5452725|MGI:3642236|MGI:5504110|MGI:5477105|MGI:3588271|MGI:3650620|MGI:5455775|MGI:3705287|MGI:3651540|MGI:5454039|MGI:1925104|MGI:3781379|MGI:3649458|MGI:3651092|MGI:5580065|MGI:5588877|MGI:1922954|MGI:3781628|MGI:3588208|MGI:5579542|MGI:1924641|MGI:3837040|MGI:3780614|MGI:1922636|MGI:3645789|MGI:1923913|MGI:5434106|MGI:3647545|MGI:1345151|MGI:2443867|MGI:1925741|MGI:3648046|MGI:99215|MGI:96700|MGI:5453445|MGI:2136752|MGI:5663112|MGI:3644309|MGI:3801982|MGI:1929785|MGI:5530758|MGI:5454773|MGI:3646099|MGI:2388054|MGI:1922720|MGI:3644030|MGI:3802045|MGI:1918566|MGI:3651744|MGI:3650667|MGI:4950415|MGI:2148500|MGI:5453920|MGI:3650409|MGI:2444046|MGI:3039596|MGI:4421747|MGI:2442750|MGI:3783084|MGI:5521097|MGI:3645184|MGI:3782985|MGI:5662583|MGI:1916659|MGI:5530674|MGI:5313138|MGI:5455022|MGI:3796554|MGI:5530661|MGI:4938033|MGI:5453440|MGI:1924897|MGI:5579569|MGI:2675468|MGI:5454427|MGI:2444600|MGI:2685621|MGI:1924415|MGI:6096195|MGI:3040681|MGI:3705562|MGI:5530958|MGI:2140794|MGI:3651568|MGI:3782710|MGI:1920155|MGI:3650849|MGI:3705819|MGI:3707362|MGI:5662728|MGI:3705386|MGI:5477366|MGI:2444069|MGI:96382|MGI:5454770|MGI:5452883|MGI:4439646|MGI:96938|MGI:3801964|MGI:106185|MGI:5452130|MGI:3650588|MGI:3709612|MGI:2146636|MGI:6096143|MGI:3705665|MGI:3779400|MGI:3651077|MGI:2685134|MGI:3583618|MGI:3649394|MGI:3650549|MGI:3619399|MGI:2149951|MGI:4439610|MGI:3645575|MGI:3779575|MGI:3651507|MGI:1920356|MGI:1926160|MGI:3826519|MGI:5477359|MGI:5610637|MGI:98229|MGI:2429635|MGI:3840145|MGI:95821|MGI:3650081|MGI:5455750|MGI:5531385|MGI:1918404|MGI:3783099|MGI:5579722|MGI:3823028|MGI:3826557|MGI:3649545|MGI:5452147|MGI:3588244|MGI:2685341|MGI:1922505|MGI:3781382|MGI:5663697|MGI:5610767|MGI:3647186|MGI:3649091|MGI:5610946|MGI:3648153|MGI:3652207|MGI:5610879|MGI:2676845|MGI:5610940|MGI:5531239|MGI:3619441|MGI:5455604|MGI:5662618|MGI:1336189|MGI:5662623|MGI:2444267|MGI:3652274|MGI:1923912|MGI:5530933|MGI:5579205|MGI:104524|MGI:2384570|MGI:1914034|MGI:5530792|MGI:3651497|MGI:5477129|MGI:103150|MGI:5663764|MGI:5434057|MGI:4834310|MGI:97794|MGI:1916575|MGI:5530699|MGI:3645703|MGI:3649637|MGI:3588215|MGI:3642083|MGI:3643731|MGI:3705424|MGI:5439452|MGI:3650381|MGI:5451928|MGI:5578993|MGI:3704363|MGI:5663799|MGI:1343053|MGI:3650447|MGI:5456128|MGI:1913416|MGI:5663538|MGI:3705187|MGI:99953|MGI:88421|MGI:3801888|MGI:5477194|MGI:5453417|MGI:5012296|MGI:5662627|MGI:3802000|MGI:3651571|MGI:5610786|MGI:5531290|MGI:4834323|MGI:3647882|MGI:3651447|MGI:1891442|MGI:5452603|MGI:5454242|MGI:3588235|MGI:5455292|MGI:3708691|MGI:5611382|MGI:3647044|MGI:2684965|MGI:2685779|MGI:5530882|MGI:1343166|MGI:5454115|MGI:1922520|MGI:5477348|MGI:3045351|MGI:5690854|MGI:3779520|MGI:3651323|MGI:5455847|MGI:1932389|MGI:5477079|MGI:3826551|MGI:5594874|MGI:5521089|MGI:5452326|MGI:3651093|MGI:5434113|MGI:3650372|MGI:1921047|MGI:3650358|MGI:3644655|MGI:3649237|MGI:1918851|MGI:3642597|MGI:5530863|MGI:5141978|MGI:3809062|MGI:3704456|MGI:1921549|MGI:3651640|MGI:3702655|MGI:3035181|MGI:5531141|MGI:5610710|MGI:1916312|MGI:3045381|MGI:3629953|MGI:3582052|MGI:2137415|MGI:5580336|MGI:2447313|MGI:1916537|MGI:3646756|MGI:2682320|MGI:3642383|MGI:5662944|MGI:2444259|MGI:5453883|MGI:3619352|MGI:3801759|MGI:5662930|MGI:5455674|MGI:5579914|MGI:5454608|MGI:1920438|MGI:2153816|MGI:2151136|MGI:5452959|MGI:3651097|MGI:5580080|MGI:5579028|MGI:5610732|MGI:3649525|MGI:3826364|MGI:5611107|MGI:102969|MGI:3645903|MGI:5662777|MGI:5451945|MGI:5455567|MGI:2674085|MGI:3783187|MGI:3801920|MGI:3605764|MGI:5663249|MGI:5662573|MGI:5610891|MGI:1925479|MGI:3651228|MGI:3651925|MGI:5453777|MGI:5663155|MGI:5662824|MGI:3802165|MGI:3649410|MGI:2441710|MGI:3783186|MGI:3651168|MGI:3645695|MGI:1914024|MGI:1278326|MGI:2445145|MGI:2686319|MGI:1920859|MGI:1923204|MGI:5531373|MGI:3780305|MGI:2447322|MGI:3701966|MGI:3647391|MGI:3644977|MGI:5454409|MGI:3643270|MGI:5454219|MGI:5452821|MGI:3646857|MGI:3642756|MGI:3651161|MGI:4937908|MGI:3650069|MGI:1924319|MGI:1925680|MGI:5455219|MGI:5663083|MGI:3705794|MGI:3643653|MGI:3651551|MGI:3782793|MGI:5455042|MGI:2442787|MGI:5610876|MGI:3026615|MGI:5452487|MGI:5455527|MGI:5477083|MGI:5580207|MGI:5611309|MGI:5663106|MGI:106332|MGI:98280|MGI:5452008|MGI:3648725|MGI:3840146|MGI:3780348|MGI:5452970|MGI:5663684|MGI:3619381|MGI:1270845|MGI:5610510|MGI:1935162|MGI:3705342|MGI:3651383|MGI:5662677|MGI:3783370|MGI:3026946|MGI:1332242|MGI:1920612|MGI:1914061|MGI:5011879|MGI:3649448|MGI:3779916|MGI:3647788|MGI:891990|MGI:5452088|MGI:3648037|MGI:3650383|MGI:3641819|MGI:3705453|MGI:3645308|MGI:2685151|MGI:5610907|MGI:3650051|MGI:5579620|MGI:3586838|MGI:3649593|MGI:5454590|MGI:3801821|MGI:5011853|MGI:3645219|MGI:5663425|MGI:1859622|MGI:3649275|MGI:5663467|MGI:5453334|MGI:3783128|MGI:3650256|MGI:3701980|MGI:3782796|MGI:3783106|MGI:5530685|MGI:1915168|MGI:2180852|MGI:3651775|MGI:5439414|MGI:3645798|MGI:4950385|MGI:5477120|MGI:107917|MGI:3650374|MGI:1921811|MGI:97810|MGI:5434897|MGI:3629907|MGI:1919526|MGI:3643536|MGI:3650414|MGI:3705423|MGI:5455997|MGI:1917773|MGI:3649956|MGI:5521010|MGI:5504086|MGI:3840155|MGI:5456021|MGI:1916558|MGI:5645797|MGI:4441441|MGI:107700|MGI:1922886|MGI:5579725|MGI:3836969|MGI:3642852|MGI:5455614|MGI:3704339|MGI:3619334|MGI:5452251|MGI:5452360|MGI:3651177|MGI:5663424|MGI:1928271|MGI:1920553|MGI:3629909|MGI:3783179|MGI:5477389|MGI:3649809|MGI:1921806|MGI:3649736|MGI:1916281|MGI:1919004|MGI:4422072|MGI:5477240|MGI:3646499|MGI:2685414|MGI:3651778|MGI:1095415|MGI:5521044|MGI:5455150|MGI:3644454|MGI:1196250|MGI:3642251|MGI:3783143|MGI:2149738|MGI:1925310|MGI:3645663|MGI:3651305|MGI:3705247|MGI:3641967|MGI:1926012|MGI:3704496|MGI:3651504|MGI:3705152|MGI:5452903|MGI:3641917|MGI:1923903|MGI:3709847|MGI:5579998|MGI:2156377|MGI:3651066|MGI:5610730|MGI:1353616|MGI:98933|MGI:3646270|MGI:5440479|MGI:3780631|MGI:2158468|MGI:3646382|MGI:3705122|MGI:5455707|MGI:3780221|MGI:3647318|MGI:4950426|MGI:5610516|MGI:1921925|MGI:5610660|MGI:1921698|MGI:3801842|MGI:5611319|MGI:3705590|MGI:3779492|MGI:3648526|MGI:3045285|MGI:2177474|MGI:1919327|MGI:5011007|MGI:5663118|MGI:1924761|MGI:3584525|MGI:5453984|MGI:3648847|MGI:2444780|MGI:5455659|MGI:5456002|MGI:3651599|MGI:5521011|MGI:3031345|MGI:3651601|MGI:5610857|MGI:2137300|MGI:2685750|MGI:5141973|MGI:3650887|MGI:1345185|MGI:3647509|MGI:3781073|MGI:3645402|MGI:5452999|MGI:5455629|MGI:3649218|MGI:1919081|MGI:3607720|MGI:5504095|MGI:4950459|MGI:2683287|MGI:3801926|MGI:5562727|MGI:3708092|MGI:3650798|MGI:3783032|MGI:5611391|MGI:3708125|MGI:2685767|MGI:5455633|MGI:3649624|MGI:5662580|MGI:5579953|MGI:1934133|MGI:3826556|MGI:3031176|MGI:5455586|MGI:1915071|MGI:3783066|MGI:5610370|MGI:4936886|MGI:3757998|MGI:108012|MGI:5610207|MGI:5452764|MGI:3041158|MGI:3642823|MGI:4421897|MGI:98262|MGI:3702173|MGI:5662576|MGI:3651559|MGI:2387617|MGI:3704096|MGI:5010537|MGI:3650266|MGI:3840139|MGI:5010136|MGI:3646825|MGI:1925865|MGI:1929885|MGI:1917800|MGI:3649841|MGI:3645596|MGI:5579939|MGI:5454507|MGI:1925995|MGI:3647504|MGI:3651313|MGI:3647136|MGI:3782158|MGI:5580094|MGI:3801956|MGI:88344|MGI:5531038|MGI:96114|MGI:3643077|MGI:5453559|MGI:3649443|MGI:4360990|MGI:2441906|MGI:5579589|MGI:3779456|MGI:1913150|MGI:3704315|MGI:3641638|MGI:1920626|MGI:3642542|MGI:4937064|MGI:1860079|MGI:5579026|MGI:5452728|MGI:3705184|MGI:3642884|MGI:3613390|MGI:1924155|MGI:5611514|MGI:2148171|MGI:5141994|MGI:3801844|MGI:5611277|MGI:3646440|MGI:3651586|MGI:5453279|MGI:103115|MGI:5579646|MGI:3651845|MGI:99212|MGI:5452434|MGI:3629894|MGI:3607786|MGI:2681162|MGI:3802052|MGI:3705509|MGI:3649476|MGI:3651115|MGI:3826560|MGI:3646746|MGI:3031227|MGI:1917059|MGI:3802004|MGI:5579121|MGI:3651332|MGI:3645391|MGI:3647070|MGI:1928282|MGI:3645422|MGI:5610525|MGI:5610469|MGI:3758174|MGI:5452636|MGI:5454931|MGI:3039597|MGI:87926|MGI:3647921|MGI:3779804|MGI:3802098|MGI:3651616|MGI:1918458|MGI:5611399|MGI:3651876|MGI:5594224|MGI:3644457|MGI:98815|MGI:5611223|MGI:5451818|MGI:3650854|MGI:2385644|MGI:5434027|MGI:3650465|MGI:1922357|MGI:4938046|MGI:1921223|MGI:5451859|MGI:5662756|MGI:5455252|MGI:3650072|MGI:3648010|MGI:3651461|MGI:1915777|MGI:1100845|MGI:1341831|MGI:1916611|MGI:5455557|MGI:3781690|MGI:3650649|MGI:2685651|MGI:3802121|MGI:5453144|MGI:5477217|MGI:3648643|MGI:3645556|MGI:3619322|MGI:3650533|MGI:1925079|MGI:5455260|MGI:1924248|MGI:5595707|MGI:3705753|MGI:2676841|MGI:5452742|MGI:2140270|MGI:3512682|MGI:3030525|MGI:5662615|MGI:3613386|MGI:5454216|MGI:5521015|MGI:3649392|MGI:3650466|MGI:5579630|MGI:105055|MGI:5454708|MGI:5454564|MGI:3650830|MGI:5453007|MGI:3712484|MGI:3781939|MGI:5611553|MGI:2183434|MGI:3646389|MGI:5453033|MGI:2151164|MGI:2685613|MGI:1917216|MGI:5453468|MGI:4421885|MGI:5663245|MGI:5313081|MGI:106198|MGI:5477075|MGI:5451983|MGI:5504077|MGI:3802066|MGI:3644961|MGI:3782942|MGI:3644512|MGI:3645367|MGI:5455535|MGI:5434915|MGI:5141920|MGI:3644405|MGI:1925898|MGI:106660|MGI:1925823|MGI:3646388|MGI:5611000|MGI:2140937|MGI:1927848|MGI:5455207|MGI:5579079|MGI:5453556|MGI:1355294|MGI:1919157|MGI:3649724|MGI:5451882|MGI:5313133|MGI:3644593|MGI:5579231|MGI:3779481|MGI:5662974|MGI:3652173|MGI:4421886|MGI:2686486|MGI:1923185|MGI:5453968|MGI:1334209|MGI:3650009|MGI:3629629|MGI:3652048|MGI:1918498|MGI:3652278|MGI:5611076|MGI:3801874|MGI:3647159|MGI:2681310|MGI:5011166|MGI:3643802|MGI:1314633|MGI:5453453|MGI:5530648|MGI:5504163|MGI:5530830|MGI:3704266|MGI:5663620|MGI:5611264|MGI:2664387|MGI:5011170|MGI:3045268|MGI:5662906|MGI:5580168|MGI:1922713|MGI:1914819|MGI:2675377|MGI:3652283|MGI:2685766|MGI:98431|MGI:5579093|MGI:5011143|MGI:5610323|MGI:2442043|MGI:5011220|MGI:3629686|MGI:4937872|MGI:5313060|MGI:5453035|MGI:1860403|MGI:1920829|MGI:1922427|MGI:88331|MGI:3578624|MGI:97525|MGI:5012116|MGI:5610778|MGI:1310005|MGI:3801857|MGI:109294|MGI:3649264|MGI:5579013|MGI:1918184|MGI:4834327|MGI:5663257|MGI:3651018|MGI:3709610|MGI:3780104|MGI:3708553|MGI:5141870|MGI:5455726|MGI:5455023|MGI:3644176|MGI:5452237|MGI:2387006|MGI:3643201|MGI:107508|MGI:3649087|MGI:3783100|MGI:3783088|MGI:3781839|MGI:3652064|MGI:3705209|MGI:1353645|MGI:3031124|MGI:5663701|MGI:3649733|MGI:1921121|MGI:2663985|MGI:5531311|MGI:2664357|MGI:5452378|MGI:3649602|MGI:3646201|MGI:5611113|MGI:5589332|MGI:2681880|MGI:1928679|MGI:5453643|MGI:3651479|MGI:3650740|MGI:3647731|MGI:5439456|MGI:3802047|MGI:5663567|MGI:5454455|MGI:4950453|MGI:3650734|MGI:5453010|MGI:2685222|MGI:3651085|MGI:5663124|MGI:1917026|MGI:3647132|MGI:5454022|MGI:3649121|MGI:2676795|MGI:2685699|MGI:5611266|MGI:5456054|MGI:96540|MGI:3645746|MGI:3649527|MGI:1316745|MGI:5010488|MGI:5530991|MGI:3652181|MGI:3649957|MGI:2685508|MGI:5455181|MGI:3718464|MGI:5611483|MGI:3705100|MGI:3782945|MGI:3649848|MGI:1921309|MGI:3809114|MGI:1922698|MGI:5454327|MGI:3801772|MGI:2676839|MGI:3840138|MGI:3651490|MGI:3644226|MGI:4937179|MGI:3642994|MGI:5455163|MGI:3780442|MGI:2686053|MGI:5011992|MGI:3783202|MGI:3801865|MGI:3649272|MGI:1917549|MGI:3650787|MGI:3801947|MGI:3045356|MGI:3783246|MGI:2445041|MGI:3650642|MGI:5452660|MGI:3027124|MGI:2138647|MGI:3643572|MGI:1920707|MGI:5453250|MGI:5663863|MGI:5313149|MGI:5611491|MGI:5141885|MGI:3779275|MGI:3649798|MGI:5579758|MGI:5477316|MGI:109362|MGI:5454084|MGI:1914768|MGI:5611337|MGI:2443043|MGI:3649881|MGI:3802067|MGI:3649253|MGI:3647437|MGI:3811422|MGI:5452277|MGI:5611325|MGI:3652026|MGI:3643920|MGI:1918103|MGI:5453347|MGI:3041185|MGI:88005|MGI:2684945|MGI:3649948|MGI:3649903|MGI:3629904|MGI:1923650|MGI:1915471|MGI:3702435|MGI:97243|MGI:3705649|MGI:3642739|MGI:1922122|MGI:5690770|MGI:5009986|MGI:5434010|MGI:1923682|MGI:3650023|MGI:2672966|MGI:5662956|MGI:3642146|MGI:3781465|MGI:5452105|MGI:1351344|MGI:5455294|MGI:5662819|MGI:3801853|MGI:5455336|MGI:3650867|MGI:5690757|MGI:3651159|MGI:5611530|MGI:1916531|MGI:1918863|MGI:3642713|MGI:5453760|MGI:5455841|MGI:5455303|MGI:3629901|MGI:2676913|MGI:3651539|MGI:5579934|MGI:3649698|MGI:3705697|MGI:108224|MGI:5477067|MGI:5010883|MGI:5610295|MGI:1920705|MGI:3649544|MGI:3647848|MGI:4936993|MGI:3643020|MGI:102716|MGI:5579171|MGI:107304|MGI:3718564|MGI:3646538|MGI:6096147|MGI:3642196|MGI:5452341|MGI:3651107|MGI:5504129|MGI:3649779|MGI:2685887|MGI:3783007|MGI:3761375|MGI:3647344|MGI:3643085|MGI:3644547|MGI:1922735|MGI:5455039|MGI:5562785|MGI:3651058|MGI:3650612|MGI:1920711|MGI:1922635|MGI:1918999|MGI:3651905|MGI:3783154|MGI:1920734|MGI:3802031|MGI:3713752|MGI:4414969|MGI:5452875|MGI:1891158|MGI:5611084|MGI:3616889|MGI:2676865|MGI:3650390|MGI:3652228|MGI:3852490|MGI:3650370|MGI:3650832|MGI:3652267|MGI:5011006|MGI:5610423|MGI:5610335|MGI:5610672|MGI:1920712|MGI:5530731|MGI:4439688|MGI:5531263|MGI:5611215|MGI:5530748|MGI:3705140|MGI:3650073|MGI:5453826|MGI:1923133|MGI:1333759|MGI:2685225|MGI:3811419|MGI:3650445|MGI:3646159|MGI:3780634|MGI:1924956|MGI:5010850|MGI:3651600|MGI:5663481|MGI:1933237|MGI:2685627|MGI:3649811|MGI:1922902|MGI:3650037|MGI:2447811|MGI:4938034|MGI:3710610|MGI:3651407|MGI:5440235|MGI:5530647|MGI:94862|MGI:5579125|MGI:2145528|MGI:3026970|MGI:5453570|MGI:5012152|MGI:1914615|MGI:5452946|MGI:5454929|MGI:5663128|MGI:5454677|MGI:5663581|MGI:5452080|MGI:5662834|MGI:5663663|MGI:5453009|MGI:3649546|MGI:5504051|MGI:1918112|MGI:3652160|MGI:5530706|MGI:5530743|MGI:5504098|MGI:3782387|MGI:3781837|MGI:3780148|MGI:4937947|MGI:1917415|MGI:3801988|MGI:2685676|MGI:1921653|MGI:5610273|MGI:3802163|MGI:1919117|MGI:5611536|MGI:5452695|MGI:5455666|MGI:4936884|MGI:1350928|MGI:1916731|MGI:3644875|MGI:106196|MGI:4421930|MGI:5477092|MGI:3649604|MGI:5595070|MGI:4414978|MGI:4938015|MGI:109293|MGI:3030253|MGI:5454334|MGI:5477189|MGI:1922401|MGI:3505689|MGI:3651584|MGI:96696|MGI:3649362|MGI:3028058|MGI:3030295|MGI:1932037|MGI:3647718|MGI:5456242|MGI:3705886|MGI:2385729|MGI:109254|MGI:1922511|MGI:5531180|MGI:2443170|MGI:3619341|MGI:5547789|MGI:3642807|MGI:1923066|MGI:94910|MGI:96281|MGI:5690869|MGI:5530692|MGI:5611529|MGI:1918231|MGI:3708672|MGI:2444054|MGI:1351324|MGI:3643253|MGI:5477364|MGI:5455980|MGI:3030468|MGI:1915766|MGI:1918255|MGI:5141927|MGI:3651781|MGI:5504052|MGI:3801933|MGI:5610692|MGI:3651749|MGI:2660935|MGI:1916456|MGI:3837034|MGI:5663142|MGI:4937985|MGI:5531413|MGI:3783140|MGI:5610630|MGI:3645643|MGI:5663813|MGI:3652008|MGI:5663563|MGI:5455662|MGI:3705148|MGI:5453596|MGI:3642365|MGI:3645838|MGI:3648529|MGI:3652316|MGI:109255|MGI:3648206|MGI:1930915|MGI:2441659|MGI:2148516|MGI:1202394|MGI:3649647|MGI:4937852|MGI:5455781|MGI:5452207|MGI:5434023|MGI:3779561|MGI:5611287|MGI:3649638|MGI:3618696|MGI:5452082|MGI:2676900|MGI:3648230|MGI:5610965|MGI:5610602|MGI:3648307|MGI:88337|MGI:99481|MGI:4937899|MGI:3801948|MGI:5453159|MGI:1203730|MGI:107817|MGI:2657115|MGI:5452862|MGI:3643135|MGI:1935166|MGI:5453431|MGI:1919104|MGI:5580160|MGI:2686003|MGI:5611122|MGI:5579014|MGI:3580656|MGI:1918547|MGI:5454390|MGI:1929914|MGI:3780567|MGI:1353604|MGI:5663721|MGI:5530813|MGI:5454501|MGI:5611333|MGI:5451850|MGI:1918440|MGI:3649344|MGI:1922289|MGI:2146052|MGI:3651150|MGI:5610224|MGI:1925475|MGI:3711325|MGI:5611183|MGI:3647094|MGI:3642340|MGI:3642695|MGI:2444371|MGI:3648937|MGI:3708485|MGI:5453294|MGI:2149837|MGI:3643204|MGI:5453580|MGI:3801930|MGI:5456078|MGI:5456138|MGI:2663191|MGI:5454572|MGI:5663665|MGI:3645266|MGI:3642963|MGI:1923042|MGI:3041178|MGI:88574|MGI:1925232|MGI:1918485|MGI:3651493|MGI:3650643|MGI:3643216|MGI:3705138|MGI:3705845|MGI:5530978|MGI:2385905|MGI:1923628|MGI:1347083|MGI:5578992|MGI:3649108|MGI:5592506|MGI:3801997|MGI:3629628|MGI:3580237|MGI:3783049|MGI:5452318|MGI:5455935|MGI:88335|MGI:3649797|MGI:1913904|MGI:96760|MGI:3809201|MGI:3801879|MGI:5141857|MGI:88512|MGI:2685127|MGI:5454407|MGI:3642509|MGI:4834306|MGI:3705306|MGI:5662917|MGI:3649442|MGI:3802170|MGI:3801993|MGI:4834231|MGI:3650495|MGI:5455816|MGI:1917499|MGI:5454222|MGI:5580227|MGI:3648234|MGI:5611605|MGI:1925850|MGI:2442156|MGI:5663513|MGI:3651801|MGI:1916141|MGI:5504033|MGI:3644125|MGI:3650807|MGI:3649706|MGI:1917650|MGI:5453938|MGI:1202878|MGI:5452580|MGI:3629632|MGI:2149332|MGI:3650835|MGI:5454245|MGI:3649457|MGI:3642306|MGI:5453165|MGI:3530275|MGI:5579085|MGI:5477138|MGI:2685956|MGI:5663343|MGI:1914940|MGI:3705567|MGI:5452591|MGI:5454593|MGI:5455118|MGI:5690714|MGI:1919079|MGI:3647540|MGI:1922269|MGI:5611464|MGI:5313137|MGI:3705263|MGI:105931|MGI:3650134|MGI:5453963|MGI:3705150|MGI:3646227|MGI:2679447|MGI:5454423|MGI:5011737|MGI:5611419|MGI:4414962|MGI:5610267|MGI:5521055|MGI:3710645|MGI:5456063|MGI:3641872|MGI:5610308|MGI:3780108|MGI:2444345|MGI:1918288|MGI:1917138|MGI:3783000|MGI:2182839|MGI:3644940|MGI:4421874|MGI:2685092|MGI:5610180|MGI:5010161|MGI:2141165|MGI:3801975|MGI:3030560|MGI:1923860|MGI:3649152|MGI:3779938|MGI:3650100|MGI:5579906|MGI:5011015|MGI:3702680|MGI:5455906|MGI:1916634|MGI:3648302|MGI:3650295|MGI:3802042|MGI:5580037|MGI:2141339|MGI:3704138|MGI:5456014|MGI:3647518|MGI:5454359|MGI:3781346|MGI:1351609|MGI:5455241|MGI:2441671|MGI:3648211|MGI:5521009|MGI:3649890|MGI:3801959|MGI:1933244|MGI:3651602|MGI:3703084|MGI:5662979|MGI:1922261|MGI:5455188|MGI:1321404|MGI:3641876|MGI:3704398|MGI:1930790|MGI:3651041|MGI:1915604|MGI:1276123|MGI:3704461|MGI:5531280|MGI:5580148|MGI:1919138|MGI:5531096|MGI:1920875|MGI:3783044|MGI:2442707|MGI:3650930|MGI:5663693|MGI:94925|MGI:1924441|MGI:3629950|MGI:1925593|MGI:5611353|MGI:1923500|MGI:1341105|MGI:3649762|MGI:3650531|MGI:5579967|MGI:1924416|MGI:1921536|MGI:5610747|MGI:5452800|MGI:2685611|MGI:1099787|MGI:1298217|MGI:5453218|MGI:5610317|MGI:1921682|MGI:3039603|MGI:3647539|MGI:3809041|MGI:5531205|MGI:5610771|MGI:2179988|MGI:3780102|MGI:2665114|MGI:5663228|MGI:1298369|MGI:99686|MGI:1354694|MGI:3782053|MGI:4937206|MGI:3629975|MGI:5610391|MGI:3648617|MGI:5451844|MGI:5439445|MGI:88587|MGI:5611480|MGI:5662784|MGI:5611358|MGI:3649280|MGI:5454182|MGI:5455684|MGI:3647131|MGI:3650164|MGI:5477048|MGI:1918914|MGI:1890463|MGI:3619426|MGI:3034577|MGI:3705179|MGI:1920568|MGI:1923177|MGI:5611209|MGI:5531336|MGI:1314637|MGI:1353451|MGI:5662752|MGI:3781931|MGI:5578818|MGI:2142823|MGI:3783209|MGI:3648599|MGI:5454752|MGI:1923929|MGI:105383|MGI:97010|MGI:5455065|MGI:5610801|MGI:3651215|MGI:5455183|MGI:3649413|MGI:107361|MGI:4937976|MGI:3826604|MGI:97533|MGI:2142174|MGI:5011034|MGI:5611563|MGI:3650694|MGI:98260|MGI:1329033|MGI:3650492|MGI:2444775|MGI:3647512|MGI:2443762|MGI:3710618|MGI:5454908|MGI:3705491|MGI:3652259|MGI:4938017|MGI:3646590|MGI:3651828|MGI:3650810|MGI:5610935|MGI:3045319|MGI:3819491|MGI:2445125|MGI:1861379|MGI:3649683|MGI:5611596|MGI:2138169|MGI:3652298|MGI:5477106|MGI:2444178|MGI:3588247|MGI:5610838|MGI:5477006|MGI:5662629|MGI:5454963|MGI:3781322|MGI:5610281|MGI:5455540|MGI:3649396|MGI:3606604|MGI:5580208|MGI:5453560|MGI:1925283|MGI:3783155|MGI:3645990|MGI:5662980|MGI:3779650|MGI:3651931|MGI:3705269|MGI:3648456|MGI:3705261|MGI:3705117|MGI:5504106|MGI:5610846|MGI:1922150|MGI:3648860|MGI:3718454|MGI:3801753|MGI:3801714|MGI:5610942|MGI:1330841|MGI:5610457|MGI:5455808|MGI:3646920|MGI:3651879|MGI:3650380|MGI:103080|MGI:5662688|MGI:5453392|MGI:1860262|MGI:3031226|MGI:5530869|MGI:3649865|MGI:5662578|MGI:3781208|MGI:1923108|MGI:5610648|MGI:5454183|MGI:1922147|MGI:2148974|MGI:3801979|MGI:3711946|MGI:5455274|MGI:3783025|MGI:5610600|MGI:5610716|MGI:2683461|MGI:3781636|MGI:1339967|MGI:3649528|MGI:3826596|MGI:5011630|MGI:3650216|MGI:1913751|MGI:3646307|MGI:5453154|MGI:1890541|MGI:3647658|MGI:3644192|MGI:3650683|MGI:5451923|MGI:5434364|MGI:5611140|MGI:2684968|MGI:5579508|MGI:5610337|MGI:5611370|MGI:5504075|MGI:3588261|MGI:3645826|MGI:4422061|MGI:1919927|MGI:3708695|MGI:5453571|MGI:1917058|MGI:3649479|MGI:3761374|MGI:3702093|MGI:5663298|MGI:3649005|MGI:2681107|MGI:1914942|MGI:3648261|MGI:3801928|MGI:3650272|MGI:5531254|MGI:3652322|MGI:5010371|MGI:5593926|MGI:5452390|MGI:3045383|MGI:5663119|MGI:3783123|MGI:5454105|MGI:5451883|MGI:5455595|MGI:5579221|MGI:2442120|MGI:3819504|MGI:5579344|MGI:1916683|MGI:5521023|MGI:5452973|MGI:3705486|MGI:3647395|MGI:3644053|MGI:3802109|MGI:3705771|MGI:5452486|MGI:3643358|MGI:1920547|MGI:3649160|MGI:3651142|MGI:3651515|MGI:3650866|MGI:5663501|MGI:1913597|MGI:1916707|MGI:5610234|MGI:3588209|MGI:3649322|MGI:3801776|MGI:2676278|MGI:5452620|MGI:5610263|MGI:3629672|MGI:3783019|MGI:3701985|MGI:4950390|MGI:3805548|MGI:5530993|MGI:1921143|MGI:1925070|MGI:3650232|MGI:3643248|MGI:5611037|MGI:5454962|MGI:5453921|MGI:3801737|MGI:5611092|MGI:3780557|MGI:3705102|MGI:3802105|MGI:3616076|MGI:1922602|MGI:5531109|MGI:5453008|MGI:1339711|MGI:5578777|MGI:5433906|MGI:1918493|MGI:3701981|MGI:3643955|MGI:3618751|MGI:1914798|MGI:2686247|MGI:3649869|MGI:3037818|MGI:5531039|MGI:3651452|MGI:5455804|MGI:3650811|MGI:5454001|MGI:3649715|MGI:1922618|MGI:3645403|MGI:3651566|MGI:1349183|MGI:94896|MGI:3837218|MGI:5454314|MGI:5610587|MGI:1925891|MGI:1922593|MGI:3651430|MGI:1923906|MGI:107247|MGI:3652138|MGI:5452155|MGI:3652224|MGI:3651698|MGI:2685201|MGI:4937142|MGI:4937915|MGI:1889073|MGI:5530924|MGI:5477165|MGI:1342279|MGI:5610440|MGI:5477178|MGI:3643169|MGI:2676833|MGI:3643681|MGI:1920878|MGI:5580301|MGI:5455608|MGI:5011520|MGI:5580031|MGI:3650929|MGI:2441689|MGI:3650640|MGI:5611239|MGI:1922619|MGI:5579905|MGI:3650880|MGI:1916389|MGI:5010137|MGI:3779636|MGI:3584519|MGI:892021|MGI:3649496|MGI:2686146|MGI:2140804|MGI:1201688|MGI:102791|MGI:108020|MGI:3650909|MGI:3647442|MGI:5593153|MGI:1921304|MGI:5610389|MGI:5663866|MGI:5611365|MGI:1922806|MGI:5663699|MGI:5453290|MGI:3649678|MGI:2151053|MGI:3704240|MGI:5454722|MGI:3528181|MGI:3648115|MGI:4414982|MGI:3643003|MGI:3651918|MGI:3648758|MGI:3648443|MGI:3650585|MGI:3619443|MGI:2155445|MGI:3646320|MGI:3780953|MGI:96561|MGI:108482|MGI:3649465|MGI:3648477|MGI:3782020|MGI:3629678|MGI:5610611|MGI:3705658|MGI:3802084|MGI:5452617|MGI:3646976|MGI:3642444|MGI:3645364|MGI:1917064|MGI:1913572|MGI:3647567|MGI:3779827|MGI:4358947|MGI:2442838|MGI:3781646|MGI:4937205|MGI:3705158|MGI:5610826|MGI:5662976|MGI:5530987|MGI:5454059|MGI:3649806|MGI:3580240|MGI:3582959|MGI:5610446|MGI:5452867|MGI:1916384|MGI:3649568|MGI:2685852|MGI:3650596|MGI:1919144|MGI:5578869|MGI:5663110|MGI:5588930|MGI:1918422|MGI:3651717|MGI:1349391|MGI:2429943|MGI:5452431|MGI:5593298|MGI:5623002|MGI:5454726|MGI:5662740|MGI:5454700|MGI:3705402|MGI:5663864|MGI:107366|MGI:3718556|MGI:5610870|MGI:1919566|MGI:5578888|MGI:3801800|MGI:107443|MGI:5663156|MGI:1931471|MGI:98898|MGI:1891125|MGI:5531231|MGI:5454966|MGI:5530918|MGI:1915623|MGI:2681414|MGI:5690848|MGI:1923137|MGI:2679716|MGI:2676793|MGI:3651243|MGI:4937984|MGI:5477322|MGI:2676868|MGI:5010168|MGI:3782981|MGI:1321403|MGI:3645235|MGI:101847|MGI:5451990|MGI:5611574|MGI:5011270|MGI:5452054|MGI:3705291|MGI:5452025|MGI:1925975|MGI:3809877|MGI:1196275|MGI:1923342|MGI:5504040|MGI:5455259|MGI:3644198|MGI:1861231|MGI:5455412|MGI:5663659|MGI:5454217|MGI:2685413|MGI:3650371|MGI:3652239|MGI:1922644|MGI:3615375|MGI:3027917|MGI:3651122|MGI:3642065|MGI:5663603|MGI:5477343|MGI:5530950|MGI:3030824|MGI:5610387|MGI:5451835|MGI:5610698|MGI:5455321|MGI:3646648|MGI:5434458|MGI:5610725|MGI:96701|MGI:5452642|MGI:3779169|MGI:5454373|MGI:1933847|MGI:5011751|MGI:5663080|MGI:2145969|MGI:3648967|MGI:1920881|MGI:1922133|MGI:3619394|MGI:104972|MGI:4421878|MGI:2146536|MGI:5662655|MGI:3648452|MGI:3643623|MGI:1347246|MGI:1922495|MGI:3782969|MGI:5453344|MGI:3644695|MGI:5477159|MGI:3622649|MGI:5477145|MGI:5610754|MGI:5663857|MGI:3780904|MGI:5662908|MGI:5456062|MGI:5456188|MGI:5662616|MGI:2386403|MGI:3783373|MGI:3802110|MGI:5580001|MGI:108034|MGI:1924895|MGI:5531068|MGI:97374|MGI:1920357|MGI:5455187|MGI:5663388|MGI:5453838|MGI:5594226|MGI:5662914|MGI:3704211|MGI:1923146|MGI:1097157|MGI:1918312|MGI:1922525|MGI:3781446|MGI:1925396|MGI:3782209|MGI:4421925|MGI:5454017|MGI:3650998|MGI:4950420|MGI:3649494|MGI:1270851|MGI:2139444|MGI:3708755|MGI:5611179|MGI:3650777|MGI:4834303|MGI:3802013|MGI:3783164|MGI:96837|MGI:87878|MGI:3642120|MGI:5611240|MGI:3783074|MGI:97986|MGI:2668412|MGI:1195976|MGI:5690801|MGI:3649274|MGI:3647646|MGI:5456137|MGI:3619424|MGI:3649427|MGI:5531016|MGI:1918174|MGI:5453988|MGI:3651859|MGI:1921122|MGI:3783198|MGI:5610368|MGI:5531201|MGI:105086|MGI:3707338|MGI:4821257|MGI:5477372|MGI:3705092|MGI:2674156|MGI:3588243|MGI:3030819|MGI:3819549|MGI:5579292|MGI:5562771|MGI:1925474|MGI:5610551|MGI:3644960|MGI:3643525|MGI:5663396|MGI:5452831|MGI:5590465|MGI:1924950|MGI:3645135|MGI:5012083|MGI:3782974|MGI:3651467|MGI:3651522|MGI:3705393|MGI:3619428|MGI:1095737|MGI:5455061|MGI:3647834|MGI:3783176|MGI:3045260|MGI:3649088|MGI:5589772|MGI:1920813|MGI:3642975|MGI:5531182|MGI:5663844|MGI:1924651|MGI:3650633|MGI:3707454|MGI:3705254|MGI:106912|MGI:5531393|MGI:3651366|MGI:1923034|MGI:3608341|MGI:5454820|MGI:3649375|MGI:1859621|MGI:5452212|MGI:5477353|MGI:1916397|MGI:3646377|MGI:5663453|MGI:5454769|MGI:96975|MGI:3783177|MGI:1921911|MGI:2445162|MGI:109441|MGI:1917213|MGI:3801750|MGI:5662579|MGI:5663534|MGI:5611088|MGI:3646016|MGI:3651968|MGI:5453462|MGI:3645602|MGI:5530645|MGI:2686470|MGI:102524|MGI:3705535|MGI:3651711|MGI:1922633|MGI:3645035|MGI:4834307|MGI:5453415|MGI:3619391|MGI:3651157|MGI:5663332|MGI:3641931|MGI:4937875|MGI:3643580|MGI:3783024|MGI:3801756|MGI:3801744|MGI:3646222|MGI:5611415|MGI:3647802|MGI:1923933|MGI:3642056|MGI:3646642|MGI:3642794|MGI:5531305|MGI:1914833|MGI:5531362|MGI:5611368|MGI:2441690|MGI:3664583|MGI:5610634|MGI:5477132|MGI:3643792|MGI:3705732|MGI:103189|MGI:2444058|MGI:5579513|MGI:2442445|MGI:5579697|MGI:3780383|MGI:1923253|MGI:3708660|MGI:5453671|MGI:3651520|MGI:5455650|MGI:1274790|MGI:107692|MGI:1888504|MGI:3704468|MGI:5531125|MGI:3782652|MGI:5011688|MGI:1196627|MGI:1923332|MGI:3030559|MGI:1922706|MGI:3645435|MGI:5594743|MGI:3041214|MGI:3710628|MGI:5663420|MGI:3650094|MGI:5610817|MGI:5454201|MGI:1915109|MGI:3651218|MGI:95622|MGI:5453277|MGI:5579830|MGI:5580266|MGI:5610168|MGI:2442999|MGI:3651180|MGI:5451914|MGI:5477181|MGI:3645259|MGI:3031347|MGI:2448469|MGI:1921933|MGI:96495|MGI:3701958|MGI:5610868|MGI:3649554|MGI:5454098|MGI:1929209|MGI:3649345|MGI:5453659|MGI:98824|MGI:1309991|MGI:5579789|MGI:88232|MGI:5477369|MGI:5456115|MGI:95590|MGI:3650646|MGI:2444788|MGI:4936905|MGI:4360871|MGI:2685053|MGI:3651547|MGI:3781456|MGI:3651470|MGI:3783021|MGI:5454035|MGI:5453780|MGI:1920792|MGI:5623075|MGI:2182079|MGI:5454637|MGI:3630383|MGI:1312922|MGI:2136745|MGI:96963|MGI:5662673|MGI:109265|MGI:5663817|MGI:3645369|MGI:5610433|MGI:5454198|MGI:3651580|MGI:1922721|MGI:1917529|MGI:4834252|MGI:88343|MGI:88157|MGI:3780149|MGI:5454155|MGI:5662959|MGI:97977|MGI:3645932|MGI:4421871|MGI:5455996|MGI:5456192|MGI:5452433|MGI:5454404|MGI:109269|MGI:2388708|MGI:1920594|MGI:3652123|MGI:2443717|MGI:3650597|MGI:3826592|MGI:3045307|MGI:3652293|MGI:1921124|MGI:3641838|MGI:3649800|MGI:1861586|MGI:2685355|MGI:1917250|MGI:3651485|MGI:97619|MGI:4950427|MGI:1202403|MGI:5452300|MGI:3836976|MGI:5477193|MGI:5010521|MGI:4950384|MGI:3652087|MGI:1099055|MGI:3779614|MGI:5452056|MGI:3643355|MGI:5579857|MGI:3650191|MGI:5579484|MGI:5530807|MGI:3644948|MGI:5454736|MGI:3649224|MGI:5452719|MGI:3651929|MGI:3781082|MGI:5579742|MGI:2137431|MGI:1924193|MGI:3702407|MGI:2177284|MGI:5610783|MGI:3649649|MGI:2676830|MGI:3645161|MGI:1915759|MGI:4937878|MGI:3650087|MGI:5455114|MGI:3802096|MGI:5454803|MGI:5562772|MGI:1913962|MGI:5456093|MGI:5531335|MGI:5456161|MGI:3041209|MGI:5141980|MGI:5439438|MGI:2441857|MGI:5531214|MGI:1919246|MGI:5611041|MGI:1924178|MGI:5521005|MGI:3647985|MGI:2441734|MGI:3647375|MGI:5453252|MGI:5452674|MGI:95607|MGI:3651178|MGI:5454213|MGI:5455489|MGI:1921952|MGI:5141871|MGI:96941|MGI:1349470|MGI:3642786|MGI:2685471|MGI:3057273|MGI:5477253|MGI:2142491|MGI:3836967|MGI:3651719|MGI:5662941|MGI:3647029|MGI:3650315|MGI:5610246|MGI:5610984|MGI:3040968|MGI:3779224|MGI:5611091|MGI:3801837|MGI:3651674|MGI:3650941|MGI:5455571|MGI:5610197|MGI:2157900|MGI:5455418|MGI:3646305|MGI:2686532|MGI:2384781|MGI:3650784|MGI:102567|MGI:3651241|MGI:3652004|MGI:2685119|MGI:1922831|MGI:2145650|MGI:1921731|MGI:3651548|MGI:1914010|MGI:5580267|MGI:3649024|MGI:5663114|MGI:2683040|MGI:3612406|MGI:1919381|MGI:2449817|MGI:1922320|MGI:5610158|MGI:3651047|MGI:1914033|MGI:4414995|MGI:5610777|MGI:2687319|MGI:3651681|MGI:104616|MGI:5610409|MGI:5610452|MGI:5531237|MGI:1915412|MGI:1921227|MGI:5451982|MGI:5439432|MGI:3779890|MGI:1914016|MGI:3651624|MGI:5455790|MGI:3645721|MGI:3837213|MGI:5579029|MGI:3651933|MGI:3705317|MGI:5610450|MGI:1917613|MGI:3651275|MGI:1920598|MGI:1920773|MGI:104697|MGI:3044668|MGI:5663681|MGI:3649506|MGI:3704350|MGI:5451988|MGI:5454100|MGI:1923259|MGI:5580034|MGI:4936958|MGI:6096165|MGI:1329031|MGI:3652276|MGI:5663872|MGI:5451848|MGI:3648061|MGI:5456260|MGI:109253|MGI:5452891|MGI:5452052|MGI:2443841|MGI:3837211|MGI:2685622|MGI:3646694|MGI:3649815|MGI:3779618|MGI:3030123|MGI:5611260|MGI:1922165|MGI:3705298|MGI:1920530|MGI:5454766|MGI:5610697|MGI:97972|MGI:3644644|MGI:5530673|MGI:5452949|MGI:2142877|MGI:5477225|MGI:3644691|MGI:3030553|MGI:1922684|MGI:3704375|MGI:3580642|MGI:4421945|MGI:5663088|MGI:1917024|MGI:5455769|MGI:98640|MGI:5453569|MGI:5011289|MGI:5531090|MGI:3702167|MGI:3651244|MGI:5663109|MGI:1925085|MGI:96687|MGI:1924353|MGI:5663029|MGI:1921441|MGI:3641762|MGI:5454114|MGI:3648806|MGI:4422043|MGI:3650864|MGI:3651959|MGI:3646368|MGI:3781830|MGI:3782634|MGI:5454318|MGI:5452637|MGI:3629951|MGI:1921530|MGI:5446771|MGI:3652256|MGI:5610753|MGI:3652312|MGI:1920068|MGI:1921188|MGI:3649947|MGI:5611123|MGI:3650450|MGI:3651277|MGI:5453256|MGI:2136691|MGI:3649682|MGI:1930125|MGI:5610161|MGI:1917276|MGI:3651768|MGI:98785|MGI:5454142|MGI:3702049|MGI:5663848|MGI:5580101|MGI:3782023|MGI:3651010|MGI:3705181|MGI:5453942|MGI:1919633|MGI:4414989|MGI:3650641|MGI:1922314|MGI:5455157|MGI:1859325|MGI:5455580|MGI:102966|MGI:5455318|MGI:3705098|MGI:3644831|MGI:2384077|MGI:3652178|MGI:5477152|MGI:5453808|MGI:3650080|MGI:3650602|MGI:3643011|MGI:5531416|MGI:3646937|MGI:3045213|MGI:5663157|MGI:5610254|MGI:3650166|MGI:3527454|MGI:5610300|MGI:5662726|MGI:1923070|MGI:5580041|MGI:5477050|MGI:3651891|MGI:5452393|MGI:5662575|MGI:5454156|MGI:1915951|MGI:3030867|MGI:105374|MGI:3801733|MGI:3651669|MGI:3652110|MGI:3651216|MGI:3650972|MGI:4834254|MGI:1921465|MGI:3650346|MGI:2442722|MGI:87966|MGI:3651158|MGI:5580054|MGI:3652210|MGI:1915618|MGI:3649463|MGI:5595547|MGI:1921812|MGI:5451913|MGI:3648918|MGI:5610363|MGI:1928858|MGI:3642402|MGI:5663789|MGI:4439655|MGI:5663139|MGI:5010155|MGI:3644763|MGI:3652193|MGI:5579839|MGI:3783363|MGI:2153249|MGI:5610342|MGI:1919681|MGI:5611158|MGI:5452710|MGI:5621296|MGI:1915493|MGI:5663105|MGI:5610173|MGI:1334419|MGI:1914681|MGI:3651949|MGI:3651807|MGI:2685108|MGI:2156389|MGI:5611546|MGI:3649248|MGI:5610312|MGI:3801758|MGI:5663132|MGI:1923639|MGI:2385197|MGI:3524930|MGI:1922639|MGI:3801751|MGI:3801840|MGI:5596047|MGI:3651964|MGI:5452223|MGI:3648581|MGI:1914995|MGI:3645954|MGI:4937953|MGI:3650486|MGI:3650634|MGI:5453611|MGI:5141921|MGI:5663279|MGI:1922521|MGI:3702047|MGI:1914589|MGI:3045359|MGI:95420|MGI:5454426|MGI:1861438|MGI:5611120|MGI:3649239|MGI:96544|MGI:2442421|MGI:5579831|MGI:3643001|MGI:2685861|MGI:3650088|MGI:5611175|MGI:2159660|MGI:3650746|MGI:2150150|MGI:2685460|MGI:3611575|MGI:3643649|MGI:1921426|MGI:1346343|MGI:3783078|MGI:5663875|MGI:3041255|MGI:3826536|MGI:2450548|MGI:3651102|MGI:5663683|MGI:3645001|MGI:3780384|MGI:4938040|MGI:104965|MGI:3646277|MGI:3705388|MGI:5452960|MGI:4938061|MGI:3705489|MGI:5595710|MGI:1924718|MGI:3650123|MGI:3780254|MGI:2148639|MGI:2140770|MGI:2676883|MGI:3619407|MGI:5452112|MGI:3605624|MGI:5455845|MGI:5477297|MGI:3801797|MGI:5454384|MGI:5452009|MGI:5663381|MGI:3641747|MGI:3649326|MGI:5453336|MGI:2151103|MGI:1921637|MGI:3648528|MGI:5610424|MGI:5455106|MGI:5520994|MGI:2676842|MGI:1346317|MGI:1919553|MGI:1918287|MGI:3651156|MGI:103209|MGI:3650120|MGI:1861377|MGI:106025|MGI:5451820|MGI:5477285|MGI:2676909|MGI:96573|MGI:4421879|MGI:97950|MGI:5663147|MGI:3031251|MGI:2442094|MGI:5452510|MGI:3826534|MGI:3802156|MGI:5456197|MGI:96565|MGI:3641909|MGI:3801786|MGI:1928953|MGI:1920946|MGI:3782304|MGI:1924868|MGI:3650263|MGI:5610799|MGI:3698881|MGI:1920897|MGI:3641832|MGI:3779382|MGI:5663760|MGI:5595728|MGI:5452658|MGI:3619429|MGI:5452467|MGI:5455695|MGI:3618736|MGI:5663888|MGI:4422066|MGI:5453375|MGI:5662562|MGI:3651542|MGI:5690746|MGI:3649923|MGI:3651642|MGI:1298372|MGI:2182835|MGI:5456085|MGI:3781221|MGI:3652028|MGI:1923367|MGI:3649639|MGI:3646905|MGI:1914241|MGI:2384805|MGI:5455335|MGI:5530716|MGI:5663882|MGI:3705440|MGI:3031344|MGI:5452506|MGI:5454960|MGI:894671|MGI:3644422|MGI:5451838|MGI:3705647|MGI:5455178|MGI:5453728|MGI:5611039|MGI:2679229|MGI:3652201|MGI:3840137|MGI:5611228|MGI:3036233|MGI:2444377|MGI:2685213|MGI:3708095|MGI:3650813|MGI:3642400|MGI:3649504|MGI:3646383|MGI:5589439|MGI:104618|MGI:3836970|MGI:2685722|MGI:3618290|MGI:5662607|MGI:4421892|MGI:5610398|MGI:1923086|MGI:3037691|MGI:5455204|MGI:3650627|MGI:3705201|MGI:88390|MGI:5454058|MGI:3705096|MGI:5611294|MGI:3650707|MGI:3030466|MGI:3649767|MGI:3782979|MGI:3649057|MGI:2148527|MGI:4421936|MGI:3801887|MGI:5454622|MGI:5621297|MGI:3648527|MGI:1918873|MGI:3650598|MGI:3643383|MGI:1925506|MGI:5477040|MGI:5611205|MGI:3646641|MGI:3604110|MGI:5610458|MGI:5453786|MGI:3649537|MGI:5530963|MGI:2159680|MGI:5580344|MGI:3644864|MGI:1913686|MGI:3801963|MGI:3613388|MGI:3649960|MGI:4938041|MGI:3642916|MGI:96539|MGI:3576049|MGI:3588210|MGI:3651645|MGI:1914793|MGI:3801973|MGI:3704483|MGI:3584453|MGI:1922620|MGI:5313129|MGI:3649548|MGI:102523|MGI:1922687|MGI:3646467|MGI:1926003|MGI:3649645|MGI:3651626|MGI:3780791|MGI:3643105|MGI:3650618|MGI:3782946|MGI:3650947|MGI:5010738|MGI:3782676|MGI:5477249|MGI:104579|MGI:1914846|MGI:3698880|MGI:1922348|MGI:1923142|MGI:5531367|MGI:5455842|MGI:1923054|MGI:1933846|MGI:3802050|MGI:1918571|MGI:2672976|MGI:2685789|MGI:1921406|MGI:1917107|MGI:2384767|MGI:88608|MGI:3629658|MGI:5439444|MGI:4950411|MGI:3649328|MGI:4937036|MGI:3650996|MGI:3648114|MGI:5590565|MGI:5477149|MGI:3643084|MGI:3643373|MGI:3705307|MGI:3826521|MGI:3643799|MGI:5452717|MGI:2676908|MGI:2445366|MGI:88591|MGI:2682312|MGI:1916319|MGI:5452839|MGI:5611374|MGI:5455368|MGI:1919897|MGI:5531147|MGI:3779591|MGI:3651045|MGI:2450532|MGI:3041224|MGI:5663490|MGI:2676610|MGI:4439650|MGI:3836973|MGI:2152336|MGI:5504122|MGI:2676902|MGI:3802131|MGI:2441687|MGI:5663393|MGI:5662763|MGI:5454148|MGI:3650297|MGI:1923059|MGI:5477329|MGI:5452667|MGI:1924313|MGI:3650665|MGI:3705421|MGI:5611541|MGI:88327|MGI:4359686|MGI:1202398|MGI:5595466|MGI:2385955|MGI:5690732|MGI:5662619|MGI:96945|MGI:5455356|MGI:1921434|MGI:5531034|MGI:5454124|MGI:3649826|MGI:5477368|MGI:1916967|MGI:2148258|MGI:4937054|MGI:3652020|MGI:3648310|MGI:1203519|MGI:3647277|MGI:3646230|MGI:109165|MGI:5579322|MGI:3651578|MGI:1918244|MGI:1917788|MGI:3711328|MGI:3649785|MGI:1920727|MGI:1918251|MGI:5531195|MGI:3648212|MGI:5610411|MGI:3704352|MGI:5454617|MGI:3649241|MGI:5452681|MGI:1914904|MGI:3034723|MGI:5452355|MGI:4414983|MGI:3650983|MGI:3646420|MGI:3650737|MGI:3641657|MGI:3650439|MGI:5593303|MGI:5610821|MGI:5578872|MGI:3801788|MGI:96428|MGI:3650503|MGI:5530909|MGI:5453434|MGI:3705234|MGI:1918346|MGI:3648644|MGI:2681302|MGI:3650794|MGI:3781805|MGI:3641941|MGI:5456105|MGI:105046|MGI:3510328|MGI:3779550|MGI:3650062|MGI:5580093|MGI:3650128|MGI:1916710|MGI:1330860|MGI:2136749|MGI:3649215|MGI:5610255|MGI:3705091|MGI:5579773|MGI:3644379|MGI:3779142|MGI:5663658|MGI:5453607|MGI:5611428|MGI:3780316|MGI:99255|MGI:2136748|MGI:3801723|MGI:1917426|MGI:5611257|MGI:1890540|MGI:3801880|MGI:5610483|MGI:1341292|MGI:1927653|MGI:2443398|MGI:5663045|MGI:5610794|MGI:97424|MGI:5455029|MGI:3761373|MGI:2676897|MGI:1920735|MGI:5454744|MGI:5610489|MGI:2686979|MGI:5504155|MGI:1925434|MGI:3705398|MGI:3651446|MGI:3721937|MGI:3796981|MGI:3649475|MGI:3648954|MGI:5454889|MGI:5477299|MGI:3643983|MGI:3801911|MGI:1925439|MGI:1202864|MGI:1918432|MGI:3649817|MGI:3779457|MGI:3698419|MGI:3650246|MGI:5477146|MGI:99842|MGI:5594025|MGI:1298370|MGI:4937175|MGI:5452432|MGI:2441697|MGI:3613394|MGI:1916584|MGI:2676836|MGI:3705206|MGI:3649459|MGI:5452492|MGI:3780128|MGI:3618734|MGI:3649782|MGI:3646718|MGI:1861446|MGI:5531164|MGI:5452074|MGI:3802100|MGI:5610691|MGI:3651937|MGI:3617848|MGI:3650609|MGI:5521054|MGI:3648530|MGI:5562782|MGI:3646563|MGI:3705552|MGI:894669|MGI:5663669|MGI:3783022|MGI:3584270|MGI:3643448|MGI:1922739|MGI:3651094|MGI:1919611|MGI:1925884|MGI:2442837|MGI:3647087|MGI:5663711|MGI:5610429|MGI:3034340|MGI:5452854|MGI:6096119|MGI:5690850|MGI:5662725|MGI:1918570|MGI:5662577|MGI:2685120|MGI:4834249|MGI:3651363|MGI:5611493|MGI:5530656|MGI:5579211|MGI:3801882|MGI:2138477|MGI:5611268|MGI:1922226|MGI:5453779|MGI:3705504|MGI:3783158|MGI:1916536|MGI:3802173|MGI:5454566|MGI:1333764|MGI:5454176|MGI:3801820|MGI:3651767|MGI:6096137|MGI:3642693|MGI:5477156|MGI:1918238|MGI:3650319|MGI:3649444|MGI:5663744|MGI:5580187|MGI:5611446|MGI:1919113|MGI:5610654|MGI:5611384|MGI:3705713|MGI:3645809|MGI:1890518|MGI:5530663|MGI:1918293|MGI:3780888|MGI:5531225|MGI:4938055|MGI:5455924|MGI:3718565|MGI:5592209|MGI:5477170|MGI:3641976|MGI:98257|MGI:3649535|MGI:3650802|MGI:5663271|MGI:3629955|MGI:5454234|MGI:5580165|MGI:3781920|MGI:4821256|MGI:1922177|MGI:5530850|MGI:3837018|MGI:5610165|MGI:3708101|MGI:3650020|MGI:5531215|MGI:5454716|MGI:96543|MGI:5454107|MGI:5455917|MGI:3783031|MGI:5451866|MGI:3643813|MGI:2685182|MGI:3644601|MGI:3641824|MGI:3644957|MGI:3801773|MGI:103029|MGI:5530755|MGI:97443|MGI:3718547|MGI:5453511|MGI:5663282|MGI:3644989|MGI:5663706|MGI:3649600|MGI:1917037|MGI:3651140|MGI:2183449|MGI:5454036|MGI:5580316|MGI:3718513|MGI:5453330|MGI:5455921|MGI:3641971|MGI:5611535|MGI:96541|MGI:5521087|MGI:3041173|MGI:4421755|MGI:3700744|MGI:5456136|MGI:3645765|MGI:3649217|MGI:3643134|MGI:5663392|MGI:5451852|MGI:5531153|MGI:3647974|MGI:3837036|MGI:1925848|MGI:3649303|MGI:2678390|MGI:1924667|MGI:5313140|MGI:3651287|MGI:1859324|MGI:5610162|MGI:5477236|MGI:3614952|MGI:5452440|MGI:5663154|MGI:3802080|MGI:1922758|MGI:3644183|MGI:1922694|MGI:5610478|MGI:3705289|MGI:5141955|MGI:3651096|MGI:3650182|MGI:105045|MGI:5454080|MGI:5453394|MGI:3644181|MGI:4937963|MGI:3650905|MGI:3783207|MGI:3697434|MGI:5579818|MGI:1891725|MGI:3645508|MGI:3642770|MGI:3651032|MGI:3652222|MGI:4937968|MGI:1196464|MGI:3768537|MGI:1915619|MGI:5451840|MGI:5623233|MGI:5530955|MGI:5455703|MGI:1915942|MGI:3708538|MGI:5663676|MGI:96550|MGI:1298371|MGI:5455682|MGI:5611283|MGI:3650943|MGI:1919495|MGI:1922578|MGI:2442298|MGI:1195273|MGI:5611111|MGI:1933533|MGI:3801886|MGI:3650265|MGI:3826580|MGI:3644000|MGI:5454940|MGI:5477192|MGI:108018|MGI:5579316|MGI:2447533|MGI:5453772|MGI:3645107|MGI:3647388|MGI:5477355|MGI:5530828|MGI:1917218|MGI:2685849|MGI:5580277|MGI:3649666|MGI:5452064|MGI:3779751|MGI:3783165|MGI:5610738|MGI:1927656|MGI:3652159|MGI:5611086|MGI:1916674|MGI:5452497|MGI:5455631|MGI:2136449|MGI:3629888|MGI:5663862|MGI:3649526|MGI:3783224|MGI:5593245|MGI:1925148|MGI:5690753|MGI:2140313|MGI:5663284|MGI:1196315|MGI:1930787|MGI:3649854|MGI:3648382|MGI:4439675|MGI:1925171|MGI:5453833|MGI:3826579|MGI:2685619|MGI:1917165|MGI:1918060|MGI:5010122|MGI:2687041|MGI:5579219|MGI:3650723|MGI:1915185|MGI:3619336|MGI:2685427|MGI:5611233|MGI:5504148|MGI:5434131|MGI:5452081|MGI:4421944|MGI:3704412|MGI:3651607|MGI:5453531|MGI:5579870|MGI:3705257|MGI:3045290|MGI:5009982|MGI:5454168|MGI:5455078|MGI:5455814|MGI:5454448|MGI:2677064|MGI:3642944|MGI:5592866|MGI:5610539|MGI:5531133|MGI:5610806|MGI:1925652|MGI:1916978|MGI:3648017|MGI:3699632|MGI:5562763|MGI:5588898|MGI:4834328|MGI:5663071|MGI:5579598|MGI:3642672|MGI:3783061|MGI:3802077|MGI:3642906|MGI:104526|MGI:2144233|MGI:3651307|MGI:88604|MGI:3649428|MGI:3652252|MGI:5592301|MGI:5562729|MGI:5579666|MGI:3705103|MGI:3648532|MGI:3705607|MGI:1100508|MGI:5663035|MGI:3652317|MGI:1918772|MGI:3779798|MGI:3781847|MGI:102518|MGI:3651516|MGI:3651410|MGI:3649258|MGI:5611090|MGI:5611259|MGI:5009832|MGI:3648147|MGI:5452449|MGI:5610561|MGI:5663528|MGI:2181366|MGI:3650065|MGI:3650778|MGI:3645130|MGI:3652233|MGI:1860266|MGI:5141941|MGI:3705877|MGI:5452426|MGI:1922439|MGI:2448357|MGI:3650220|MGI:5580235|MGI:5453582|MGI:6096185|MGI:3649689|MGI:5578983|MGI:5453594|MGI:3649989|MGI:3651411|MGI:3655979|MGI:5455688|MGI:1923016|MGI:3643198|MGI:5663378|MGI:4938016|MGI:3641689|MGI:1349479|MGI:5662942|MGI:5531211|MGI:1339710|MGI:5662621|MGI:1917958|MGI:5531312|MGI:3648769|MGI:3646782|MGI:5579805|MGI:3649879|MGI:3619450|MGI:99837|MGI:4422070|MGI:3644430|MGI:5663108|MGI:2136740|MGI:3588238|MGI:1917311|MGI:5456201|MGI:5455354|MGI:3705606|MGI:5477365|MGI:3646659|MGI:3645109|MGI:1924846|MGI:3852486|MGI:3629896|MGI:1922233|MGI:3643118|MGI:3619437|MGI:5453458|MGI:3651378|MGI:4439720|MGI:3619332|MGI:3649902|MGI:105492|MGI:3642361|MGI:1918259|MGI:3652237|MGI:3651286|MGI:1930020|MGI:3619432|MGI:5530677|MGI:3607717|MGI:3648134|MGI:5610903|MGI:1925332|MGI:3651951|MGI:1921852|MGI:3651779|MGI:2685399|MGI:5530784|MGI:102482|MGI:3650690|MGI:3691604|MGI:3649719|MGI:3712069|MGI:5531286|MGI:5611344|MGI:5009950|MGI:5610289|MGI:3644958|MGI:3649676|MGI:3645661|MGI:1197523|MGI:3650942|MGI:1922768|MGI:5579573|MGI:5579427|MGI:1916816|MGI:4937011|MGI:5663231|MGI:5453376|MGI:1922399|MGI:2180855|MGI:3782395|MGI:1923468|MGI:2686183|MGI:2448587|MGI:3705353|MGI:5010141|MGI:3802005|MGI:3782456|MGI:102537|MGI:3711326|MGI:5690743|MGI:3652310|MGI:3646519|MGI:97609|MGI:3652323|MGI:2155249|MGI:3629916|MGI:5610564|MGI:3647758|MGI:3705222|MGI:5454968|MGI:5663126|MGI:5663374|MGI:1915231|MGI:5313162|MGI:97766|MGI:3781207|MGI:3782102|MGI:3613364|MGI:3801793|MGI:3619331|MGI:3711327|MGI:1919082|MGI:3041166|MGI:5141967|MGI:4439044|MGI:5011014|MGI:3783222|MGI:3644742|MGI:5453788|MGI:5531097|MGI:3651942|MGI:5579409|MGI:1922221|MGI:2676649|MGI:3652139|MGI:5451791|MGI:3650462|MGI:2684870|MGI:3651065|MGI:5453508|MGI:3650878|MGI:105949|MGI:2443323|MGI:5477340|MGI:3649222|MGI:3783094|MGI:107538|MGI:3650684|MGI:5663240|MGI:5663295|MGI:5610733|MGI:5663905|MGI:5455090|MGI:5433925|MGI:3619066|MGI:5662724|MGI:3801757|MGI:3646280|MGI:5663130|MGI:3837215|MGI:3783208|MGI:4439857|MGI:5663210|MGI:3650270|MGI:2388707|MGI:5690692|MGI:5610896|MGI:1328322|MGI:5662572|MGI:3801763|MGI:1923981|MGI:5610526|MGI:3647478|MGI:3650726|MGI:5663601|MGI:5531123|MGI:1918304|MGI:2685641|MGI:2444087|MGI:3782950|MGI:1353426|MGI:1921430|MGI:4414988|MGI:5453787|MGI:5318559|MGI:3782847|MGI:4422024|MGI:3705644|MGI:5504094|MGI:1916719|MGI:3649726|MGI:1916392|MGI:1914773|MGI:5610443|MGI:3043522|MGI:3643569|MGI:3649477|MGI:88559|MGI:5611398|MGI:1918846|MGI:3705229|MGI:5663954|MGI:3648747|MGI:3708090|MGI:5611152|MGI:5504123|MGI:5580194|MGI:3644558|MGI:5578878|MGI:3650008|MGI:3651309|MGI:2685269|MGI:5610490|MGI:5455508|MGI:5453332|MGI:1925437|MGI:5453000|MGI:3648534|MGI:1918433|MGI:3649787|MGI:5455791|MGI:1921564|MGI:1913448|MGI:3783205|MGI:3649517|MGI:2444378|MGI:1925354|MGI:5453717|MGI:3650167|MGI:3783075|MGI:1922264|MGI:3649086|MGI:1928492|MGI:97445|MGI:5611290|MGI:3708093|MGI:5610776|MGI:5454413|MGI:2147968|MGI:88347|MGI:3801955|MGI:3646477|MGI:5610364|MGI:5453922|MGI:5454269|MGI:3652196|MGI:2444463|MGI:5690700|MGI:1914623|MGI:3780479|MGI:3643218|MGI:1926055|MGI:3651764|MGI:5611501|MGI:5455270|MGI:3644830|MGI:4950460|MGI:5521083|MGI:3781447|MGI:1921319|MGI:5611367|MGI:5452146|MGI:5611048|MGI:96246|MGI:3652153|MGI:1917315|MGI:3651697|MGI:2678025|MGI:3619321|MGI:3651374|MGI:1328308|MGI:5530781|MGI:5456008|MGI:1931502|MGI:5453666|MGI:3651628|MGI:2442179|MGI:5010154|MGI:3802061|MGI:3030526|MGI:1891061|MGI:5452664|MGI:1915524|MGI:2155700|MGI:5452819|MGI:5010918|MGI:107181|MGI:5610408|MGI:3782963|MGI:5663627|MGI:5663070|MGI:1920268|MGI:5610734|MGI:5611506|MGI:3770275|MGI:5611492|MGI:3643474|MGI:5610570|MGI:3782977|MGI:5477356|MGI:3045389|MGI:5610582|MGI:3801894|MGI:5453950|MGI:3708690|MGI:5690800|MGI:5141897|MGI:5477103|MGI:5012487|MGI:4937975|MGI:3783387|MGI:5453028|MGI:1913983|MGI:3705516|MGI:5455484|MGI:5012357|MGI:1922817|MGI:3801994|MGI:1923655|MGI:1321401|MGI:3647179|MGI:5580133|MGI:3649673|MGI:5010602|MGI:1917808|MGI:1341787|MGI:5452724|MGI:4936971|MGI:3650195|MGI:1924242|MGI:3705292|MGI:3649899|MGI:1920587|MGI:2443520|MGI:3646660|MGI:3045340|MGI:2444677|MGI:2442806|MGI:106813|MGI:88339|MGI:3801831|MGI:96557|MGI:1860140|MGI:5611238|MGI:5623499|MGI:2442864|MGI:1925500|MGI:2179296|MGI:2136446|MGI:1925866|MGI:5452165|MGI:3783386|MGI:5595694|MGI:1919080|MGI:5610447|MGI:1929259|MGI:3802108|MGI:1915564|MGI:3643463|MGI:3651370|MGI:5453600|MGI:3649586|MGI:5455605|MGI:3647768|MGI:5455639|MGI:4834248|MGI:5662745|MGI:105090|MGI:3619374|MGI:3612244|MGI:5455283|MGI:3045315|MGI:3650825|MGI:3641738|MGI:3650453|MGI:1922001|MGI:3619386|MGI:2664636|MGI:3648994|MGI:3781961|MGI:5452543|MGI:3641811|MGI:3030297|MGI:3646018|MGI:3801718|MGI:5663356|MGI:3650117|MGI:5530905|MGI:1922055|MGI:3647096|MGI:2681210|MGI:3651059|MGI:1925409|MGI:3650044|MGI:3652230|MGI:3651131|MGI:3705599|MGI:1920970|MGI:2685313|MGI:3650637|MGI:1340026|MGI:3705775|MGI:5593886|MGI:1925821|MGI:3783221|MGI:4937932|MGI:5662820|MGI:5452276|MGI:1915498|MGI:5453018|MGI:96885|MGI:3826549|MGI:3649651|MGI:3649156|MGI:2685172|MGI:3612701|MGI:3648119|MGI:1917114|MGI:1934960|MGI:5452933|MGI:4937883|MGI:3648067|MGI:5530787|MGI:5663887|MGI:3030392|MGI:3030889|MGI:104879|MGI:2682321|MGI:3642860|MGI:1922571|MGI:4936938|MGI:3650976|MGI:1351899|MGI:5012274|MGI:5593335|MGI:109517|MGI:2143891|MGI:3649263|MGI:3649716|MGI:5453689|MGI:1919006|MGI:5611586|MGI:3801859|MGI:2682948|MGI:1914766|MGI:5453030|MGI:1924608|MGI:5009828|MGI:3707455|MGI:1344417|MGI:3619323|MGI:1330350|MGI:3039605|MGI:3646219|MGI:3651700|MGI:2685289|MGI:2685410|MGI:5451895|MGI:3648913|MGI:3644057|MGI:1925099|MGI:3802076|MGI:1339999|MGI:1925859|MGI:2672983|MGI:5010528|MGI:3649271|MGI:1923853|MGI:5611192|MGI:5610889|MGI:2685450|MGI:1923908|MGI:3782982|MGI:3646469|MGI:3646549|MGI:5611438|MGI:5611392|MGI:1932027|MGI:3783053|MGI:3801866|MGI:5611439|MGI:5530711|MGI:3650093|MGI:3648804|MGI:5452567|MGI:3651368|MGI:3644701|MGI:5452419|MGI:4834253|MGI:3702430|MGI:1921273|MGI:3649620|MGI:5663397|MGI:88514|MGI:3613655|MGI:5455699|MGI:4439757|MGI:5011612|MGI:4439523|MGI:5531247|MGI:2685049|MGI:3643043|MGI:4937940|MGI:5690847|MGI:5663470|MGI:1923364|MGI:3649784|MGI:3705315|MGI:1922819|MGI:3648520|MGI:5451845|MGI:2444858|MGI:2180849|MGI:2139494|MGI:5477078|MGI:5531242|MGI:2444617|MGI:3644639|MGI:5595797|MGI:96537|MGI:3647116|MGI:5452335|MGI:5663018|MGI:2444190|MGI:97551|MGI:1918907|MGI:3782000|MGI:3649629|MGI:3030290|MGI:3582777|MGI:5580053|MGI:1922414|MGI:1920830|MGI:3705241|MGI:5610252|MGI:2177477|MGI:5611490|MGI:3802130|MGI:3651371|MGI:103164|MGI:1347247|MGI:3644590|MGI:3705628|MGI:1924020|MGI:1925372|MGI:5531386|MGI:3618739|MGI:3648170|MGI:3650934|MGI:3649147|MGI:3705887|MGI:103572|MGI:3588223|MGI:5456217|MGI:94927|MGI:5452876|MGI:3650210|MGI:1915481|MGI:2685897|MGI:5456256|MGI:5531187|MGI:5663642|MGI:3686876|MGI:3651513|MGI:5454180|MGI:3801939|MGI:5012310|MGI:5530821|MGI:3645616|MGI:3643223|MGI:2685292|MGI:2685260|MGI:5611389|MGI:1925096|MGI:5452129|MGI:5611281|MGI:5454042|MGI:1925450|MGI:1923022|MGI:3650288|MGI:3650890|MGI:3619045|MGI:4937129|MGI:5662751|MGI:5611580|MGI:5455156|MGI:5477140|MGI:5455560|MGI:5663286|MGI:3648713|MGI:1923633|MGI:3781190|MGI:1914895|MGI:3045237|MGI:5011530|MGI:3642676|MGI:3645498|MGI:5662757|MGI:2685352|MGI:4422056|MGI:95633|MGI:5439420|MGI:105983|MGI:1915666|MGI:3761695|MGI:95959|MGI:3710532|MGI:3645381|MGI:3609260|MGI:1916843|MGI:2429764|MGI:5610325|MGI:3617853|MGI:3704234|MGI:1920722|MGI:5452737|MGI:5451795|MGI:107171|MGI:4421877|MGI:5454369|MGI:3645533|MGI:102484|MGI:5579951|MGI:5663075|MGI:1351649|MGI:5663246|MGI:1918228|MGI:5451782|MGI:5621298|MGI:1922719|MGI:2686473|MGI:3646964|MGI:3708116|MGI:3783237|MGI:3651189|MGI:3650225|MGI:1920484|MGI:5611463|MGI:5580145|MGI:5610329|MGI:1927449|MGI:2684890|MGI:3779185|MGI:3649450|MGI:2686227|MGI:5531189|MGI:98919|MGI:5453885|MGI:3651300|MGI:5454656|MGI:3801942|MGI:3643998|MGI:3031183|MGI:102928|MGI:1918484|MGI:95863|MGI:5434050|MGI:3646892|MGI:88236|MGI:5434255|MGI:3648078|MGI:3644438|MGI:5663655|MGI:87931|MGI:3651442|MGI:5590485|MGI:5579701|MGI:3650290|MGI:2676804|MGI:5662916|MGI:5454184|MGI:3646735|MGI:5662934|MGI:1924423|MGI:3650497|MGI:3605803|MGI:3781420|MGI:1920399|MGI:5455455|MGI:3651875|MGI:5663738|MGI:3652166|MGI:5662742|MGI:4950428|MGI:5531001|MGI:3648260|MGI:5663524|MGI:5313095|MGI:3651496|MGI:5530740|MGI:5579949|MGI:3646861|MGI:1916299|MGI:5454954|MGI:5611360|MGI:2177473|MGI:3643433|MGI:3618737|MGI:3705174|MGI:4887419|MGI:3801826|MGI:5579869|MGI:5454029|MGI:3782503|MGI:101773|MGI:2686525|MGI:3649941|MGI:3619421|MGI:96241|MGI:5453469|MGI:2685815|MGI:5454206|MGI:3650884|MGI:5010540|MGI:1925262|MGI:3647976|MGI:5454893|MGI:3651078|MGI:5663002|MGI:2443135|MGI:3650177|MGI:5530751|MGI:1918087|MGI:2183535|MGI:3644227|MGI:2182926|MGI:3641996|MGI:1921936|MGI:2684079|MGI:5610638|MGI:3708102|MGI:3651421|MGI:5621447|MGI:4938045|MGI:3651299|MGI:3645282|MGI:3646806|MGI:1914570|MGI:5547775|MGI:5610635|MGI:98427|MGI:5610444|MGI:3650719|MGI:3650441|MGI:3704311|MGI:5452077|MGI:1925432|MGI:2685865|MGI:5611286|MGI:5452172|MGI:3648439|MGI:5455146|MGI:5579392|MGI:3652281|MGI:3702417|MGI:5453249|MGI:1925709|MGI:3642511|MGI:3647903|MGI:5454930|MGI:5530739|MGI:3651445|MGI:5610592|MGI:4936942|MGI:3045358|MGI:5453287|MGI:5530804|MGI:3705293|MGI:3651099|MGI:1916104|MGI:3643636|MGI:3642344|MGI:5313122|MGI:2136282|MGI:5580052|MGI:3708720|MGI:3651365|MGI:3779933|MGI:1925448|MGI:3704298|MGI:3705605|MGI:5663438|MGI:5610877|MGI:1919269|MGI:5611326|MGI:3642503|MGI:88445|MGI:1194903|MGI:3650284|MGI:106586|MGI:5455189|MGI:5141860|MGI:3705463|MGI:3644126|MGI:3705328|MGI:2684908|MGI:5531093|MGI:5663963|MGI:1890474|MGI:5610264|MGI:3705589|MGI:3801760|MGI:1931024|MGI:3042847|MGI:5453123|MGI:5530702|MGI:1350981|MGI:4937873|MGI:1924369|MGI:4421948|MGI:3649365|MGI:1922776|MGI:3705541|MGI:2443098|MGI:2183450|MGI:3801721|MGI:3528583|MGI:5610439|MGI:3642767|MGI:1923000|MGI:3625331|MGI:3650954|MGI:3645691|MGI:3651924|MGI:1918897|MGI:5530759|MGI:1100496|MGI:3642045|MGI:5663383|MGI:5452309|MGI:1922114|MGI:5011333|MGI:3035348|MGI:1921851|MGI:5611303|MGI:1919354|MGI:3646097|MGI:5455295|MGI:5610388|MGI:5611488|MGI:5141881|MGI:1921684|MGI:108054|MGI:3650058|MGI:5477270|MGI:3802010|MGI:5455483|MGI:3705714|MGI:1916138|MGI:4937895|MGI:3782940|MGI:3030258|MGI:99512|MGI:5663855|MGI:3642442|MGI:1921105|MGI:3651257|MGI:1920340|MGI:3650828|MGI:5452059|MGI:2176207|MGI:3650300|MGI:88596|MGI:1917011|MGI:5611469|MGI:3045242|MGI:4937901|MGI:5010367|MGI:5451961|MGI:3030255|MGI:5579578|MGI:5477306|MGI:5451816|MGI:98943|MGI:5610923|MGI:4834318|MGI:5611162|MGI:5455857|MGI:3649269|MGI:5610883|MGI:5579025|MGI:1917134|MGI:5456149|MGI:4820558|MGI:3649561|MGI:6096151|MGI:3779867|MGI:5610203|MGI:6096129|MGI:5610619|MGI:5610875|MGI:5579893|MGI:5456042|MGI:3704387|MGI:1921178|MGI:3781439|MGI:5451831|MGI:5010636|MGI:5622925|MGI:5455899|MGI:102701|MGI:2686543|MGI:3645212|MGI:5610816|MGI:5531091|MGI:5592155|MGI:3645694|MGI:1917253|MGI:3704203|MGI:4421935|MGI:3028921|MGI:2385878|MGI:3651382|MGI:3643775|MGI:3783200|MGI:3642357|MGI:3783125|MGI:5663951|MGI:5454748|MGI:3639287|MGI:96621|MGI:5610797|MGI:5454493|MGI:5452944|MGI:5611237|MGI:5141930|MGI:3643104|MGI:3034641|MGI:3650523|MGI:3652257|MGI:1920662|MGI:1922717|MGI:2444685|MGI:3782955|MGI:3645594|MGI:1923820|MGI:3650911|MGI:5663621|MGI:88233|MGI:109267|MGI:3605623|MGI:3837216|MGI:5530732|MGI:5579452|MGI:2142121|MGI:3649751|MGI:5589460|MGI:5610175|MGI:3642901|MGI:1270150|MGI:5010062|MGI:3650269|MGI:3646407|MGI:3630173|MGI:109518|MGI:2443628|MGI:1923027|MGI:5455338|MGI:3650833|MGI:1932036|MGI:1922218|MGI:5453127|MGI:3651359|MGI:3040680|MGI:3651455|MGI:3651544|MGI:88598|MGI:3650426|MGI:1921612|MGI:3642261|MGI:5453861|MGI:5530801|MGI:3641869|MGI:5504093|MGI:5452904|MGI:3802083|MGI:3648385|MGI:5452205|MGI:3030378|MGI:98839|MGI:5452814|MGI:2135548|MGI:5012254|MGI:3649399|MGI:5611124|MGI:107730|MGI:3783161|MGI:2442791|MGI:3704382|MGI:1914774|MGI:5579803|MGI:3652305|MGI:3652304|MGI:3779794|MGI:1922142|MGI:2685287|MGI:5663569|MGI:5531036|MGI:1916549|MGI:1924124|MGI:4421932|MGI:5453943|MGI:5455745|MGI:3647327|MGI:3629899|MGI:1918416|MGI:5477237|MGI:3649357|MGI:1920776|MGI:88229|MGI:5141965|MGI:5663656|MGI:3619359|MGI:5455438|MGI:5580166|MGI:3837206|MGI:3782758|MGI:3837039|MGI:2684961|MGI:3646283|MGI:96559|MGI:5610339|MGI:5452485|MGI:5663267|MGI:5453167|MGI:5663250|MGI:1922372|MGI:1916282|MGI:3781652|MGI:4414990|MGI:5662617|MGI:5611032|MGI:1913596|MGI:4414979|MGI:1919615|MGI:3649487|MGI:3651741|MGI:1335092|MGI:1916641|MGI:3041161|MGI:2447824|MGI:2685803|MGI:5452898|MGI:5579172|MGI:3619129|MGI:5610598|MGI:1351342|MGI:5531369|MGI:5456196|MGI:5591317|MGI:5454848|MGI:1343050|MGI:5530994|MGI:5455558|MGI:4439543|MGI:3650139|MGI:3647735|MGI:3650945|MGI:95432|MGI:3783027|MGI:3837035|MGI:4415001|MGI:96609|MGI:3650382|MGI:5610750|MGI:2443965|MGI:3648176|MGI:3783080|MGI:3649277|MGI:5662808|MGI:3649486|MGI:1919295|MGI:5611397|MGI:3649930|MGI:5594458|MGI:3606573|MGI:1918453|MGI:5477141|MGI:3802089|MGI:3708108|MGI:5455123|MGI:3645264|MGI:5662735|MGI:3782069|MGI:4937008|MGI:2136744|MGI:3030046|MGI:5579000|MGI:1926230|MGI:2442682|MGI:2153465|MGI:5593407|MGI:2149952|MGI:5454292|MGI:5531244|MGI:5455947|MGI:5141939|MGI:5452388|MGI:88479|MGI:5455100|MGI:1920551|MGI:3577767|MGI:5610251|MGI:5477244|MGI:3802132|MGI:3629943|MGI:3650125|MGI:5451862|MGI:3801916|MGI:5452984|MGI:5578861|MGI:1934134|MGI:3783037|MGI:5477312|MGI:5610218|MGI:3783065|MGI:2443256|MGI:3651064|MGI:5010714|MGI:3629651|MGI:5453959|MGI:3705403|MGI:5452453|MGI:5456152|MGI:2442643|MGI:5455111|MGI:5455690|MGI:1928099|MGI:3643978|MGI:5452558|MGI:1914590|MGI:3645370|MGI:3574105|MGI:5531146|MGI:5453169|MGI:5012028|MGI:5453940|MGI:3031231|MGI:3650413|MGI:4937886|MGI:3644132|MGI:1890505|MGI:3651095|MGI:3624349|MGI:5011167|MGI:3649966|MGI:5455394|MGI:1918599|MGI:3704493|MGI:3650771|MGI:1920738|MGI:5610163|MGI:3707318|MGI:2141314|MGI:3652041|MGI:5504099|MGI:1928820|MGI:4887388|MGI:3783003|MGI:3802014|MGI:3783108|MGI:3649750|MGI:3030092|MGI:2443051|MGI:3647439|MGI:5452929|MGI:5477274|MGI:107539|MGI:102756|MGI:3705243|MGI:2142438|MGI:3649505|MGI:95284|MGI:5454812|MGI:2176887|MGI:3645880|MGI:3646602|MGI:2676816|MGI:1922470|MGI:3651351|MGI:3651756|MGI:5579110|MGI:3650098|MGI:5663076|MGI:3645536|MGI:3643798|MGI:3619375|MGI:3705214|MGI:3652226|MGI:3039570|MGI:5453359|MGI:2685642|MGI:3644215|MGI:1861444|MGI:2685959|MGI:3647699|MGI:2149746|MGI:1925721|MGI:3643936|MGI:3643359|MGI:3651696|MGI:1918282|MGI:3651166|MGI:1918881|MGI:2676800|MGI:2444135|MGI:4938007|MGI:5456117|MGI:3649542|MGI:3649850|MGI:5456132|MGI:1922529|MGI:5455167|MGI:1931130|MGI:3648914|MGI:5579687|MGI:4938024|MGI:5593492|MGI:4937998|MGI:5313057|MGI:2135956|MGI:2157548|MGI:5531019|MGI:2685917|MGI:3646212|MGI:4422025|MGI:1349436|MGI:2444519|MGI:98261|MGI:3647443|MGI:5578770|MGI:98224|MGI:3648418|MGI:5455622|MGI:5453198|MGI:102473|MGI:3782941|MGI:3036289|MGI:5504142|MGI:5662881|MGI:5454652|MGI:3649313|MGI:5610192|MGI:5579920|MGI:5662652|MGI:3801828|MGI:1920826|MGI:5454832|MGI:2446636|MGI:3652027|MGI:3646431|MGI:2144215|MGI:3650027|MGI:5662860|MGI:2137698|MGI:5530916|MGI:3026877|MGI:3035071|MGI:4414968|MGI:3045370|MGI:3649580|MGI:3650253|MGI:3651247|MGI:3802133|MGI:5531186|MGI:5477219|MGI:5531313|MGI:3650695|MGI:97848|MGI:2135945|MGI:2685948|MGI:1923648|MGI:3030794|MGI:3709648|MGI:5456202|MGI:3652241|MGI:1922195|MGI:3783041|MGI:1916682|MGI:1330349|MGI:3642608|MGI:5454919|MGI:5531310|MGI:3607787|MGI:1921186|MGI:3649780|MGI:97444|MGI:4414984|MGI:3652140|MGI:3647473|MGI:3651174|MGI:5454768|MGI:5663129|MGI:2179523|MGI:3045363|MGI:5141936|MGI:1351599|MGI:1891387|MGI:1920632|MGI:4938026|MGI:4834230|MGI:107755|MGI:5141872|MGI:3822538|MGI:5455125|MGI:1889581|MGI:5663026|MGI:5580082|MGI:3649209|MGI:3649743|MGI:1925770|MGI:3650267|MGI:102481|MGI:3036280|MGI:3649570|MGI:5663285|MGI:3643254|MGI:3583955|MGI:3782992|MGI:3705413|MGI:5663323|MGI:1921007|MGI:1917660|MGI:5455893|MGI:5662859|MGI:5611229|MGI:5452444|MGI:1922956|MGI:5610836|MGI:3802069|MGI:3648731|MGI:3649213|MGI:3525150|MGI:3649803|MGI:5455414|MGI:3643352|MGI:1203481|MGI:5662581|MGI:5453390|MGI:3644504|MGI:5611184|MGI:5531337|MGI:3650729|MGI:3644382|MGI:3801803|MGI:5579590|MGI:3783028|MGI:1920616|MGI:3651101|MGI:5009998|MGI:5451867|MGI:5610404|MGI:5594666|MGI:5477073|MGI:3649786|MGI:3651209|MGI:3642744|MGI:5580215|MGI:5477086|MGI:2442825|MGI:3648820|MGI:5663502|MGI:5477082|MGI:5610948|MGI:5610291|MGI:1355317|MGI:3826571|MGI:5579081|MGI:3619326|MGI:5452131|MGI:5452915|MGI:3651480|MGI:3643932|MGI:1920600|MGI:2676838|MGI:1891259|MGI:3643753|MGI:3651057|MGI:88058|MGI:3644652|MGI:5455909|MGI:5662838|MGI:5530747|MGI:3045325|MGI:3650710|MGI:3642648|MGI:3783082|MGI:1915594|MGI:3642696|MGI:3781253|MGI:5611451|MGI:3649247|MGI:2442268|MGI:88346|MGI:1918648|MGI:1925885|MGI:5453435|MGI:3652338|MGI:3783017|MGI:5579365|MGI:5610200|MGI:1918486|MGI:3651324|MGI:3045320|MGI:5455205|MGI:3650697|MGI:1922759|MGI:5009928|MGI:2685662|MGI:2136746|MGI:1924785|MGI:3645339|MGI:2143561|MGI:1920315|MGI:3588256|MGI:98881|MGI:3802049|MGI:99594|MGI:3649681|MGI:5611445|MGI:3780646|MGI:3802081|MGI:3650848|MGI:88524|MGI:3650815|MGI:3651938|MGI:3650705|MGI:3841250|MGI:3651524|MGI:3650207|MGI:5580147|MGI:5663291|MGI:3652258|MGI:3650872|MGI:5610280|MGI:5531273|MGI:1923196|MGI:1913987|MGI:4938004|MGI:4950445|MGI:5477044|MGI:3650161|MGI:5663044|MGI:2685018|MGI:95688|MGI:3650260|MGI:1934368|MGI:96548|MGI:4834256|MGI:3647641|MGI:1921551|MGI:3780363|MGI:5453564|MGI:5590207|MGI:3651181|MGI:2652834|MGI:5453260|MGI:5578886|MGI:1195269|MGI:5611496|MGI:3646866|MGI:5434011|MGI:5530968|MGI:3781211|MGI:5648986|MGI:5453360|MGI:3042287|MGI:5662746|MGI:5611576|MGI:5662593|MGI:5610640|MGI:3647055|MGI:3650795|MGI:5578817|MGI:5663409|MGI:2442126|MGI:3651561|MGI:3708707|MGI:5454038|MGI:109246|MGI:3642594|MGI:3779442|MGI:3782239|MGI:3705472|MGI:3644273|MGI:1925395|MGI:5477345|MGI:5453385|MGI:3651042|MGI:3652261|MGI:3783368|MGI:5455148|MGI:1923061|MGI:3641830|MGI:5580028|MGI:3780458|MGI:5611173|MGI:5531175|MGI:3783366|MGI:5455918|MGI:4938039|MGI:3779248|MGI:5580347|MGI:1921424|MGI:3783217|MGI:3809197|MGI:3782967|MGI:3041182|MGI:3651070|MGI:5452835|MGI:1925728|MGI:5531020|MGI:5313084|MGI:107170|MGI:3650877|MGI:3642165|MGI:3651637|MGI:5610815|MGI:3649228|MGI:1925412|MGI:3645257|MGI:3647155|MGI:3705280|MGI:5611212|MGI:3650675|MGI:5453184|MGI:98608|MGI:5594361|MGI:1925312|MGI:5562728|MGI:5611362|MGI:1920499|MGI:5455776|MGI:2685640|MGI:3644982|MGI:5610874|MGI:3647835|MGI:3644419|MGI:1922481|MGI:95914|MGI:3046414|MGI:5453687|MGI:3650700|MGI:3646364|MGI:5455080|MGI:5611401|MGI:5663814|MGI:3643509|MGI:3697433|MGI:5530761|MGI:3648580|MGI:5009983|MGI:88135|MGI:5610694|MGI:5009946|MGI:3651941|MGI:5521070|MGI:3650090|MGI:5455445|MGI:1925155|MGI:5610627|MGI:5625046|MGI:3780212|MGI:1914937|MGI:3702115|MGI:5611532|MGI:5455001|MGI:5530970|MGI:5454601|MGI:1338915|MGI:1926341|MGI:5454050|MGI:109440|MGI:3652217|MGI:5579750|MGI:5454533|MGI:3801892|MGI:1917703|MGI:1913997|MGI:3649729|MGI:102470|MGI:5454082|MGI:2656551|MGI:2138302|MGI:2685907|MGI:3646603|MGI:3705126|MGI:5530745|MGI:2442358|MGI:5662813|MGI:1914967|MGI:3588236|MGI:3705173|MGI:3651653|MGI:5453985|MGI:5804826|MGI:3802082|MGI:3643292|MGI:1337040|MGI:3652266|MGI:2685264|MGI:5662765|MGI:5452353|MGI:5531049|MGI:3649352|MGI:3642569|MGI:5295681|MGI:3642295|MGI:3781303|MGI:5454655|MGI:5663828|MGI:5141891|MGI:4415005|MGI:5451943|MGI:4441435|MGI:5456274|MGI:3801989|MGI:5663209|MGI:5580189|MGI:3026922|MGI:3650953|MGI:5580164|MGI:3651632|MGI:5477294|MGI:3783166|MGI:5521006|MGI:3644767|MGI:5531347|MGI:1925574|MGI:1276558|MGI:3650628|MGI:5452845|MGI:4414974|MGI:5455012|MGI:1339941|MGI:3650862|MGI:5662775|MGI:1924164|MGI:109612|MGI:3644570|MGI:97501|MGI:3783199|MGI:5531350|MGI:5530704|MGI:1925424|MGI:4937043|MGI:1933383|MGI:3642001|MGI:3783011|MGI:3802036|MGI:3650547|MGI:97883|MGI:1930003|MGI:5454924|MGI:5531035|MGI:5456094|MGI:3782645|MGI:5610712|MGI:2149590|MGI:3826590|MGI:1918479|MGI:1922895|MGI:3705277|MGI:2148239|MGI:1924590|MGI:4937162|MGI:5662734|MGI:3802058|MGI:1921710|MGI:5504141|MGI:3648658|MGI:3649812|MGI:5012504|MGI:5562784|MGI:5455673|MGI:3045238|MGI:3801972|MGI:4439818|MGI:3584360|MGI:1916367|MGI:5453064|MGI:2138890|MGI:5590887|MGI:3783228|MGI:3704303|MGI:3647232|MGI:2388820|MGI:2676835|MGI:5453433|MGI:5452104|MGI:5454392|MGI:5591040|MGI:96235|MGI:1203527|MGI:1933247|MGI:88522|MGI:2685863|MGI:2676834|MGI:3783167|MGI:4834329|MGI:3641813|MGI:3650448|MGI:3652039|MGI:95748|MGI:97478|MGI:5610584|MGI:5452961|MGI:3705245|MGI:5610359|MGI:5454132|MGI:5611503|MGI:3647627|MGI:3645941|MGI:5610476|MGI:4937285|MGI:4937990|MGI:1330292|MGI:2667156|MGI:2136750|MGI:5452595|MGI:3801976|MGI:97453|MGI:5452317|MGI:3705106|MGI:88523|MGI:102480|MGI:3604190|MGI:3650417|MGI:5611549|MGI:5610474|MGI:2685564|MGI:3802155|MGI:3651677|MGI:5580089|MGI:1925401|MGI:3649251|MGI:97166|MGI:3647032|MGI:4834320|MGI:5610930|MGI:3704424|MGI:3644588|MGI:5011351|MGI:2685386|MGI:3650875|MGI:3780714|MGI:3643148|MGI:88121|MGI:1917131|MGI:5455222|MGI:2685128|MGI:88515|MGI:5456028|MGI:3651236|MGI:5579936|MGI:5663036|MGI:5521029|MGI:5662678|MGI:1924246|MGI:3705711|MGI:1924170|MGI:5610975|MGI:88228|MGI:3652057|MGI:3027157|MGI:3649116|MGI:3650747|MGI:3650666|MGI:1298223|MGI:3650043|MGI:1920203|MGI:5453698|MGI:3647637|MGI:5011431|MGI:1917693|MGI:3651350|MGI:3028035|MGI:5663472|MGI:5562754|MGI:5313074|MGI:4421760|MGI:3030524|MGI:3650581|MGI:5454957|MGI:5452750|MGI:2687054|MGI:3646324|MGI:5530756|MGI:5454067|MGI:2152200|MGI:5663902|MGI:5610365|MGI:97401|MGI:1919477|MGI:5562787|MGI:3649592|MGI:5453079|MGI:2444126|MGI:5504080|MGI:96562 
## 
## Cluster size 22511 broken into 22217 294 
## Cluster size 22217 broken into 20226 1991 
## Cluster size 20226 broken into 16360 3866 
## Cluster size 16360 broken into 12669 3691 
## Cluster size 12669 broken into 2742 9927 
## Cluster size 2742 broken into 1089 1653 
## Done cluster 1089 
## Cluster size 1653 broken into 1644 9 
## Cluster size 1644 broken into 1076 568 
## Done cluster 1076 
## Done cluster 568 
## Done cluster 1644 
## Done cluster 9 
## Done cluster 1653 
## Done cluster 2742 
## Cluster size 9927 broken into 7426 2501 
## Cluster size 7426 broken into 5079 2347 
## Cluster size 5079 broken into 3172 1907 
## Cluster size 3172 broken into 866 2306 
## Done cluster 866 
## Cluster size 2306 broken into 1748 558 
## Cluster size 1748 broken into 1493 255 
## Done cluster 1493 
## Done cluster 255 
## Done cluster 1748 
## Done cluster 558 
## Done cluster 2306 
## Done cluster 3172 
## Cluster size 1907 broken into 782 1125 
## Done cluster 782 
## Done cluster 1125 
## Done cluster 1907 
## Done cluster 5079 
## Cluster size 2347 broken into 627 1720 
## Done cluster 627 
## Cluster size 1720 broken into 1491 229 
## Done cluster 1491 
## Done cluster 229 
## Done cluster 1720 
## Done cluster 2347 
## Done cluster 7426 
## Cluster size 2501 broken into 397 2104 
## Done cluster 397 
## Cluster size 2104 broken into 1794 310 
## Cluster size 1794 broken into 793 1001 
## Done cluster 793 
## Done cluster 1001 
## Done cluster 1794 
## Done cluster 310 
## Done cluster 2104 
## Done cluster 2501 
## Done cluster 9927 
## Done cluster 12669 
## Cluster size 3691 broken into 1656 2035 
## Cluster size 1656 broken into 731 925 
## Done cluster 731 
## Done cluster 925 
## Done cluster 1656 
## Cluster size 2035 broken into 968 1067 
## Done cluster 968 
## Done cluster 1067 
## Done cluster 2035 
## Done cluster 3691 
## Done cluster 16360 
## Cluster size 3866 broken into 1450 2416 
## Done cluster 1450 
## Cluster size 2416 broken into 1580 836 
## Cluster size 1580 broken into 530 1050 
## Done cluster 530 
## Done cluster 1050 
## Done cluster 1580 
## Done cluster 836 
## Done cluster 2416 
## Done cluster 3866 
## Done cluster 20226 
## Cluster size 1991 broken into 497 1494 
## Done cluster 497 
## Done cluster 1494 
## Done cluster 1991 
## Done cluster 22217 
## Done cluster 294
bM = tranSamp(
  object = aM,
  percent = 1,
  speed = TRUE,
  seed = seed
)
## 
## Total observations: 22511. Selected samples: 22511[Shuffled] 
## 
###
aH = initialization(
  data = overall_human_cell_lines,
  response = NULL,
  speed = TRUE,
  seed = seed
)
## 
##  Response is not found and then set to NULL
## 
##  Response is not included!
## 
##  Shuffling in process ...
## 
##  Missing data more than 70 percent in rows (610=4%) [removed]: MGI:1338824|MGI:96828|MGI:2685870|MGI:88479|MGI:101789|MGI:1921385|MGI:2176375|MGI:1913633|MGI:1888902|MGI:1927657|MGI:104295|MGI:3045348|MGI:2443657|MGI:1924705|MGI:3031084|MGI:1914546|MGI:1201387|MGI:1918846|MGI:97845|MGI:1927450|MGI:1926193|MGI:1860763|MGI:3645096|MGI:3030555|MGI:96925|MGI:98344|MGI:88121|MGI:105393|MGI:97879|MGI:1928487|MGI:88381|MGI:109201|MGI:2182269|MGI:103291|MGI:101766|MGI:1101355|MGI:99481|MGI:1933972|MGI:107180|MGI:103221|MGI:2135874|MGI:97847|MGI:2152345|MGI:1315205|MGI:1351625|MGI:1914209|MGI:98779|MGI:1098236|MGI:109242|MGI:95815|MGI:109573|MGI:2386681|MGI:1915265|MGI:103078|MGI:1923993|MGI:1336189|MGI:1347521|MGI:1930948|MGI:1194993|MGI:2135756|MGI:1921462|MGI:98389|MGI:1346328|MGI:1920970|MGI:109182|MGI:1925226|MGI:97744|MGI:1916987|MGI:2146430|MGI:1915273|MGI:1919100|MGI:2678374|MGI:1349470|MGI:108050|MGI:1917562|MGI:2138647|MGI:1932339|MGI:1277953|MGI:101833|MGI:95554|MGI:106038|MGI:2148149|MGI:88233|MGI:1861901|MGI:3030856|MGI:1351628|MGI:2442792|MGI:104710|MGI:1913305|MGI:2442252|MGI:2137092|MGI:108446|MGI:2141165|MGI:103241|MGI:95407|MGI:1097714|MGI:94896|MGI:2389142|MGI:106675|MGI:97475|MGI:1927340|MGI:1929093|MGI:95819|MGI:3712328|MGI:2384409|MGI:1098622|MGI:3030017|MGI:1931457|MGI:2442566|MGI:97279|MGI:1335106|MGI:1353466|MGI:5141967|MGI:1098283|MGI:1298387|MGI:1917912|MGI:2146636|MGI:1919649|MGI:2685834|MGI:106572|MGI:1100535|MGI:109626|MGI:3030006|MGI:2443220|MGI:3030568|MGI:1929473|MGI:1344424|MGI:2384966|MGI:3030029|MGI:108075|MGI:96969|MGI:97898|MGI:1916776|MGI:1096342|MGI:87853|MGI:1203522|MGI:98090|MGI:1194499|MGI:894320|MGI:3030271|MGI:2146616|MGI:891976|MGI:109452|MGI:107949|MGI:1919782|MGI:1347077|MGI:109622|MGI:95482|MGI:2139628|MGI:109315|MGI:3031089|MGI:97175|MGI:2652869|MGI:1930124|MGI:102851|MGI:96080|MGI:107824|MGI:3702158|MGI:1203500|MGI:1351744|MGI:97876|MGI:108482|MGI:1925139|MGI:2179203|MGI:97552|MGI:107265|MGI:104650|MGI:1335089|MGI:1914647|MGI:1917030|MGI:1333751|MGI:94859|MGI:2151886|MGI:99436|MGI:1923772|MGI:2155888|MGI:1921303|MGI:1270854|MGI:104562|MGI:96973|MGI:1914273|MGI:97362|MGI:1339939|MGI:1888978|MGI:103032|MGI:1913495|MGI:3030813|MGI:1330839|MGI:99425|MGI:97298|MGI:97360|MGI:2656976|MGI:88354|MGI:1196624|MGI:95301|MGI:3030566|MGI:1918984|MGI:99502|MGI:1913480|MGI:1930001|MGI:1926004|MGI:1921547|MGI:97912|MGI:1202875|MGI:104773|MGI:1349449|MGI:2651811|MGI:1927138|MGI:1328337|MGI:1914498|MGI:1917683|MGI:108295|MGI:95321|MGI:98970|MGI:1922708|MGI:105380|MGI:88064|MGI:2444198|MGI:97372|MGI:1346069|MGI:1914974|MGI:3030386|MGI:1344360|MGI:1929538|MGI:1336194|MGI:3030007|MGI:98239|MGI:1341902|MGI:3647180|MGI:95611|MGI:1913411|MGI:109490|MGI:88321|MGI:97877|MGI:892970|MGI:104532|MGI:98233|MGI:3783006|MGI:3030934|MGI:97520|MGI:96108|MGI:2384407|MGI:96103|MGI:2152297|MGI:102809|MGI:108176|MGI:1916510|MGI:1277959|MGI:1933174|MGI:1920230|MGI:895068|MGI:1195456|MGI:1922646|MGI:97052|MGI:2682306|MGI:98085|MGI:108519|MGI:1353448|MGI:1934028|MGI:3030933|MGI:1919006|MGI:2441753|MGI:2388804|MGI:1346052|MGI:5516029|MGI:2443882|MGI:3030578|MGI:1915289|MGI:1924555|MGI:2153710|MGI:1921677|MGI:1929713|MGI:97361|MGI:2441758|MGI:894652|MGI:1915110|MGI:1915385|MGI:1930704|MGI:1100492|MGI:104749|MGI:96912|MGI:1858258|MGI:1921701|MGI:98270|MGI:3030569|MGI:107231|MGI:107822|MGI:95752|MGI:96990|MGI:1915092|MGI:101762|MGI:3030879|MGI:891996|MGI:105370|MGI:1099818|MGI:1855699|MGI:1351318|MGI:106478|MGI:88501|MGI:1913687|MGI:1915392|MGI:894680|MGI:2444672|MGI:1353665|MGI:3030128|MGI:97821|MGI:94866|MGI:109185|MGI:1202394|MGI:1914690|MGI:3039592|MGI:98483|MGI:1934943|MGI:1919837|MGI:2448270|MGI:98084|MGI:1921393|MGI:1914870|MGI:2445289|MGI:1921846|MGI:1335073|MGI:2673307|MGI:2670962|MGI:894762|MGI:108476|MGI:106612|MGI:87991|MGI:95495|MGI:2180585|MGI:1261831|MGI:104615|MGI:98813|MGI:105120|MGI:3036258|MGI:99946|MGI:1922762|MGI:1915690|MGI:97891|MGI:2139134|MGI:1098669|MGI:3576487|MGI:1926119|MGI:893587|MGI:96079|MGI:1919558|MGI:2445190|MGI:2386853|MGI:1916333|MGI:2137224|MGI:99909|MGI:1344385|MGI:1336200|MGI:2664387|MGI:1339969|MGI:105941|MGI:95678|MGI:3030827|MGI:94865|MGI:98280|MGI:106922|MGI:1354708|MGI:98227|MGI:2385905|MGI:2384914|MGI:88543|MGI:1928477|MGI:2147351|MGI:102760|MGI:1332235|MGI:1349767|MGI:3031137|MGI:2441996|MGI:1347520|MGI:1916789|MGI:97584|MGI:1916969|MGI:1098670|MGI:1860835|MGI:1350921|MGI:87881|MGI:3030148|MGI:87963|MGI:97043|MGI:1097164|MGI:95833|MGI:1352750|MGI:1350935|MGI:1315202|MGI:1915956|MGI:2155445|MGI:1339656|MGI:2679262|MGI:104820|MGI:97783|MGI:1096320|MGI:1100846|MGI:104812|MGI:1917535|MGI:1915851|MGI:1913903|MGI:98310|MGI:2387203|MGI:109585|MGI:95718|MGI:1343166|MGI:101786|MGI:1925905|MGI:2443098|MGI:3030390|MGI:105044|MGI:2686922|MGI:1921984|MGI:1289172|MGI:95516|MGI:3057108|MGI:1278340|MGI:95491|MGI:3031027|MGI:1916465|MGI:1098765|MGI:1922664|MGI:1345162|MGI:104563|MGI:1888986|MGI:99257|MGI:1329027|MGI:3603816|MGI:1858257|MGI:1927185|MGI:97914|MGI:1346336|MGI:2155399|MGI:3031090|MGI:3030649|MGI:104853|MGI:107812|MGI:98933|MGI:1913929|MGI:1919650|MGI:95791|MGI:88437|MGI:2385255|MGI:1923097|MGI:1919680|MGI:106028|MGI:99675|MGI:95753|MGI:88356|MGI:5510732|MGI:97355|MGI:5011982|MGI:88235|MGI:1929940|MGI:1891457|MGI:101835|MGI:1913787|MGI:98254|MGI:98484|MGI:2442836|MGI:95852|MGI:108088|MGI:1858195|MGI:1298366|MGI:1345142|MGI:1891831|MGI:1891066|MGI:1098266|MGI:98821|MGI:1920177|MGI:1927753|MGI:1914502|MGI:1891435|MGI:95612|MGI:1928370|MGI:1923776|MGI:1336193|MGI:88067|MGI:1100882|MGI:95484|MGI:109637|MGI:106477|MGI:96789|MGI:1921276|MGI:1341105|MGI:1890646|MGI:2180784|MGI:109609|MGI:1923364|MGI:105992|MGI:95797|MGI:1915401|MGI:1925764|MGI:5604098|MGI:1914328|MGI:1924384|MGI:88541|MGI:88512|MGI:109173|MGI:1330808|MGI:1917851|MGI:109349|MGI:2137612|MGI:1914008|MGI:2148931|MGI:1343498|MGI:96062|MGI:894324|MGI:88075|MGI:94910|MGI:1096345|MGI:2685830|MGI:103294|MGI:109632|MGI:98510|MGI:2670976|MGI:1206586|MGI:2680765|MGI:108028|MGI:1329037|MGI:97631|MGI:2144271|MGI:1315197|MGI:1914858|MGI:97402|MGI:1316678|MGI:1923429|MGI:107461|MGI:1918041|MGI:106590|MGI:107504|MGI:1917233|MGI:1921080|MGI:3030509|MGI:1915525|MGI:101790|MGI:1929455|MGI:1315203|MGI:98105|MGI:1097716|MGI:1917076|MGI:3030547|MGI:1921304|MGI:1915364|MGI:98506|MGI:106014|MGI:1926479|MGI:1933181|MGI:1925808|MGI:1098684|MGI:88070|MGI:1858200|MGI:99916|MGI:105368|MGI:1931787|MGI:1339968|MGI:96067|MGI:1916437|MGI:99844|MGI:3031127|MGI:1918993|MGI:1343297|MGI:1921362|MGI:102699|MGI:1925500|MGI:104968|MGI:1343489|MGI:1098658|MGI:3057273|MGI:1097695|MGI:105090|MGI:3030015|MGI:1923437|MGI:1270863|MGI:1354949|MGI:1859682|MGI:1349450|MGI:2385269|MGI:98384|MGI:2675669|MGI:1339975|MGI:1341793|MGI:2441980|MGI:3030269|MGI:109587|MGI:1925507|MGI:99462|MGI:1918190|MGI:1306776|MGI:102690|MGI:107619|MGI:1929666|MGI:1347344|MGI:3030025|MGI:1270128|MGI:2389572|MGI:2182965|MGI:1201414|MGI:97373|MGI:1919402|MGI:106926|MGI:1277958|MGI:1341903|MGI:1915443|MGI:2183559|MGI:105922|MGI:1342293|MGI:1922863|MGI:96982|MGI:1917264|MGI:1097152 
## 
## Cluster size 16287 broken into 11719 4568 
## Cluster size 11719 broken into 5315 6404 
## Cluster size 5315 broken into 2440 2875 
## Cluster size 2440 broken into 1104 1336 
## Done cluster 1104 
## Done cluster 1336 
## Done cluster 2440 
## Cluster size 2875 broken into 1380 1495 
## Done cluster 1380 
## Done cluster 1495 
## Done cluster 2875 
## Done cluster 5315 
## Cluster size 6404 broken into 2722 3682 
## Cluster size 2722 broken into 1392 1330 
## Done cluster 1392 
## Done cluster 1330 
## Done cluster 2722 
## Cluster size 3682 broken into 1542 2140 
## Cluster size 1542 broken into 769 773 
## Done cluster 769 
## Done cluster 773 
## Done cluster 1542 
## Cluster size 2140 broken into 861 1279 
## Done cluster 861 
## Done cluster 1279 
## Done cluster 2140 
## Done cluster 3682 
## Done cluster 6404 
## Done cluster 11719 
## Cluster size 4568 broken into 869 3699 
## Done cluster 869 
## Cluster size 3699 broken into 1720 1979 
## Cluster size 1720 broken into 517 1203 
## Done cluster 517 
## Done cluster 1203 
## Done cluster 1720 
## Cluster size 1979 broken into 1244 735 
## Done cluster 1244 
## Done cluster 735 
## Done cluster 1979 
## Done cluster 3699 
## Done cluster 4568
bH = tranSamp(
  object = aH,
  percent = 1,
  FUN = scale,
  speed = TRUE,
  seed = seed
)
## 
## Total observations: 16287. Selected samples: 16287[Shuffled] 
## 
###
f0 = merge(
  data.frame(
    'MGI id' = DMDD_train$`MGI id`,
    viability = DMDD_train$Viability,
    check.names = FALSE
  ),
  merge(
    data.frame(
      #viability = cM$inputdata$viability, #HAMED
      'MGI id' = rownames(bM$rdata),
      bM$rdata  ,
      check.names = FALSE
    ),
    data.frame(
      bH$rdata,
      'MGI id' = rownames(bH$rdata),
      check.names = FALSE
    ),
    by = 'MGI id',
    all = TRUE
  ),
  by = 'MGI id',
  all = TRUE
)

final_data = droplevels(f0[!f0$viability %in% c('Conflicting', 'Subviable'),])
table(final_data$viability, useNA = 'always')
## 
## Lethal Viable   <NA> 
##    987   2433  20329
final_data = final_data[complete.cases(final_data[, -c(1:2)]), ]
table(final_data$viability, useNA = 'always')
## 
## Lethal Viable   <NA> 
##    919   2131  11290
rownames(final_data) = final_data[, 1]
final_data = forg = final_data[, -1]
final_data$viability = addNA(final_data$viability)
levels(final_data$viability)
## [1] "Lethal" "Viable" NA
levels(final_data$viability)[3] = 'unknown'
table(final_data$viability, useNA = 'always')
## 
##  Lethal  Viable unknown    <NA> 
##     919    2131   11290       0
f00 = final_data
################

## PCA+TSNE
dM = pcsne(
  object = list(rdata = f00,
                response = 'viability'),
  speed = TRUE,
  dmsne = 3,
  seed = seed
)
## 
## PCA dimension : 13, SNE dimension : 3
## 
##  perplexity =  90
# [linear] Correlation of the new components
cor(dM$rdata)
##            V1         V2        V3
## V1 1.00000000 0.02607066 0.4979931
## V2 0.02607066 1.00000000 0.3988266
## V3 0.49799307 0.39882656 1.0000000
### kmeans
mergOrg = mergeClust(f00, seed = seed)
## 
## kmeans in progress ....
## Ratio: Inf; Cluster 9 unknown assigned to -> Viable
## Ratio: Inf; Cluster 10 unknown assigned to -> Viable
## Ratio: 26.7; Cluster 11 unknown assigned to -> Viable
## Ratio: Inf; Cluster 19 unknown assigned to -> Lethal
## Ratio: Inf; Cluster 22 unknown assigned to -> Lethal
## Ratio: Inf; Cluster 26 unknown assigned to -> Lethal
## Ratio: 59; Cluster 31 unknown assigned to -> Lethal
## Ratio: Inf; Cluster 33 unknown assigned to -> Lethal
## Ratio: 46.5; Cluster 36 unknown assigned to -> Viable
## Ratio: 64; Cluster 38 unknown assigned to -> Viable
## Ratio: 36; Cluster 42 unknown assigned to -> Viable
## Ratio: 29; Cluster 45 unknown assigned to -> Viable
## Ratio: Inf; Cluster 47 unknown assigned to -> Lethal
## 
##   Lethal Lethal_p  unknown   Viable Viable_p 
##      919      792     9107     2131     1391
## 
##  Total clusters:50. Min points in cluster : 44

mergSNE = mergeClust(rdata = data.frame(viability = f00$viability, dM$rdata),
                     seed = seed)
## 
## kmeans in progress ....
## Ratio: Inf; Cluster 7 unknown assigned to -> Viable
## Ratio: 24; Cluster 13 unknown assigned to -> Viable
## Ratio: Inf; Cluster 26 unknown assigned to -> Lethal
## Ratio: 85; Cluster 30 unknown assigned to -> Lethal
## Ratio: 28; Cluster 33 unknown assigned to -> Viable
## Ratio: 21; Cluster 37 unknown assigned to -> Lethal
## Ratio: Inf; Cluster 38 unknown assigned to -> Viable
## Ratio: 34; Cluster 48 unknown assigned to -> Viable
## 
##   Lethal Lethal_p  unknown   Viable Viable_p 
##      919      840     9423     2131     1027
## 
##  Total clusters:50. Min points in cluster : 65

# merge predictions (_p) to the original data
newdata = f00
newdata$viability[mergSNE$assigned.viability %in% 'Lethal_p'] = 'Lethal'
newdata$viability[mergSNE$assigned.viability %in% 'Viable_p'] = 'Viable'
table(newdata$viability, useNA = 'always')
## 
##  Lethal  Viable unknown    <NA> 
##    1759    3158    9423       0
table(newdata$viability, f00$viability, useNA = 'always')
##          
##           Lethal Viable unknown <NA>
##   Lethal     919      0     840    0
##   Viable       0   2131    1027    0
##   unknown      0      0    9423    0
##   <NA>         0      0       0    0
## not actually needed - Just for Terry
library(car)
artificol = as.factor(newdata$viability)
levels(artificol)[levels(artificol) == 'unknown'] = NA
rgl.open()
scatter3d(
  x = dM$rdata$V1,
  y = dM$rdata$V2,
  z = dM$rdata$V3,
  #group = forg$viability,
  # original viability (not all data)
  #point.col = mergSNE$clusters, # clusters
  point.col = mergSNE$merged.clu + 1,
  # clusters that merged (red)
  #group = artificol, #final groups
  surface = FALSE
)

###########################
###########################
f2 = f20 = data.frame(viability = newdata$viability, dM$rdata)
###########################
f20$viability[f20$viability %in% 'unknown'] = NA
f20 = droplevels(data.frame(f20, check.names = TRUE))
f20 = f20[!is.na(f20$viability), ]
table(f2$viability, useNA = 'always')
## 
##  Lethal  Viable unknown    <NA> 
##    1759    3158    9423       0
table(f20$viability, useNA = 'always')
## 
## Lethal Viable   <NA> 
##   1759   3158      0
# 1 GO ############################
library(caret)
## Loading required package: lattice
## Loading required package: ggplot2
library(mlr)#classif.quaDA *classif.nnTrain*classif.nodeHarvest
## Loading required package: ParamHelpers
## Warning: replacing previous import 'BBmisc::isFALSE' by
## 'backports::isFALSE' when loading 'mlr'
## 
## Attaching package: 'mlr'
## The following object is masked from 'package:caret':
## 
##     train
set.seed(seed)
task10  = mlr::makeClassifTask(data = data.frame(f20, check.names = T),
                               target = "viability")
task10 = oversample(task = task10, rate  = max(1, 1 / (max(prop.table(
  table(f20$viability)
)))))
table(getTaskTargets(task10))
## 
## Lethal Viable 
##   2739   3158
table(f20$viability)
## 
## Lethal Viable 
##   1759   3158
lrn10 = mlr::makeLearner('classif.ranger',
                         predict.type = 'prob')
model10 = mlr::train(lrn10, task10)
pred10 = predict(model10, newdata = f20)

set.seed(seed)
mes = list(mmce,fdr, kappa, f1, fpr, tpr, tp)
rdesc.outer = makeResampleDesc("Bootstrap", iters = 50)
bmr = benchmark(
  list(lrn10),
  tasks = task10,
  resampling = rdesc.outer,
  measures =  mes,
  show.info = FALSE
)
dfBMR = generateThreshVsPerfData(bmr, measures = mes)
#plotROCCurves(dfBMR,measures = mes)
plotThreshVsPerf(dfBMR,measures = mes)

r = resample(
  lrn10,
  task10,
  resampling = rdesc.outer,
  measures = mes,
  show.info = TRUE
)
## [Resample] OOB bootstrapping iter 1:
## mmce.test.mean=0.09,fdr.test.mean=0.0642,kappa.test.mean=0.819,f1.test.mean=0.904,fpr.test.mean=0.0559,tpr.test.mean=0.873,tp.test.mean= 904
## [Resample] OOB bootstrapping iter 2: mmce.test.mean=0.107,fdr.test.mean=0.0769,kappa.test.mean=0.784,f1.test.mean=0.882,fpr.test.mean=0.0633,tpr.test.mean=0.844,tp.test.mean= 852
## [Resample] OOB bootstrapping iter 3: mmce.test.mean=0.0988,fdr.test.mean=0.0811,kappa.test.mean=0.801,f1.test.mean=0.892,fpr.test.mean=0.0686,tpr.test.mean=0.868,tp.test.mean= 884
## [Resample] OOB bootstrapping iter 4: mmce.test.mean=0.0908,fdr.test.mean=0.0841,kappa.test.mean=0.817,f1.test.mean= 0.9,fpr.test.mean=0.0691,tpr.test.mean=0.884,tp.test.mean= 882
## [Resample] OOB bootstrapping iter 5: mmce.test.mean=0.0876,fdr.test.mean=0.0802,kappa.test.mean=0.823,f1.test.mean=0.903,fpr.test.mean=0.0664,tpr.test.mean=0.888,tp.test.mean= 894
## [Resample] OOB bootstrapping iter 6: mmce.test.mean=0.0856,fdr.test.mean=0.0645,kappa.test.mean=0.828,f1.test.mean=0.906,fpr.test.mean=0.0539,tpr.test.mean=0.879,tp.test.mean= 885
## [Resample] OOB bootstrapping iter 7: mmce.test.mean=0.0939,fdr.test.mean=0.0859,kappa.test.mean=0.811,f1.test.mean=0.896,fpr.test.mean=0.0704,tpr.test.mean=0.879,tp.test.mean= 883
## [Resample] OOB bootstrapping iter 8: mmce.test.mean=0.102,fdr.test.mean=0.0794,kappa.test.mean=0.794,f1.test.mean=0.886,fpr.test.mean=0.0643,tpr.test.mean=0.855,tp.test.mean= 870
## [Resample] OOB bootstrapping iter 9: mmce.test.mean=0.0906,fdr.test.mean=0.0864,kappa.test.mean=0.817,f1.test.mean= 0.9,fpr.test.mean=0.0716,tpr.test.mean=0.887,tp.test.mean= 888
## [Resample] OOB bootstrapping iter 10: mmce.test.mean=0.0942,fdr.test.mean=0.0702,kappa.test.mean=0.811,f1.test.mean=0.898,fpr.test.mean=0.0597,tpr.test.mean=0.868,tp.test.mean= 887
## [Resample] OOB bootstrapping iter 11: mmce.test.mean=0.0952,fdr.test.mean=0.0882,kappa.test.mean=0.808,f1.test.mean=0.895,fpr.test.mean=0.0735,tpr.test.mean=0.88,tp.test.mean= 899
## [Resample] OOB bootstrapping iter 12: mmce.test.mean=0.102,fdr.test.mean=0.0808,kappa.test.mean=0.794,f1.test.mean=0.889,fpr.test.mean=0.068,tpr.test.mean=0.86,tp.test.mean= 865
## [Resample] OOB bootstrapping iter 13: mmce.test.mean=0.0975,fdr.test.mean=0.0743,kappa.test.mean=0.804,f1.test.mean=0.894,fpr.test.mean=0.0633,tpr.test.mean=0.865,tp.test.mean= 897
## [Resample] OOB bootstrapping iter 14: mmce.test.mean=0.102,fdr.test.mean=0.0847,kappa.test.mean=0.795,f1.test.mean=0.887,fpr.test.mean=0.0684,tpr.test.mean=0.86,tp.test.mean= 865
## [Resample] OOB bootstrapping iter 15: mmce.test.mean=0.0999,fdr.test.mean=0.0786,kappa.test.mean=0.798,f1.test.mean=0.888,fpr.test.mean=0.0633,tpr.test.mean=0.858,tp.test.mean= 856
## [Resample] OOB bootstrapping iter 16: mmce.test.mean=0.104,fdr.test.mean=0.0905,kappa.test.mean=0.79,f1.test.mean=0.883,fpr.test.mean=0.0722,tpr.test.mean=0.859,tp.test.mean= 844
## [Resample] OOB bootstrapping iter 17: mmce.test.mean=0.0988,fdr.test.mean=0.0743,kappa.test.mean= 0.8,f1.test.mean=0.889,fpr.test.mean=0.059,tpr.test.mean=0.855,tp.test.mean= 860
## [Resample] OOB bootstrapping iter 18: mmce.test.mean=0.0926,fdr.test.mean=0.0863,kappa.test.mean=0.812,f1.test.mean=0.896,fpr.test.mean=0.0685,tpr.test.mean=0.878,tp.test.mean= 858
## [Resample] OOB bootstrapping iter 19: mmce.test.mean=0.0941,fdr.test.mean=0.0767,kappa.test.mean=0.811,f1.test.mean=0.897,fpr.test.mean=0.0645,tpr.test.mean=0.873,tp.test.mean= 891
## [Resample] OOB bootstrapping iter 20: mmce.test.mean=0.0938,fdr.test.mean=0.08,kappa.test.mean=0.811,f1.test.mean=0.897,fpr.test.mean=0.0664,tpr.test.mean=0.875,tp.test.mean= 874
## [Resample] OOB bootstrapping iter 21: mmce.test.mean=0.0938,fdr.test.mean=0.0797,kappa.test.mean=0.81,f1.test.mean=0.895,fpr.test.mean=0.0643,tpr.test.mean=0.872,tp.test.mean= 855
## [Resample] OOB bootstrapping iter 22: mmce.test.mean=0.101,fdr.test.mean=0.0961,kappa.test.mean=0.796,f1.test.mean=0.886,fpr.test.mean=0.0763,tpr.test.mean=0.869,tp.test.mean= 865
## [Resample] OOB bootstrapping iter 23: mmce.test.mean=0.0925,fdr.test.mean=0.0747,kappa.test.mean=0.814,f1.test.mean= 0.9,fpr.test.mean=0.0635,tpr.test.mean=0.875,tp.test.mean= 904
## [Resample] OOB bootstrapping iter 24: mmce.test.mean=0.0895,fdr.test.mean=0.0823,kappa.test.mean=0.818,f1.test.mean=0.898,fpr.test.mean=0.0636,tpr.test.mean=0.878,tp.test.mean= 859
## [Resample] OOB bootstrapping iter 25: mmce.test.mean=0.0853,fdr.test.mean=0.0687,kappa.test.mean=0.827,f1.test.mean=0.904,fpr.test.mean=0.0548,tpr.test.mean=0.879,tp.test.mean= 868
## [Resample] OOB bootstrapping iter 26: mmce.test.mean=0.0964,fdr.test.mean=0.0759,kappa.test.mean=0.806,f1.test.mean=0.895,fpr.test.mean=0.0638,tpr.test.mean=0.867,tp.test.mean= 901
## [Resample] OOB bootstrapping iter 27: mmce.test.mean=0.0898,fdr.test.mean=0.0653,kappa.test.mean=0.818,f1.test.mean=0.899,fpr.test.mean=0.0521,tpr.test.mean=0.866,tp.test.mean= 888
## [Resample] OOB bootstrapping iter 28: mmce.test.mean=0.101,fdr.test.mean=0.0822,kappa.test.mean=0.796,f1.test.mean=0.886,fpr.test.mean=0.0645,tpr.test.mean=0.856,tp.test.mean= 849
## [Resample] OOB bootstrapping iter 29: mmce.test.mean=0.0785,fdr.test.mean=0.0651,kappa.test.mean=0.841,f1.test.mean=0.912,fpr.test.mean=0.0521,tpr.test.mean=0.89,tp.test.mean= 890
## [Resample] OOB bootstrapping iter 30: mmce.test.mean=0.0936,fdr.test.mean=0.0694,kappa.test.mean=0.811,f1.test.mean=0.896,fpr.test.mean=0.0566,tpr.test.mean=0.864,tp.test.mean= 885
## [Resample] OOB bootstrapping iter 31: mmce.test.mean=0.0955,fdr.test.mean=0.078,kappa.test.mean=0.808,f1.test.mean=0.897,fpr.test.mean=0.0667,tpr.test.mean=0.873,tp.test.mean= 898
## [Resample] OOB bootstrapping iter 32: mmce.test.mean=0.0952,fdr.test.mean=0.0679,kappa.test.mean=0.809,f1.test.mean=0.897,fpr.test.mean=0.0585,tpr.test.mean=0.865,tp.test.mean= 906
## [Resample] OOB bootstrapping iter 33: mmce.test.mean=0.0967,fdr.test.mean=0.0738,kappa.test.mean=0.804,f1.test.mean=0.891,fpr.test.mean=0.0583,tpr.test.mean=0.858,tp.test.mean= 866
## [Resample] OOB bootstrapping iter 34: mmce.test.mean=0.0932,fdr.test.mean=0.0622,kappa.test.mean=0.812,f1.test.mean=0.897,fpr.test.mean=0.0514,tpr.test.mean=0.86,tp.test.mean= 875
## [Resample] OOB bootstrapping iter 35: mmce.test.mean=0.0875,fdr.test.mean=0.0749,kappa.test.mean=0.823,f1.test.mean=0.903,fpr.test.mean=0.0611,tpr.test.mean=0.882,tp.test.mean= 864
## [Resample] OOB bootstrapping iter 36: mmce.test.mean=0.0938,fdr.test.mean=0.0848,kappa.test.mean=0.811,f1.test.mean=0.897,fpr.test.mean=0.0702,tpr.test.mean=0.879,tp.test.mean= 863
## [Resample] OOB bootstrapping iter 37: mmce.test.mean=0.0877,fdr.test.mean=0.084,kappa.test.mean=0.823,f1.test.mean=0.902,fpr.test.mean=0.0681,tpr.test.mean=0.889,tp.test.mean= 872
## [Resample] OOB bootstrapping iter 38: mmce.test.mean=0.094,fdr.test.mean=0.0687,kappa.test.mean=0.811,f1.test.mean= 0.9,fpr.test.mean=0.0601,tpr.test.mean=0.87,tp.test.mean= 922
## [Resample] OOB bootstrapping iter 39: mmce.test.mean=0.0968,fdr.test.mean=0.0908,kappa.test.mean=0.805,f1.test.mean=0.894,fpr.test.mean=0.0756,tpr.test.mean=0.879,tp.test.mean= 891
## [Resample] OOB bootstrapping iter 40: mmce.test.mean=0.0987,fdr.test.mean=0.0708,kappa.test.mean=0.801,f1.test.mean=0.891,fpr.test.mean=0.0587,tpr.test.mean=0.857,tp.test.mean= 879
## [Resample] OOB bootstrapping iter 41: mmce.test.mean=0.0952,fdr.test.mean=0.0858,kappa.test.mean=0.809,f1.test.mean=0.898,fpr.test.mean=0.0753,tpr.test.mean=0.883,tp.test.mean= 927
## [Resample] OOB bootstrapping iter 42: mmce.test.mean=0.0953,fdr.test.mean=0.0805,kappa.test.mean=0.808,f1.test.mean=0.895,fpr.test.mean=0.0664,tpr.test.mean=0.871,tp.test.mean= 868
## [Resample] OOB bootstrapping iter 43: mmce.test.mean=0.0991,fdr.test.mean=0.0703,kappa.test.mean= 0.8,f1.test.mean=0.89,fpr.test.mean=0.0568,tpr.test.mean=0.853,tp.test.mean= 846
## [Resample] OOB bootstrapping iter 44: mmce.test.mean=0.097,fdr.test.mean=0.0764,kappa.test.mean=0.804,f1.test.mean=0.892,fpr.test.mean=0.0617,tpr.test.mean=0.862,tp.test.mean= 870
## [Resample] OOB bootstrapping iter 45: mmce.test.mean=0.0957,fdr.test.mean=0.0817,kappa.test.mean=0.807,f1.test.mean=0.894,fpr.test.mean=0.0674,tpr.test.mean=0.872,tp.test.mean= 877
## [Resample] OOB bootstrapping iter 46: mmce.test.mean=0.0929,fdr.test.mean=0.0909,kappa.test.mean=0.812,f1.test.mean=0.897,fpr.test.mean=0.0744,tpr.test.mean=0.885,tp.test.mean= 870
## [Resample] OOB bootstrapping iter 47: mmce.test.mean=0.0984,fdr.test.mean=0.0964,kappa.test.mean=0.801,f1.test.mean=0.89,fpr.test.mean=0.0784,tpr.test.mean=0.878,tp.test.mean= 862
## [Resample] OOB bootstrapping iter 48: mmce.test.mean=0.0913,fdr.test.mean=0.0971,kappa.test.mean=0.816,f1.test.mean=0.899,fpr.test.mean=0.0796,tpr.test.mean=0.895,tp.test.mean= 883
## [Resample] OOB bootstrapping iter 49: mmce.test.mean=0.0953,fdr.test.mean=0.071,kappa.test.mean=0.808,f1.test.mean=0.894,fpr.test.mean=0.0571,tpr.test.mean=0.861,tp.test.mean= 877
## [Resample] OOB bootstrapping iter 50: mmce.test.mean=0.0907,fdr.test.mean=0.0655,kappa.test.mean=0.818,f1.test.mean=0.901,fpr.test.mean=0.0553,tpr.test.mean=0.87,tp.test.mean= 899
## [Resample] Aggr. Result: mmce.test.mean=0.0946,fdr.test.mean=0.0784,kappa.test.mean=0.809,f1.test.mean=0.895,fpr.test.mean=0.0645,tpr.test.mean=0.871,tp.test.mean= 878
th0 = tuneThreshold(pred = r$pred,measure = mes)$th
print(th0)
## [1] 0.5719247
th = .315

pred10 = setThreshold(pred10,th)
confusionMatrix(pred10$data$response, reference = pred10$data$truth)
## Confusion Matrix and Statistics
## 
##           Reference
## Prediction Lethal Viable
##     Lethal   1759    162
##     Viable      0   2996
##                                           
##                Accuracy : 0.9671          
##                  95% CI : (0.9617, 0.9719)
##     No Information Rate : 0.6423          
##     P-Value [Acc > NIR] : < 2.2e-16       
##                                           
##                   Kappa : 0.9297          
##  Mcnemar's Test P-Value : < 2.2e-16       
##                                           
##             Sensitivity : 1.0000          
##             Specificity : 0.9487          
##          Pos Pred Value : 0.9157          
##          Neg Pred Value : 1.0000          
##              Prevalence : 0.3577          
##          Detection Rate : 0.3577          
##    Detection Prevalence : 0.3907          
##       Balanced Accuracy : 0.9744          
##                                           
##        'Positive' Class : Lethal          
## 
tpred10 = predict(model10, newdata = data.frame(f2, check.names = TRUE))
tpred10 = setThreshold(tpred10,
                       th)

# Validation
validation2 = merge(
  JAX_Primary_Viability_correct_for_Hamed,
  data.frame(
    'MGI id' = rownames(f2),
    response = tpred10$data$response,
    org = f2$viability,
    l.p = tpred10$data$prob.Lethal,
    v.p = tpred10$data$prob.Viable,
    check.names = FALSE
  ),
  by = 'MGI id',
  all = TRUE
)
#### JAX data
library(caret)
vlv2 = droplevels(subset(
  validation2,
  validation2$Viability %in% c('Lethal', 'Viable') &
    !is.na(validation2$Viability) &
    !is.na(validation2$org)
))
vlvunknown = subset(vlv2,vlv2$org %in% 'unknown')
# For all JAX data
confusionMatrix(data = vlv2$response, reference = vlv2$Viability)
## Confusion Matrix and Statistics
## 
##           Reference
## Prediction Lethal Viable
##     Lethal    213     53
##     Viable      6    496
##                                         
##                Accuracy : 0.9232        
##                  95% CI : (0.902, 0.941)
##     No Information Rate : 0.7148        
##     P-Value [Acc > NIR] : < 2.2e-16     
##                                         
##                   Kappa : 0.823         
##  Mcnemar's Test P-Value : 2.115e-09     
##                                         
##             Sensitivity : 0.9726        
##             Specificity : 0.9035        
##          Pos Pred Value : 0.8008        
##          Neg Pred Value : 0.9880        
##              Prevalence : 0.2852        
##          Detection Rate : 0.2773        
##    Detection Prevalence : 0.3464        
##       Balanced Accuracy : 0.9380        
##                                         
##        'Positive' Class : Lethal        
## 
# For only unknown JAX data
table(vlvunknown$response, vlvunknown$Viability, dnn = c('Pred', 'TRUE'))
##         TRUE
## Pred     Lethal Viable
##   Lethal     10     16
##   Viable      6     42
confusionMatrix(data = vlvunknown$response, reference = vlvunknown$Viability)
## Confusion Matrix and Statistics
## 
##           Reference
## Prediction Lethal Viable
##     Lethal     10     16
##     Viable      6     42
##                                           
##                Accuracy : 0.7027          
##                  95% CI : (0.5852, 0.8034)
##     No Information Rate : 0.7838          
##     P-Value [Acc > NIR] : 0.96281         
##                                           
##                   Kappa : 0.2847          
##  Mcnemar's Test P-Value : 0.05501         
##                                           
##             Sensitivity : 0.6250          
##             Specificity : 0.7241          
##          Pos Pred Value : 0.3846          
##          Neg Pred Value : 0.8750          
##              Prevalence : 0.2162          
##          Detection Rate : 0.1351          
##    Detection Prevalence : 0.3514          
##       Balanced Accuracy : 0.6746          
##                                           
##        'Positive' Class : Lethal          
## 
print(data.frame(vlvunknown, err = vlvunknown$Viability != vlvunknown$response))
##          MGI.id      Gene Viability response     org         l.p
## 7    MGI:101919     Ap1g1    Lethal   Lethal unknown 0.446901587
## 22   MGI:103097    Anapc1    Lethal   Lethal unknown 0.893340476
## 34   MGI:104589     Actg2    Viable   Viable unknown 0.048288889
## 53   MGI:105938     Rab5b    Viable   Lethal unknown 0.528859524
## 59   MGI:106321     Dock9    Viable   Viable unknown 0.214799206
## 70   MGI:107536    Lgals4    Viable   Viable unknown 0.140478571
## 77   MGI:107861    Tubb2a    Viable   Lethal unknown 0.546673810
## 83   MGI:108059      Stx2    Viable   Lethal unknown 0.324454762
## 84   MGI:108094     Zfp92    Viable   Viable unknown 0.082874603
## 104 MGI:1096361      Jpt1    Viable   Viable unknown 0.254565873
## 112 MGI:1098258     Kif15    Viable   Lethal unknown 0.488892063
## 125 MGI:1196293   Tubgcp4    Lethal   Lethal unknown 0.997904762
## 138 MGI:1261771     Rnf24    Viable   Viable unknown 0.067996032
## 151 MGI:1278343  Nipsnap2    Viable   Lethal unknown 0.357439683
## 153 MGI:1289257     Gpd1l    Viable   Viable unknown 0.302930159
## 154 MGI:1289302    Ccdc59    Lethal   Lethal unknown 0.882178571
## 155 MGI:1289332     Eipr1    Lethal   Lethal unknown 0.318922222
## 177 MGI:1336153    Prkag2    Viable   Lethal unknown 0.343220635
## 194 MGI:1342273     Gsto1    Viable   Lethal unknown 0.583850794
## 197 MGI:1344395      Chd3    Viable   Lethal unknown 0.701188889
## 209 MGI:1349429    Arl2bp    Viable   Viable unknown 0.161171429
## 251 MGI:1890359   Igf2bp3    Viable   Lethal unknown 0.350969841
## 258 MGI:1891883     C2cd2    Viable   Lethal unknown 0.344879365
## 307 MGI:1914703  Slc25a46    Viable   Lethal unknown 0.326057937
## 318 MGI:1914980 Gabarapl1    Viable   Viable unknown 0.201890476
## 327 MGI:1915153     Rgs19    Viable   Lethal unknown 0.358617460
## 346 MGI:1915817    Cgref1    Viable   Viable unknown 0.159530159
## 350 MGI:1915932   Slc44a2    Viable   Viable unknown 0.261739683
## 356 MGI:1916115      Arv1    Viable   Viable unknown 0.304516667
## 392 MGI:1918039      Kynu    Viable   Viable unknown 0.064354762
## 397 MGI:1918269     Kctd1    Viable   Viable unknown 0.169440476
## 414 MGI:1918957    Ubiad1    Lethal   Viable unknown 0.093896825
## 422 MGI:1919131     Apmap    Viable   Viable unknown 0.211026190
## 426 MGI:1919173    Borcs6    Lethal   Viable unknown 0.085489683
## 441 MGI:1919940     Grrp1    Viable   Viable unknown 0.191636508
## 447 MGI:1920417   Arhgap8    Viable   Viable unknown 0.142352381
## 456 MGI:1921094   Ankrd45    Viable   Viable unknown 0.176569841
## 460 MGI:1921282   Sdr42e1    Viable   Viable unknown 0.021806349
## 465 MGI:1921386   Sec14l1    Viable   Lethal unknown 0.544245238
## 474 MGI:1921607     Efhd1    Viable   Viable unknown 0.007593651
## 481 MGI:1921778     Mgme1    Viable   Viable unknown 0.205244444
## 510 MGI:1923805      Mmaa    Viable   Viable unknown 0.257265873
## 527 MGI:1924753      Alg9    Lethal   Lethal unknown 0.641393651
## 531 MGI:1925288     Mccc2    Lethal   Viable unknown 0.301406349
## 543 MGI:1927225    Tbc1d8    Viable   Viable unknown 0.194488889
## 558 MGI:1929520    Eef1b2    Viable   Lethal unknown 0.799331746
## 570 MGI:1930265    Osbpl5    Viable   Viable unknown 0.072840476
## 590 MGI:1933549     Slmap    Lethal   Lethal unknown 0.686993651
## 615 MGI:2140475  AU040320    Viable   Viable unknown 0.149807143
## 626 MGI:2143920  Slc26a10    Viable   Viable unknown 0.101342063
## 649 MGI:2178759   Rtn4ip1    Lethal   Lethal unknown 0.613764286
## 657 MGI:2183451    Rab40b    Viable   Viable unknown 0.020388889
## 682 MGI:2387603     Ahsa1    Viable   Viable unknown 0.139323016
## 711 MGI:2442485     Myo5c    Viable   Viable unknown 0.018299206
## 719 MGI:2442892   Clptm1l    Viable   Viable unknown 0.279408730
## 723 MGI:2443267     Agfg2    Viable   Viable unknown 0.105279365
## 734 MGI:2444085    Glyctk    Viable   Viable unknown 0.307040476
## 760 MGI:2446186    Lpgat1    Lethal   Viable unknown 0.138750000
## 767 MGI:2449492     Alpk2    Viable   Viable unknown 0.111100000
## 773 MGI:2652878   Tbc1d16    Viable   Lethal unknown 0.378023810
## 782 MGI:2661175    Cnksr2    Viable   Viable unknown 0.163145238
## 798 MGI:2681869    Cep135    Lethal   Lethal unknown 0.656429365
## 812 MGI:2685047     Hmcn1    Viable   Viable unknown 0.123962698
## 817 MGI:2685325     Hspb6    Viable   Viable unknown 0.090265079
## 822 MGI:2685483     Gsg1l    Viable   Viable unknown 0.241080952
## 835 MGI:2687327      Ano8    Viable   Viable unknown 0.093744444
## 851 MGI:3045342    Zfp711    Viable   Viable unknown 0.309914286
## 854 MGI:3576497    Greb1l    Lethal   Viable unknown 0.093215079
## 867 MGI:3605641    Shisa7    Viable   Viable unknown 0.006399206
## 885   MGI:88137    Bckdhb    Lethal   Lethal unknown 0.381561111
## 908   MGI:95593     Fuca1    Viable   Lethal unknown 0.361082540
## 912   MGI:95784      Gnb2    Viable   Viable unknown 0.193906349
## 949   MGI:97578      Phkb    Lethal   Viable unknown 0.144780159
## 969   MGI:99401    Adora1    Viable   Viable unknown 0.036796032
##             v.p   err
## 7   0.553098413 FALSE
## 22  0.106659524 FALSE
## 34  0.951711111 FALSE
## 53  0.471140476  TRUE
## 59  0.785200794 FALSE
## 70  0.859521429 FALSE
## 77  0.453326190  TRUE
## 83  0.675545238  TRUE
## 84  0.917125397 FALSE
## 104 0.745434127 FALSE
## 112 0.511107937  TRUE
## 125 0.002095238 FALSE
## 138 0.932003968 FALSE
## 151 0.642560317  TRUE
## 153 0.697069841 FALSE
## 154 0.117821429 FALSE
## 155 0.681077778 FALSE
## 177 0.656779365  TRUE
## 194 0.416149206  TRUE
## 197 0.298811111  TRUE
## 209 0.838828571 FALSE
## 251 0.649030159  TRUE
## 258 0.655120635  TRUE
## 307 0.673942063  TRUE
## 318 0.798109524 FALSE
## 327 0.641382540  TRUE
## 346 0.840469841 FALSE
## 350 0.738260317 FALSE
## 356 0.695483333 FALSE
## 392 0.935645238 FALSE
## 397 0.830559524 FALSE
## 414 0.906103175  TRUE
## 422 0.788973810 FALSE
## 426 0.914510317  TRUE
## 441 0.808363492 FALSE
## 447 0.857647619 FALSE
## 456 0.823430159 FALSE
## 460 0.978193651 FALSE
## 465 0.455754762  TRUE
## 474 0.992406349 FALSE
## 481 0.794755556 FALSE
## 510 0.742734127 FALSE
## 527 0.358606349 FALSE
## 531 0.698593651  TRUE
## 543 0.805511111 FALSE
## 558 0.200668254  TRUE
## 570 0.927159524 FALSE
## 590 0.313006349 FALSE
## 615 0.850192857 FALSE
## 626 0.898657937 FALSE
## 649 0.386235714 FALSE
## 657 0.979611111 FALSE
## 682 0.860676984 FALSE
## 711 0.981700794 FALSE
## 719 0.720591270 FALSE
## 723 0.894720635 FALSE
## 734 0.692959524 FALSE
## 760 0.861250000  TRUE
## 767 0.888900000 FALSE
## 773 0.621976190  TRUE
## 782 0.836854762 FALSE
## 798 0.343570635 FALSE
## 812 0.876037302 FALSE
## 817 0.909734921 FALSE
## 822 0.758919048 FALSE
## 835 0.906255556 FALSE
## 851 0.690085714 FALSE
## 854 0.906784921  TRUE
## 867 0.993600794 FALSE
## 885 0.618438889 FALSE
## 908 0.638917460  TRUE
## 912 0.806093651 FALSE
## 949 0.855219841  TRUE
## 969 0.963203968 FALSE
write.csv(
  data.frame(
    'MGI id' = rownames(f00),
    'Cluster SNE' = mergSNE$clusters,
    'SNE merged' = mergSNE$merged.clu,
    'SNE assigned viability' = mergSNE$assigned.viability,
    'Clust org data' = mergOrg$clusters,
    'Org merged' = mergOrg$merged.clu,
    'Org assigned viability' = mergOrg$assigned.viability,
    True.viability = tpred10$data$truth,
    Predicted.Viability = tpred10$data$response,
    Lethal.probility = tpred10$data$prob.Lethal,
    Viable.probability = tpred10$data$prob.Viable,
    Absolute.diff.probs  = abs(tpred10$data$prob.Lethal-tpred10$data$prob.Viable),
    f00,
    SNE.dimensions = dM$rdata,
    check.names = FALSE
  ),
  file = paste('All data and predictions_',Sys.Date(),'.csv',sep = '')
)

##############################################################
# ##########
# #classif.nnet, classif.LiblineaRL1L2SVC, classif.lssvm||,classif.lvq1|,classif.mda,classif.mlp,classif.multinom,classif.nnet|classif.nnTrain,classif.OneR,classif.PART,classif.qda,classif.quaDA,classif.randomForest|||classif.randomForestSRC|||classif.clusterSVM
# library(caret)
# library(mlr)#classif.quaDA *classif.nnTrain
# tpred1 = tpred2 = data.frame(org.viability = f2$viability)
# l1 = l2 = lrns = list()
# adj = max(prop.table(table(f20$viability)))
# weight = .3 * (f20$viability %in% 'Viable') + .70 * (f20$viability %in% 'Lethal')
# set.seed(seed)
# for (i in 1:100) {
#   smp = sample(
#     1:nrow(f20),
#     #  training
#     size = nrow(f20) * .5,
#     replace = FALSE,
#     prob = weight
#   )
#   csmp = (1:nrow(f20))[-smp] #  test
#
#   task = mlr::makeClassifTask(
#     data = data.frame(f20[smp, ], check.names = T),
#     target = "viability",
#     positive = 'Lethal'
#   )
#   task1 = task2 = task
#   # task1 = task2 = oversample(task = task,rate =max(1, .75*( 1/max(prop.table(
#   #   table(f20$viability[smp])
#   # )))) )
#   print(prop.table(table(f20$viability[smp])))
#   print(prop.table(table(f20$viability)))
#   # print(table(getTaskTargets(task1)))
#   lrn1 = mlr::makeLearner('classif.randomForest',
#                           predict.type = 'prob')
#   lrn2 = mlr::makeLearner('classif.nnet',
#                           predict.type = 'prob')
#   lrns[[i]] = lrn1
#   #model0 = mlr::train(lrn.over, task1,subset = smp)
#   model1 = mlr::train(lrn1, task1)
#   model2 = mlr::train(lrn2, task2)
#
#   #pred0 = predict(model0,task=task1,subset = csmp)
#   pred1 = predict(model1, newdata = f20[csmp, -1])
#   pred2 = predict(model2, newdata = f20[csmp, -1])
#
#   pred1$data$truth = pred2$data$truth = f20$viability[csmp]
#
#
#   pred1 = setThreshold(
#     pred1,
#     threshold = adj * tuneThreshold(
#       pred = pred1,
#       measure = list(mmce),
#       task = task1,
#       nsub = 50
#     )$th
#   )
#   pred2 = setThreshold(
#     pred2,
#     threshold =adj * tuneThreshold(
#       pred = pred2,
#       measure = list(mmce),
#       task = task2,
#       nsub = 50
#     )$th
#   )
#
#
#
#   tpred1 = cbind(tpred2, predict(model1, newdata = data.frame(f2[, -1], check.names = TRUE))$data$response)
#   tpred2 = cbind(tpred2, predict(model2, newdata = data.frame(f2[, -1], check.names = TRUE))$data$response)
#   colnames(tpred1)[-1] = colnames(tpred2)[-1] = paste('rep_', 1:i, sep = '')
#   print(
#     confusionMatrix(
#       data = pred1$data$response,
#       pred1$data$truth,
#       mode = 'prec_recall'
#     )
#   )
#   print(
#     confusionMatrix(
#       data = pred2$data$response,
#       pred2$data$truth,
#       mode = 'prec_recall'
#     )
#   )
#   #performance(pred1, measures = list(mmce, acc))
#   l1[[i]] = calculateConfusionMatrix(pred1, relative = TRUE, sums = FALSE)$relative.row # relative.row
#   l2[[i]] = calculateConfusionMatrix(pred2, relative = TRUE, sums = FALSE)$relative.row # relative.row
#   message('\n iteration : ', i)
#   #plotLearnerPrediction(lrn1, task = task1)
#   #plotLearnerPrediction(lrn2, task = task2)
# }
#
#
# ## receiver operating characteristic (ROC)  plot
# # This page is mainly devoted to receiver operating characteristic (ROC) curves that plot the true positive rate (sensitivity) on the vertical axis against the false positive rate (1 - specificity, fall-out) on the horizontal axis for all possible threshold values. Creating other performance plots like lift charts or precision/recall graphs works analogously and is shown briefly.
#
# ### Benchmark
# ### Single experimetn ROC
# set.seed(seed)
# rdesc.outer = makeResampleDesc("Bootstrap", iters = 15)
# bmr = benchmark(
#   list(lrn1, lrn2),
#   tasks = task1,
#   resampling = rdesc.outer,
#   measures =  list(auc, mmce),
#   show.info = FALSE
# )
# dfBMR = generateThreshVsPerfData(bmr, measures = list(tp, kappa, f1, fpr, tpr, mmce))
# plotROCCurves(dfBMR)
# plotThreshVsPerf(dfBMR)
# #####
#
#
# f = function(lst) {
#   l = length(lst)
#   a = matrix(ncol = 4, nrow = l)
#   for (i in 1:l) {
#     a[i,] = c(lst[[i]][1, 1], lst[[i]][1, 2], lst[[i]][2, 1], lst[[i]][2, 2])
#   }
#   return(a)
# }
#
# library(pastecs)
# l1[[1]]
# stat.desc(f(l1), basic = FALSE)
# stat.desc(f(l2), basic = FALSE)
#
#
# ### total prediction
# TPRED1 = do.call(rbind, apply(tpred1[, -1], 1, function(x) {
#   t = prop.table(table(x))
#   data.frame(pred  = as.character(names(t)[which.max(t)]),
#              prob = t[which.max(t)])
# }))
#
# TPRED2 = do.call(rbind, apply(tpred2[, -1], 1, function(x) {
#   t = prop.table(table(x))
#   data.frame(pred  = as.character(names(t)[which.max(t)]),
#              prob = t[which.max(t)])
# }))
# table(TPRED1$pred, TPRED2$pred)
#
# table(f2$viability, TPRED1$pred)
# table(f2$viability, TPRED2$pred)
#
# # write.csv(x = data.frame(prediction = TPRED1,newdata,f2[,-1]),
# #           file = 'final_pred_meth_1.csv')
# # write.csv(x = data.frame(prediction = TPRED2,newdata,f2[,-1]),
# #           file = 'final_pred_meth_2.csv')
#
# # Validation
# validation = merge(
#   JAX_Primary_Viability_correct_for_Hamed,
#   data.frame(
#     'MGI id' = rownames(f2),
#     prediction = TPRED1$pred,
#     probability = TPRED1$prob,
#     org = f2$viability,
#     merged = mergSNE$assigned.viability,
#     check.names = FALSE
#   ),
#   by = 'MGI id',
#   all = TRUE
# )
# #write.csv(x = validation, file = 'validation.csv')
#

#
# #### JAX data
# library(caret)
# vlv = droplevels(subset(
#   validation,
#   validation$Viability %in% c('Lethal', 'Viable') &
#     validation$org %in% c('unknown')
# ))
# table(vlv$prediction, vlv$Viability, dnn = c('Pred', 'TRUE'))
# confusionMatrix(data = vlv$prediction, reference = vlv$Viability)
# df = (data.frame(vlv, err = vlv$Viability != vlv$prediction))
# print(df)
# tapply(df$probability[df$err == TRUE], df$Viability[df$err == TRUE], summary)