New patches: [unrevert anonymous**20090709125028] < > { move ./src/Generations/GS20.hs ./src/Generations/QtGS20.hs move ./src/PyroSim.hs ./src/Sim454.hs addfile ./Flower.hs hunk ./Flower.hs 1 - + rmfile ./Flower.hs addfile ./src/Generations/GS20.hs hunk ./src/Generations/GS20.hs 1 +module Generations.GS20 where + +import Generations.GenBase +import Statistics + +import Data.Array +import Bio.Sequence.SFF +import qualified Data.ByteString.Char8 as BC +import qualified Data.ByteString as B + + +gs20 :: Generation +gs20 = Gen { + name = "GS20" + , model = \h p -> let h' = fromIntegral h + in if h == 0 then LogNormal (negate 2.5) 0.2 else Normal h' (0.1*h') + , getqual = B.unpack . (!) gs20qt + , commonhd = default_ch { + num_reads = undefined -- :: Int32 - ~400K? + , flow_length = 168 -- :: Int16 + , flow = BC.concat $ replicate 42 $ BC.pack "TACG" -- :: ByteString + , key = BC.pack "TCAG" -- :: ByteString + } + } + +gs20qt :: QualTable +gs20qt = mkQualTable (0,3100) $ map (\(x,y) -> (x,BC.pack y)) [ + (0,"\NUL"),(1,"\NUL"),(2,"\NUL"),(3,"\NUL"),(4,"\NUL"),(5,"\NUL"),(6,"\NUL"),(7,"\NUL"),(8,"\NUL"),(9,"\NUL"),(10,"\NUL") + ,(11,"\NUL"),(12,"\NUL"),(13,"\NUL"),(14,"\NUL"),(15,"\NUL"),(16,"\NUL"),(17,"\NUL"),(18,"\NUL"),(19,"\NUL"),(20,"\NUL") + ,(21,"\NUL"),(22,"\NUL"),(23,"\NUL"),(24,"\NUL"),(25,"\NUL"),(26,"\NUL"),(27,"\NUL"),(28,"\NUL"),(29,"\NUL"),(30,"\NUL") + ,(31,"\NUL"),(32,"\NUL"),(33,"\NUL"),(34,"\NUL"),(35,"\NUL"),(36,"\NUL"),(37,"\NUL"),(38,"\NUL"),(39,"\NUL") + ,(40,"\NUL"),(41,"\NUL"),(42,"\NUL"),(43,"\NUL"),(44,"\NUL"),(45,"\NUL"),(46,"\NUL"),(47,"\NUL"),(48,"\NUL"),(49,"\NUL") + ,(50,"\b"),(51,"\b"),(52,"\b"),(53,"\t"),(54,"\t"),(55,"\n"),(56,"\n"),(57,"\n"),(58,"\n"),(59,"\v") + ,(60,"\v"),(61,"\f"),(62,"\r"),(63,"\r"),(64,"\r"),(65,"\r"),(66,"\SO"),(67,"\SI"),(68,"\SI"),(69,"\DLE") + ,(70,"\DLE"),(71,"\DC1"),(72,"\DC1"),(73,"\DC1"),(74,"\DC2"),(75,"\DC3"),(76,"\DC3"),(77,"\DC3"),(78,"\DC4"),(79,"\NAK") + ,(80,"\NAK"),(81,"\NAK"),(82,"\SYN"),(83,"\ETB"),(84,"\ETB"),(85,"\ETB"),(86,"\CAN"),(87,"\CAN"),(88,"\EM"),(89,"\EM") + ,(90,"\SUB"),(91,"\SUB"),(92,"\SUB"),(93,"\SUB"),(94,"\ESC"),(95,"\ESC"),(96,"\ESC"),(97,"\ESC"),(98,"\FS"),(99,"\FS") + ,(100,"\FS"),(101,"\FS"),(102,"\FS"),(103,"\FS"),(104,"\FS"),(105,"\FS"),(106,"\FS"),(107,"\FS"),(108,"\FS"),(109,"\FS") + ,(110,"\FS"),(111,"\FS"),(112,"\ESC"),(113,"\ESC"),(114,"\ESC"),(115,"\SUB"),(116,"\SUB"),(117,"\SUB"),(118,"\EM"),(119,"\EM") + ,(120,"\CAN"),(121,"\CAN"),(122,"\CAN"),(123,"\ETB"),(124,"\ETB"),(125,"\ETB"),(126,"\SYN"),(127,"\SYN"),(128,"\SYN"),(129,"\SYN") + ,(130,"\NAK"),(131,"\NAK"),(132,"\NAK"),(133,"\DC4"),(134,"\DC4"),(135,"\DC4"),(136,"\DC4"),(137,"\DC4"),(138,"\DC4"),(139,"\DC3") + ,(140,"\DC3"),(141,"\DC3"),(142,"\DC3"),(143,"\DC3"),(144,"\DC3"),(145,"\DC3"),(146,"\DC3"),(147,"\DC3"),(148,"\DC4"),(149,"\DC4") + ,(150,"\DC4\EOT"),(151,"\DC4\ENQ"),(152,"\DC4\ENQ"),(153,"\DC4\ENQ"),(154,"\NAK\ACK"),(155,"\NAK\ACK"),(156,"\NAK\a"),(157,"\NAK\a"),(158,"\SYN\b"),(159,"\SYN\b") + ,(160,"\SYN\b"),(161,"\ETB\t"),(162,"\ETB\t"),(163,"\CAN\n"),(164,"\CAN\v"),(165,"\CAN\v"),(166,"\EM\f"),(167,"\EM\f"),(168,"\EM\f"),(169,"\SUB\r") + ,(170,"\SUB\r"),(171,"\SUB\SO"),(172,"\ESC\SI"),(173,"\ESC\SI"),(174,"\FS\DLE"),(175,"\FS\DLE"),(176,"\FS\DC1"),(177,"\GS\DC1"),(178,"\GS\DC1"),(179,"\GS\DC2") + ,(180,"\RS\DC2"),(181,"\RS\DC2"),(182,"\RS\DC3"),(183,"\US\DC4"),(184,"\US\DC4"),(185,"\US\DC4"),(186,"\US\NAK"),(187," \NAK"),(188," \NAK"),(189," \SYN") + ,(190," \SYN"),(191,"!\ETB"),(192,"!\ETB"),(193,"!\ETB"),(194,"!\ETB"),(195,"\"\CAN"),(196,"\"\CAN"),(197,"\"\CAN"),(198,"\"\CAN"),(199,"\"\EM") + ,(200,"\"\EM"),(201,"#\EM"),(202,"#\EM"),(203,"#\EM"),(204,"#\SUB"),(205,"#\SUB"),(206,"#\SUB"),(207,"#\SUB"),(208,"#\SUB"),(209,"#\SUB") + ,(210,"#\SUB"),(211,"#\SUB"),(212,"#\SUB"),(213,"#\SUB"),(214,"#\SUB"),(215,"#\SUB"),(216,"#\SUB"),(217,"#\SUB"),(218,"#\SUB"),(219,"#\SUB") + ,(220,"#\SUB"),(221,"#\SUB"),(222,"#\SUB"),(223,"#\SUB"),(224,"#\SUB"),(225,"#\SUB"),(226,"#\SUB"),(227,"\"\SUB"),(228,"\"\SUB"),(229,"\"\SUB") + ,(230,"\"\SUB"),(231,"\"\SUB"),(232,"\"\SUB"),(233,"\"\SUB"),(234,"\"\SUB"),(235,"\"\SUB"),(236,"\"\SUB"),(237,"!\SUB"),(238,"!\EM"),(239,"!\EM") + ,(240,"!\EM"),(241,"!\EM"),(242,"!\EM"),(243,"!\EM"),(244,"!\EM"),(245,"!\EM"),(246,"!\EM"),(247,"!\EM"),(248,"!\EM"),(249,"!\EM") + ,(250,"!\EM\SOH"),(251,"!\EM\SOH"),(252,"!\EM\SOH"),(253,"!\EM\SOH"),(254,"!\EM\STX"),(255,"!\EM\STX"),(256,"!\EM\STX"),(257,"!\EM\STX"),(258,"!\EM\STX"),(259,"!\EM\STX") + ,(260,"!\SUB\ETX"),(261,"!\SUB\ETX"),(262,"!\SUB\ETX"),(263,"!\SUB\ETX"),(264,"!\SUB\ETX"),(265,"!\SUB\EOT"),(266,"!\SUB\EOT"),(267,"!\SUB\EOT"),(268,"!\SUB\EOT"),(269,"\"\ESC\ENQ") + ,(270,"\"\ESC\ENQ"),(271,"\"\ESC\ENQ"),(272,"\"\ESC\ENQ"),(273,"\"\ESC\ACK"),(274,"\"\ESC\ACK"),(275,"#\FS\ACK"),(276,"#\FS\ACK"),(277,"#\FS\a"),(278,"#\FS\a"),(279,"#\FS\a") + ,(280,"#\FS\a"),(281,"#\FS\b"),(282,"#\FS\b"),(283,"$\GS\b"),(284,"$\GS\b"),(285,"$\GS\t"),(286,"$\GS\t"),(287,"$\GS\t"),(288,"$\RS\t"),(289,"$\RS\t") + ,(290,"%\RS\n"),(291,"%\RS\n"),(292,"%\RS\n"),(293,"%\RS\n"),(294,"%\RS\n"),(295,"%\RS\v"),(296,"%\RS\v"),(297,"%\US\v"),(298,"%\US\v"),(299,"&\US\f") + ,(300,"&\US\f"),(301,"&\US\f"),(302,"&\US\f"),(303,"&\US\f"),(304,"&\US\f"),(305,"&\US\r"),(306,"&\US\r"),(307,"&\US\r"),(308,"& \r"),(309,"& \r") + ,(310,"& \r"),(311,"& \r"),(312,"& \SO"),(313,"& \SO"),(314,"& \SO"),(315,"& \SO"),(316,"& \SO"),(317,"' \SO"),(318,"' \SO"),(319,"' \SO") + ,(320,"' \SO"),(321,"' \SO"),(322,"' \SI"),(323,"' \SI"),(324,"' \SI"),(325,"& \SI"),(326,"& \SI"),(327,"& \SI"),(328,"& \SI"),(329,"& \SI") + ,(330,"& \SI"),(331,"& \SI"),(332,"& \SI"),(333,"& \SI"),(334,"& \SI"),(335,"& \SI"),(336,"& \SI"),(337,"& \SI"),(338,"& \SI"),(339,"& \SI") + ,(340,"& \SI"),(341,"& \SI"),(342,"& \SI"),(343,"&\US\SI"),(344,"&\US\SI"),(345,"&\US\SI"),(346,"&\US\SI"),(347,"&\US\DLE"),(348,"&\US\DLE"),(349,"&\US\DLE") + ,(350,"&\US\DLE"),(351,"&\US\DLE\SOH"),(352,"&\US\DLE\SOH"),(353,"&\US\DLE\SOH"),(354,"&\US\DLE\SOH"),(355,"&\US\DLE\SOH"),(356,"&\US\DLE\SOH"),(357,"&\US\DLE\SOH"),(358,"&\US\DLE\SOH"),(359,"&\US\DLE\SOH") + ,(360,"&\US\DLE\STX"),(361,"&\US\DLE\STX"),(362,"&\US\DLE\STX"),(363,"&\US\DLE\STX"),(364,"&\US\DLE\STX"),(365,"&\US\DLE\STX"),(366,"& \DLE\STX"),(367,"& \DLE\STX"),(368,"& \DC1\STX"),(369,"& \DC1\ETX") + ,(370,"& \DC1\ETX"),(371,"& \DC1\ETX"),(372,"& \DC1\ETX"),(373,"& \DC1\ETX"),(374,"& \DC1\ETX"),(375,"& \DC1\ETX"),(376,"' \DC1\EOT"),(377,"' \DC1\EOT"),(378,"' \DC1\EOT"),(379,"' \DC1\EOT") + ,(380,"' \DC1\EOT"),(381,"' \DC2\EOT"),(382,"' \DC2\EOT"),(383,"' \DC2\EOT"),(384,"' \DC2\EOT"),(385,"' \DC2\EOT"),(386,"' \DC2\ENQ"),(387,"' \DC2\ENQ"),(388,"'!\DC2\ENQ"),(389,"'!\DC2\ENQ") + ,(390,"'!\DC2\ENQ"),(391,"'!\DC2\ENQ"),(392,"'!\DC2\ENQ"),(393,"'!\DC3\ACK"),(394,"(!\DC3\ACK"),(395,"(!\DC3\ACK"),(396,"(!\DC3\ACK"),(397,"(!\DC3\ACK"),(398,"(!\DC3\ACK"),(399,"(!\DC3\ACK") + ,(400,"(!\DC3\ACK"),(401,"(!\DC3\a"),(402,"(!\DC3\a"),(403,"(!\DC3\a"),(404,"(!\DC3\a"),(405,"(!\DC4\a"),(406,"(!\DC4\a"),(407,"(!\DC4\a"),(408,"(!\DC4\a"),(409,"(!\DC4\a") + ,(410,"(\"\DC4\b"),(411,"(\"\DC4\b"),(412,"(\"\DC4\b"),(413,"(\"\DC4\b"),(414,"(\"\DC4\b"),(415,"(\"\DC4\b"),(416,"(\"\DC4\b"),(417,"(\"\DC4\b"),(418,"(\"\DC4\b"),(419,")\"\DC4\b") + ,(420,")\"\DC4\t"),(421,")\"\DC4\t"),(422,")\"\DC4\t"),(423,")\"\DC4\t"),(424,")\"\DC4\t"),(425,")\"\DC4\t"),(426,")\"\NAK\t"),(427,")\"\NAK\t"),(428,")\"\NAK\t"),(429,")\"\NAK\t") + ,(430,")\"\NAK\t"),(431,")\"\NAK\t"),(432,")\"\NAK\t"),(433,")\"\NAK\t"),(434,")\"\NAK\n"),(435,")\"\NAK\n"),(436,")\"\NAK\n"),(437,")\"\NAK\n"),(438,")\"\NAK\n"),(439,")\"\NAK\n") + ,(440,")\"\NAK\n"),(441,")\"\NAK\n"),(442,")\"\NAK\n"),(443,")\"\NAK\n"),(444,")\"\NAK\n"),(445,")\"\NAK\n"),(446,")\"\NAK\n"),(447,")\"\NAK\n"),(448,")\"\NAK\n"),(449,")\"\NAK\n") + ,(450,")\"\NAK\n"),(451,")\"\NAK\n\SOH"),(452,")\"\NAK\n\SOH"),(453,")\"\NAK\n\SOH"),(454,")\"\NAK\v\SOH"),(455,")\"\NAK\v\SOH"),(456,")\"\NAK\v\SOH"),(457,")\"\NAK\v\SOH"),(458,")\"\NAK\v\SOH"),(459,")\"\NAK\v\SOH") + ,(460,")\"\NAK\v\SOH"),(461,")\"\NAK\v\SOH"),(462,")\"\NAK\v\SOH"),(463,")\"\NAK\v\SOH"),(464,")\"\NAK\v\SOH"),(465,")\"\NAK\v\SOH"),(466,")\"\NAK\v\SOH"),(467,")\"\NAK\v\SOH"),(468,")!\NAK\v\SOH"),(469,")!\NAK\v\SOH") + ,(470,")!\NAK\v\SOH"),(471,")!\NAK\v\SOH"),(472,")!\NAK\v\SOH"),(473,")!\NAK\v\STX"),(474,")\"\NAK\v\STX"),(475,")\"\NAK\v\STX"),(476,")\"\NAK\v\STX"),(477,")\"\NAK\v\STX"),(478,")\"\NAK\f\STX"),(479,")\"\NAK\f\STX") + ,(480,")\"\NAK\f\STX"),(481,")\"\NAK\f\STX"),(482,")\"\NAK\f\STX"),(483,")\"\NAK\f\STX"),(484,")\"\NAK\f\STX"),(485,")\"\NAK\f\STX"),(486,")\"\NAK\f\STX"),(487,")\"\NAK\f\STX"),(488,")\"\SYN\f\ETX"),(489,")\"\SYN\f\ETX") + ,(490,")\"\SYN\f\ETX"),(491,")\"\SYN\f\ETX"),(492,")\"\SYN\f\ETX"),(493,")\"\SYN\f\ETX"),(494,")\"\SYN\f\ETX"),(495,")\"\SYN\f\ETX"),(496,")\"\SYN\f\ETX"),(497,")\"\SYN\r\ETX"),(498,")\"\SYN\r\ETX"),(499,")\"\SYN\r\ETX") + ,(500,")\"\SYN\r\ETX"),(501,")\"\SYN\r\EOT"),(502,")\"\SYN\r\EOT"),(503,")\"\SYN\r\EOT"),(504,")\"\SYN\r\EOT"),(505,")\"\SYN\r\EOT"),(506,")\"\SYN\r\EOT"),(507,")\"\SYN\r\EOT"),(508,")\"\SYN\r\EOT"),(509,")\"\SYN\r\EOT") + ,(510,")\"\SYN\r\EOT"),(511,")\"\SYN\r\EOT"),(512,")\"\SYN\r\EOT"),(513,")\"\SYN\r\EOT"),(514,")\"\SYN\r\EOT"),(515,"*\"\SYN\r\ENQ"),(516,"*\"\SYN\r\ENQ"),(517,"*\"\SYN\r\ENQ"),(518,"*\"\SYN\r\ENQ"),(519,"*\"\SYN\SO\ENQ") + ,(520,"*\"\SYN\SO\ENQ"),(521,"*\"\SYN\SO\ENQ"),(522,"*\"\SYN\SO\ENQ"),(523,"*\"\SYN\SO\ENQ"),(524,"*\"\SYN\SO\ENQ"),(525,"*\"\SYN\SO\ENQ"),(526,"*\"\SYN\SO\ENQ"),(527,"*\"\SYN\SO\ENQ"),(528,"*\"\SYN\SO\ENQ"),(529,"*\"\SYN\SO\ENQ") + ,(530,"*\"\SYN\SO\ENQ"),(531,"*\"\SYN\SO\ACK"),(532,"*\"\SYN\SO\ACK"),(533,"*\"\SYN\SO\ACK"),(534,"*\"\SYN\SO\ACK"),(535,"*\"\SYN\SO\ACK"),(536,"*\"\SYN\SO\ACK"),(537,"*\"\SYN\SO\ACK"),(538,"*\"\SYN\SO\ACK"),(539,"*\"\SYN\SO\ACK") + ,(540,"*\"\SYN\SO\ACK"),(541,"*\"\SYN\SO\ACK"),(542,"*\"\SYN\SO\ACK"),(543,"*\"\SYN\SO\ACK"),(544,"*\"\SYN\SO\ACK"),(545,"*\"\SYN\SO\ACK"),(546,"*\"\SYN\SO\ACK"),(547,"*\"\SYN\SO\ACK"),(548,"*\"\SYN\SO\ACK"),(549,"*\"\SYN\SO\ACK") + ,(550,"*\"\SYN\SO\ACK\SOH"),(551,"*\"\SYN\SO\a\SOH"),(552,"*\"\SYN\SO\a\SOH"),(553,"*\"\SYN\SO\a\SOH"),(554,"*\"\SYN\SO\a\SOH"),(555,"*\"\SYN\SO\a\SOH"),(556,"*\"\SYN\SO\a\SOH"),(557,"*\"\SYN\SO\a\SOH"),(558,"*\"\SYN\SO\a\SOH"),(559,"*\"\SYN\SO\a\SOH") + ,(560,"*\"\SYN\SO\a\SOH"),(561,"*\"\SYN\SI\a\SOH"),(562,"*\"\SYN\SI\a\SOH"),(563,"*\"\SYN\SI\a\SOH"),(564,"*\"\SYN\SI\a\SOH"),(565,"*\"\SYN\SI\a\SOH"),(566,"*\"\SYN\SI\a\SOH"),(567,"*\"\SYN\SI\a\SOH"),(568,"*\"\SYN\SI\a\SOH"),(569,"*!\SYN\SI\a\SOH") + ,(570,"*!\SYN\SI\a\SOH"),(571,"*!\SYN\SI\a\SOH"),(572,"*!\SYN\SI\a\SOH"),(573,"*!\SYN\SI\a\SOH"),(574,"*!\SYN\SI\a\SOH"),(575,"*!\SYN\SI\a\SOH"),(576,"*!\SYN\SI\a\SOH"),(577,"*!\SYN\SI\b\SOH"),(578,"*!\SYN\SI\b\SOH"),(579,"*!\SYN\SI\b\SOH") + ,(580,"*!\SYN\SI\b\SOH"),(581,"*!\SYN\SI\b\SOH"),(582,"*!\SYN\SI\b\SOH"),(583,"*!\SYN\SI\b\SOH"),(584,"*!\SYN\SI\b\SOH"),(585,"*!\SYN\SI\b\SOH"),(586,"*!\SYN\SI\b\SOH"),(587,"*!\SYN\SI\b\SOH"),(588,"*!\SYN\SI\b\STX"),(589,"*!\SYN\SI\b\STX") + ,(590,"*!\SYN\SI\b\STX"),(591,"*!\SYN\SI\b\STX"),(592,"*!\SYN\SI\b\STX"),(593,"*!\SYN\SI\b\STX"),(594,"*!\SYN\SI\b\STX"),(595,"*!\SYN\SI\b\STX"),(596,"*!\SYN\SI\b\STX"),(597,"*!\SYN\SI\b\STX"),(598,"*!\SYN\SI\b\STX"),(599,"*!\SYN\SI\b\STX") + ,(600,"*!\SYN\SI\b\STX"),(601,"*!\SYN\SI\b\STX"),(602,"*!\SYN\SI\b\STX"),(603,"*!\SYN\SI\b\STX"),(604,"*!\SYN\SI\b\STX"),(605,"*!\SYN\SI\b\STX"),(606,"*!\SYN\SI\t\STX"),(607,"*!\SYN\SI\t\STX"),(608,"*!\SYN\SI\t\STX"),(609,"*!\SYN\SI\t\STX") + ,(610,"*!\SYN\SI\t\STX"),(611,"*!\SYN\SI\t\ETX"),(612,"*!\SYN\SI\t\ETX"),(613,"*!\SYN\SI\t\ETX"),(614,"*!\SYN\SI\t\ETX"),(615,"*!\SYN\SI\t\ETX"),(616,"*!\SYN\SI\t\ETX"),(617,"*!\SYN\SI\t\ETX"),(618,"*!\SYN\SI\t\ETX"),(619,"*!\SYN\SI\t\ETX") + ,(620,"*!\SYN\SI\t\ETX"),(621,"*!\SYN\SI\t\ETX"),(622,"*!\SYN\SI\t\ETX"),(623,"*!\SYN\SI\t\ETX"),(624,"*!\SYN\SI\t\ETX"),(625,"*!\SYN\SI\t\ETX"),(626,"*!\SYN\SI\t\ETX"),(627,"*!\SYN\SI\t\ETX"),(628,"*!\SYN\SI\t\ETX"),(629,"*!\SYN\SI\t\ETX") + ,(630,"*!\SYN\SI\t\ETX"),(631,"*!\SYN\SI\t\ETX"),(632,"*!\SYN\SI\t\ETX"),(633,"*!\SYN\SI\t\ETX"),(634,"*!\SYN\SI\t\EOT"),(635,"*!\SYN\SI\t\EOT"),(636,"*!\SYN\SI\t\EOT"),(637,"*!\SYN\SI\t\EOT"),(638,"*!\SYN\SI\t\EOT"),(639,"*!\SYN\DLE\t\EOT") + ,(640,"*!\SYN\DLE\n\EOT"),(641,"*!\SYN\DLE\n\EOT"),(642,"*!\SYN\DLE\n\EOT"),(643,"*!\SYN\DLE\n\EOT"),(644,"*!\SYN\DLE\n\EOT"),(645,"*!\SYN\DLE\n\EOT"),(646,"*!\SYN\DLE\n\EOT"),(647,"*!\SYN\DLE\n\EOT"),(648,"*!\SYN\DLE\n\EOT"),(649,"*!\SYN\DLE\n\EOT") + ,(650,"*!\SYN\DLE\n\EOT\SOH"),(651,"*!\SYN\DLE\n\EOT\SOH"),(652,"*!\SYN\DLE\n\EOT\SOH"),(653,"*!\SYN\DLE\n\EOT\SOH"),(654,"*!\SYN\DLE\n\EOT\SOH"),(655,"*!\SYN\DLE\n\EOT\SOH"),(656,"*!\SYN\DLE\n\EOT\SOH"),(657,"*!\SYN\DLE\n\EOT\SOH"),(658,"*!\SYN\DLE\n\EOT\SOH"),(659,"*!\SYN\DLE\n\EOT\SOH") + ,(660,"*!\SYN\DLE\n\EOT\SOH"),(661,"*!\SYN\DLE\n\EOT\SOH"),(662,"*!\SYN\DLE\n\EOT\SOH"),(663,"*!\SYN\DLE\n\ENQ\SOH"),(664,"*!\SYN\DLE\n\ENQ\SOH"),(665,"*!\SYN\DLE\n\ENQ\SOH"),(666,"*!\SYN\DLE\n\ENQ\SOH"),(667,"*!\SYN\DLE\n\ENQ\SOH"),(668,"*!\SYN\DLE\n\ENQ\SOH"),(669,"*!\SYN\DLE\n\ENQ\SOH") + ,(670,"*!\SYN\DLE\n\ENQ\SOH"),(671,"*!\SYN\DLE\n\ENQ\SOH"),(672,"* \SYN\DLE\n\ENQ\SOH"),(673,"* \SYN\DLE\n\ENQ\SOH"),(674,"* \SYN\DLE\n\ENQ\SOH"),(675,"* \SYN\DLE\n\ENQ\SOH"),(676,"* \SYN\DLE\n\ENQ\SOH"),(677,"* \SYN\DLE\n\ENQ\SOH"),(678,"* \SYN\DLE\n\ENQ\SOH"),(679,"* \SYN\DLE\n\ENQ\SOH") + ,(680,"* \SYN\DLE\n\ENQ\SOH"),(681,"* \SYN\DLE\n\ENQ\SOH"),(682,"* \SYN\DLE\n\ENQ\SOH"),(683,"* \SYN\DLE\n\ENQ\SOH"),(684,"* \SYN\DLE\n\ENQ\SOH"),(685,"* \SYN\DLE\n\ENQ\SOH"),(686,"* \SYN\DLE\n\ENQ\SOH"),(687,"* \SYN\DLE\n\ENQ\SOH"),(688,"* \SYN\DLE\n\ENQ\SOH"),(689,"* \SYN\DLE\n\ENQ\SOH") + ,(690,"* \SYN\DLE\n\ENQ\SOH"),(691,"* \SYN\DLE\n\ENQ\SOH"),(692,"* \SYN\DLE\n\ENQ\SOH"),(693,"* \SYN\DLE\n\ENQ\SOH"),(694,"* \SYN\DLE\n\ENQ\SOH"),(695,"* \SYN\DLE\n\ENQ\SOH"),(696,"* \SYN\DLE\n\ENQ\SOH"),(697,"* \SYN\DLE\n\ENQ\SOH"),(698,"* \SYN\DLE\n\ENQ\SOH"),(699,"* \SYN\DLE\n\ENQ\SOH") + ,(700,"* \SYN\DLE\n\ACK\SOH"),(701,"* \SYN\DLE\n\ACK\SOH"),(702,"* \SYN\DLE\n\ACK\SOH"),(703,"* \SYN\DLE\n\ACK\SOH"),(704,"* \SYN\DLE\n\ACK\SOH"),(705,"* \SYN\DLE\n\ACK\SOH"),(706,"* \SYN\DLE\n\ACK\SOH"),(707,"* \SYN\DLE\n\ACK\SOH"),(708,"* \SYN\DLE\n\ACK\SOH"),(709,"* \SYN\DLE\n\ACK\SOH") + ,(710,"* \SYN\DLE\n\ACK\SOH"),(711,"* \SYN\DLE\n\ACK\SOH"),(712,"* \SYN\DLE\n\ACK\SOH"),(713,"* \SYN\DLE\n\ACK\STX"),(714,"* \SYN\DLE\n\ACK\STX"),(715,"* \SYN\DLE\v\ACK\STX"),(716,"* \SYN\DLE\v\ACK\STX"),(717,"* \SYN\DLE\v\ACK\STX"),(718,"* \SYN\DLE\v\ACK\STX"),(719,"* \SYN\DLE\v\ACK\STX") + ,(720,"* \SYN\DLE\v\ACK\STX"),(721,"* \SYN\DLE\v\ACK\STX"),(722,"* \SYN\DLE\v\ACK\STX"),(723,"* \SYN\DLE\v\ACK\STX"),(724,"* \SYN\DLE\v\ACK\STX"),(725,"* \SYN\DLE\v\ACK\STX"),(726,"* \SYN\DLE\v\ACK\STX"),(727,"* \SYN\DLE\v\ACK\STX"),(728,"* \SYN\DLE\v\ACK\STX"),(729,"* \SYN\DLE\v\ACK\STX") + ,(730,"* \SYN\SI\v\ACK\STX"),(731,"* \SYN\SI\v\ACK\STX"),(732,"* \SYN\SI\v\ACK\STX"),(733,"* \SYN\SI\v\ACK\STX"),(734,"* \SYN\SI\v\ACK\STX"),(735,"* \SYN\SI\v\ACK\STX"),(736,"* \SYN\SI\v\ACK\STX"),(737,"* \SYN\SI\v\ACK\STX"),(738,"* \SYN\SI\v\ACK\STX"),(739,"* \SYN\SI\v\ACK\STX") + ,(740,"*\US\SYN\SI\v\ACK\STX"),(741,"*\US\SYN\SI\v\ACK\STX"),(742,"*\US\NAK\SI\v\ACK\STX"),(743,"*\US\NAK\SI\v\ACK\STX"),(744,"*\US\NAK\SI\v\ACK\STX"),(745,"*\US\NAK\SI\v\ACK\STX"),(746,"*\US\NAK\SI\v\ACK\STX"),(747,"*\US\NAK\SI\v\ACK\STX"),(748,"*\US\NAK\SI\v\a\STX"),(749,"*\US\NAK\SI\v\a\ETX") + ,(750,"*\US\NAK\SI\v\a\ETX"),(751,"*\US\NAK\SI\v\a\ETX\SOH"),(752,"*\US\NAK\SI\v\a\ETX\SOH"),(753,"*\US\NAK\SI\v\a\ETX\SOH"),(754,"*\US\NAK\SI\v\a\ETX\SOH"),(755,"*\US\NAK\SI\v\a\ETX\SOH"),(756,"*\US\NAK\SI\v\a\ETX\SOH"),(757,"*\US\NAK\SI\v\a\ETX\SOH"),(758,"*\US\NAK\SI\v\a\ETX\SOH"),(759,"*\US\NAK\SI\v\a\ETX\SOH") + ,(760,"*\US\NAK\SI\v\a\ETX\SOH"),(761,"*\US\NAK\SI\v\a\ETX\SOH"),(762,"*\US\NAK\SI\v\a\ETX\SOH"),(763,"*\US\NAK\SI\v\a\ETX\SOH"),(764,"*\US\NAK\SI\v\a\ETX\SOH"),(765,"*\US\NAK\SI\v\a\ETX\SOH"),(766,"*\US\NAK\SI\v\a\ETX\SOH"),(767,"*\US\NAK\SI\v\a\ETX\SOH"),(768,"*\US\NAK\SI\v\a\ETX\SOH"),(769,"*\US\NAK\SI\v\a\ETX\SOH") + ,(770,"*\US\NAK\SI\v\a\ETX\SOH"),(771,"*\US\NAK\SI\v\a\ETX\SOH"),(772,"*\US\NAK\SI\v\a\ETX\SOH"),(773,"*\US\NAK\SI\v\a\ETX\SOH"),(774,"*\US\NAK\SI\v\a\ETX\SOH"),(775,"*\US\NAK\SI\v\a\ETX\SOH"),(776,"*\US\NAK\SI\v\a\ETX\SOH"),(777,"*\US\NAK\SI\v\a\ETX\SOH"),(778,"*\US\NAK\SI\v\a\ETX\SOH"),(779,"*\US\NAK\SI\v\a\ETX\SOH") + ,(780,"*\US\NAK\SI\v\a\ETX\SOH"),(781,"*\US\NAK\SI\v\a\ETX\SOH"),(782,"*\US\NAK\SI\v\a\ETX\SOH"),(783,"*\US\NAK\SI\v\a\ETX\SOH"),(784,"*\US\NAK\SI\v\a\ETX\SOH"),(785,"*\US\NAK\SI\v\a\ETX\SOH"),(786,"*\US\NAK\SI\v\a\ETX\SOH"),(787,"*\US\NAK\SI\v\a\ETX\SOH"),(788,"*\US\NAK\SI\v\a\ETX\SOH"),(789,"*\US\NAK\SI\v\a\ETX\SOH") + ,(790,"*\US\NAK\SI\v\a\ETX\SOH"),(791,"*\US\NAK\SI\v\a\ETX\SOH"),(792,"*\US\NAK\SI\v\a\ETX\SOH"),(793,"*\US\NAK\SI\v\a\ETX\SOH"),(794,"*\US\NAK\SI\v\a\ETX\SOH"),(795,"*\US\NAK\SI\v\a\ETX\SOH"),(796,"*\US\NAK\SI\v\a\ETX\SOH"),(797,"*\US\NAK\SI\v\a\ETX\SOH"),(798,"*\US\NAK\SI\v\a\EOT\SOH"),(799,"*\RS\NAK\SI\v\a\EOT\SOH") + ,(800,"*\RS\NAK\SI\v\a\EOT\SOH"),(801,"*\RS\NAK\SI\v\a\EOT\SOH"),(802,"*\RS\NAK\SI\v\a\EOT\SOH"),(803,"*\RS\NAK\SI\v\a\EOT\SOH"),(804,"*\RS\NAK\SI\v\a\EOT\SOH"),(805,"*\RS\NAK\SI\v\a\EOT\SOH"),(806,"*\RS\NAK\SI\v\a\EOT\SOH"),(807,"*\RS\NAK\SI\v\a\EOT\SOH"),(808,"*\RS\NAK\SI\v\a\EOT\SOH"),(809,"*\RS\NAK\SI\v\a\EOT\SOH") + ,(810,"*\RS\NAK\SI\v\a\EOT\SOH"),(811,"*\RS\NAK\SI\v\a\EOT\SOH"),(812,"*\RS\NAK\SI\v\a\EOT\SOH"),(813,"*\RS\NAK\SI\v\a\EOT\SOH"),(814,"*\RS\NAK\SI\v\a\EOT\SOH"),(815,"*\RS\NAK\SI\v\a\EOT\SOH"),(816,"*\RS\NAK\SI\v\a\EOT\SOH"),(817,"*\RS\DC4\SI\v\a\EOT\SOH"),(818,"*\RS\DC4\SI\v\a\EOT\SOH"),(819,"*\RS\DC4\SI\v\a\EOT\SOH") + ,(820,"*\RS\DC4\SI\v\a\EOT\SOH"),(821,"*\RS\DC4\SI\v\a\EOT\SOH"),(822,"*\RS\DC4\SI\v\a\EOT\SOH"),(823,"*\RS\DC4\SI\v\a\EOT\SOH"),(824,"*\RS\DC4\SI\v\a\EOT\SOH"),(825,"*\RS\DC4\SI\v\a\EOT\SOH"),(826,"*\RS\DC4\SI\v\a\EOT\SOH"),(827,"*\RS\DC4\SI\v\a\EOT\SOH"),(828,"*\RS\DC4\SI\v\a\EOT\SOH"),(829,"*\RS\DC4\SI\v\a\EOT\SOH") + ,(830,"*\RS\DC4\SI\v\a\EOT\SOH"),(831,"*\RS\DC4\SI\v\a\EOT\SOH"),(832,"*\RS\DC4\SI\v\a\EOT\SOH"),(833,"*\RS\DC4\SI\v\a\EOT\SOH"),(834,"*\RS\DC4\SI\v\a\EOT\SOH"),(835,"*\RS\DC4\SI\v\a\EOT\SOH"),(836,"*\RS\DC4\SI\v\a\EOT\SOH"),(837,"*\RS\DC4\SI\v\a\EOT\SOH"),(838,"*\RS\DC4\SI\v\a\EOT\SOH"),(839,"*\RS\DC4\SI\v\a\EOT\SOH") + ,(840,"*\RS\DC4\SI\v\a\EOT\SOH"),(841,"*\RS\DC4\SI\v\a\EOT\SOH"),(842,"*\RS\DC4\SI\v\a\EOT\SOH"),(843,"*\RS\DC4\SI\v\a\EOT\SOH"),(844,"*\RS\DC4\SI\v\a\EOT\SOH"),(845,"*\RS\DC4\SI\v\a\EOT\SOH"),(846,"*\RS\DC4\SI\v\a\EOT\SOH"),(847,"*\RS\DC4\SI\v\a\EOT\SOH"),(848,"*\RS\DC4\SI\v\a\EOT\SOH"),(849,"*\RS\DC4\SI\v\a\EOT\SOH") + ,(850,"*\RS\DC4\SI\v\a\EOT\SOH\SOH"),(851,"*\RS\DC4\SO\v\a\EOT\SOH\SOH"),(852,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(853,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(854,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(855,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(856,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(857,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(858,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(859,"*\GS\DC4\SO\n\a\EOT\STX\SOH") + ,(860,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(861,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(862,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(863,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(864,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(865,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(866,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(867,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(868,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(869,"*\GS\DC4\SO\n\a\EOT\STX\SOH") + ,(870,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(871,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(872,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(873,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(874,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(875,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(876,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(877,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(878,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(879,"*\GS\DC4\SO\n\a\ENQ\STX\SOH") + ,(880,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(881,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(882,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(883,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(884,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(885,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(886,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(887,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(888,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(889,"*\GS\DC3\SO\n\a\ENQ\STX\SOH") + ,(890,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(891,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(892,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(893,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(894,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(895,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(896,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(897,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(898,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(899,"*\GS\DC3\SO\n\a\ENQ\STX\SOH") + ,(900,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(901,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(902,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(903,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(904,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(905,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(906,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(907,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(908,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(909,"*\FS\DC3\SO\n\a\ENQ\STX\SOH") + ,(910,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(911,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(912,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(913,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(914,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(915,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(916,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(917,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(918,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(919,")\FS\DC3\SO\n\a\ENQ\STX\SOH") + ,(920,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(921,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(922,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(923,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(924,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(925,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(926,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(927,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(928,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(929,")\FS\DC3\r\n\a\ENQ\STX\SOH") + ,(930,")\FS\DC3\r\n\a\ENQ\STX\SOH"),(931,")\FS\DC3\r\n\a\ENQ\STX\SOH"),(932,")\FS\DC3\r\n\a\ENQ\STX\SOH"),(933,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(934,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(935,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(936,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(937,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(938,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(939,")\FS\DC3\r\n\a\ENQ\ETX\SOH") + ,(940,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(941,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(942,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(943,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(944,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(945,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(946,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(947,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(948,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(949,")\FS\DC2\r\n\a\ENQ\ETX\SOH") + ,(950,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(951,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(952,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(953,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(954,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(955,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(956,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(957,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(958,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(959,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH") + ,(960,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(961,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(962,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(963,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(964,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(965,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(966,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(967,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(968,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(969,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH") + ,(970,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(971,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(972,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(973,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(974,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(975,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(976,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(977,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(978,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(979,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH") + ,(980,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(981,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(982,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(983,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(984,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(985,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(986,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(987,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(988,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(989,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(991,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(992,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(993,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(994,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(995,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(996,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(997,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(998,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(999,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH") + ,(1000,")\ESC\DC1\r\t\a\ENQ\ETX\SOH\SOH"),(1001,")\ESC\DC1\r\t\a\ENQ\ETX\SOH\SOH"),(1002,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1003,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1004,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1005,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1006,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1007,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1008,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1009,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH") + ,(1010,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1011,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1012,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1013,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1014,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1015,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1016,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1017,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1018,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1019,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1021,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1022,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1024,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1025,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1026,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1028,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1029,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1031,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1033,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1034,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1035,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1037,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1038,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1039,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH") + ,(1040,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1041,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1042,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1043,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1044,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1045,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1046,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1047,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH"),(1049,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH"),(1051,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1052,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1053,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1054,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1055,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1057,")\EM\DLE\f\b\ACK\EOT\ETX\SOH\SOH\SOH"),(1058,")\EM\DLE\f\b\ACK\EOT\ETX\SOH\SOH\SOH") + ,(1060,")\EM\DLE\f\b\ACK\EOT\ETX\SOH\SOH\SOH"),(1062,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1063,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1064,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1065,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1066,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1067,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1068,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1069,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH") + ,(1070,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1072,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1073,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1075,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1076,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1078,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1079,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH") + ,(1080,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1081,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1082,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1083,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1084,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1085,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1086,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1087,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1088,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1089,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1091,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1092,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1094,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1095,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1096,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1097,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1098,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1101,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1102,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1103,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1105,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1107,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1108,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1112,")\CAN\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1113,")\CAN\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1115,")\CAN\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1117,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1119,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH") + ,(1120,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1125,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1126,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1127,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1128,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1129,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1132,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1133,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1134,")\CAN\SI\v\b\ENQ\EOT\ETX\STX\SOH\SOH"),(1135,")\CAN\SI\v\b\ENQ\EOT\ETX\STX\SOH\SOH"),(1136,")\CAN\SI\v\b\ENQ\EOT\ETX\STX\SOH\SOH"),(1141,")\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1142,")\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1143,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1144,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1147,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1152,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1153,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1154,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1156,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1157,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1158,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1159,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH") + ,(1160,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1165,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1169,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1171,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1175,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1177,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1178,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH") + ,(1180,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1181,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1183,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1185,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1195,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1198,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1201,"(\ETB\SO\n\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1203,"(\ETB\SO\n\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1205,"(\ETB\SO\n\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1219,"(\ETB\SO\t\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1225,"(\ETB\SO\t\ACK\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1227,"(\ETB\SO\t\ACK\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1238,"(\SYN\SO\t\ACK\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1253,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1262,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH") + ,(1270,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH") + ,(1280,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1295,"(\NAK\r\b\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1321,"(\NAK\r\b\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1322,"(\NAK\r\b\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH") + ,(3100,"9\SO\a\ETX\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH")] hunk ./src/Generations/QtGS20.hs 1 -module Generations.GS20 where - -import Generations.GenBase -import Statistics - -import Data.Array -import Bio.Sequence.SFF -import qualified Data.ByteString.Char8 as BC -import qualified Data.ByteString as B - - -gs20 :: Generation -gs20 = Gen { - name = "GS20" - , model = \h p -> let h' = fromIntegral h - in if h == 0 then LogNormal (negate 2.5) 0.2 else Normal h' (0.1*h') - , getqual = B.unpack . (!) gs20qt - , commonhd = default_ch { - num_reads = undefined -- :: Int32 - ~400K? - , flow_length = 168 -- :: Int16 - , flow = BC.concat $ replicate 42 $ BC.pack "TACG" -- :: ByteString - , key = BC.pack "TCAG" -- :: ByteString - } - } - -gs20qt :: QualTable -gs20qt = mkQualTable (0,3100) $ map (\(x,y) -> (x,BC.pack y)) [ - (0,"\NUL"),(1,"\NUL"),(2,"\NUL"),(3,"\NUL"),(4,"\NUL"),(5,"\NUL"),(6,"\NUL"),(7,"\NUL"),(8,"\NUL"),(9,"\NUL"),(10,"\NUL") - ,(11,"\NUL"),(12,"\NUL"),(13,"\NUL"),(14,"\NUL"),(15,"\NUL"),(16,"\NUL"),(17,"\NUL"),(18,"\NUL"),(19,"\NUL"),(20,"\NUL") - ,(21,"\NUL"),(22,"\NUL"),(23,"\NUL"),(24,"\NUL"),(25,"\NUL"),(26,"\NUL"),(27,"\NUL"),(28,"\NUL"),(29,"\NUL"),(30,"\NUL") - ,(31,"\NUL"),(32,"\NUL"),(33,"\NUL"),(34,"\NUL"),(35,"\NUL"),(36,"\NUL"),(37,"\NUL"),(38,"\NUL"),(39,"\NUL") - ,(40,"\NUL"),(41,"\NUL"),(42,"\NUL"),(43,"\NUL"),(44,"\NUL"),(45,"\NUL"),(46,"\NUL"),(47,"\NUL"),(48,"\NUL"),(49,"\NUL") - ,(50,"\b"),(51,"\b"),(52,"\b"),(53,"\t"),(54,"\t"),(55,"\n"),(56,"\n"),(57,"\n"),(58,"\n"),(59,"\v") - ,(60,"\v"),(61,"\f"),(62,"\r"),(63,"\r"),(64,"\r"),(65,"\r"),(66,"\SO"),(67,"\SI"),(68,"\SI"),(69,"\DLE") - ,(70,"\DLE"),(71,"\DC1"),(72,"\DC1"),(73,"\DC1"),(74,"\DC2"),(75,"\DC3"),(76,"\DC3"),(77,"\DC3"),(78,"\DC4"),(79,"\NAK") - ,(80,"\NAK"),(81,"\NAK"),(82,"\SYN"),(83,"\ETB"),(84,"\ETB"),(85,"\ETB"),(86,"\CAN"),(87,"\CAN"),(88,"\EM"),(89,"\EM") - ,(90,"\SUB"),(91,"\SUB"),(92,"\SUB"),(93,"\SUB"),(94,"\ESC"),(95,"\ESC"),(96,"\ESC"),(97,"\ESC"),(98,"\FS"),(99,"\FS") - ,(100,"\FS"),(101,"\FS"),(102,"\FS"),(103,"\FS"),(104,"\FS"),(105,"\FS"),(106,"\FS"),(107,"\FS"),(108,"\FS"),(109,"\FS") - ,(110,"\FS"),(111,"\FS"),(112,"\ESC"),(113,"\ESC"),(114,"\ESC"),(115,"\SUB"),(116,"\SUB"),(117,"\SUB"),(118,"\EM"),(119,"\EM") - ,(120,"\CAN"),(121,"\CAN"),(122,"\CAN"),(123,"\ETB"),(124,"\ETB"),(125,"\ETB"),(126,"\SYN"),(127,"\SYN"),(128,"\SYN"),(129,"\SYN") - ,(130,"\NAK"),(131,"\NAK"),(132,"\NAK"),(133,"\DC4"),(134,"\DC4"),(135,"\DC4"),(136,"\DC4"),(137,"\DC4"),(138,"\DC4"),(139,"\DC3") - ,(140,"\DC3"),(141,"\DC3"),(142,"\DC3"),(143,"\DC3"),(144,"\DC3"),(145,"\DC3"),(146,"\DC3"),(147,"\DC3"),(148,"\DC4"),(149,"\DC4") - ,(150,"\DC4\EOT"),(151,"\DC4\ENQ"),(152,"\DC4\ENQ"),(153,"\DC4\ENQ"),(154,"\NAK\ACK"),(155,"\NAK\ACK"),(156,"\NAK\a"),(157,"\NAK\a"),(158,"\SYN\b"),(159,"\SYN\b") - ,(160,"\SYN\b"),(161,"\ETB\t"),(162,"\ETB\t"),(163,"\CAN\n"),(164,"\CAN\v"),(165,"\CAN\v"),(166,"\EM\f"),(167,"\EM\f"),(168,"\EM\f"),(169,"\SUB\r") - ,(170,"\SUB\r"),(171,"\SUB\SO"),(172,"\ESC\SI"),(173,"\ESC\SI"),(174,"\FS\DLE"),(175,"\FS\DLE"),(176,"\FS\DC1"),(177,"\GS\DC1"),(178,"\GS\DC1"),(179,"\GS\DC2") - ,(180,"\RS\DC2"),(181,"\RS\DC2"),(182,"\RS\DC3"),(183,"\US\DC4"),(184,"\US\DC4"),(185,"\US\DC4"),(186,"\US\NAK"),(187," \NAK"),(188," \NAK"),(189," \SYN") - ,(190," \SYN"),(191,"!\ETB"),(192,"!\ETB"),(193,"!\ETB"),(194,"!\ETB"),(195,"\"\CAN"),(196,"\"\CAN"),(197,"\"\CAN"),(198,"\"\CAN"),(199,"\"\EM") - ,(200,"\"\EM"),(201,"#\EM"),(202,"#\EM"),(203,"#\EM"),(204,"#\SUB"),(205,"#\SUB"),(206,"#\SUB"),(207,"#\SUB"),(208,"#\SUB"),(209,"#\SUB") - ,(210,"#\SUB"),(211,"#\SUB"),(212,"#\SUB"),(213,"#\SUB"),(214,"#\SUB"),(215,"#\SUB"),(216,"#\SUB"),(217,"#\SUB"),(218,"#\SUB"),(219,"#\SUB") - ,(220,"#\SUB"),(221,"#\SUB"),(222,"#\SUB"),(223,"#\SUB"),(224,"#\SUB"),(225,"#\SUB"),(226,"#\SUB"),(227,"\"\SUB"),(228,"\"\SUB"),(229,"\"\SUB") - ,(230,"\"\SUB"),(231,"\"\SUB"),(232,"\"\SUB"),(233,"\"\SUB"),(234,"\"\SUB"),(235,"\"\SUB"),(236,"\"\SUB"),(237,"!\SUB"),(238,"!\EM"),(239,"!\EM") - ,(240,"!\EM"),(241,"!\EM"),(242,"!\EM"),(243,"!\EM"),(244,"!\EM"),(245,"!\EM"),(246,"!\EM"),(247,"!\EM"),(248,"!\EM"),(249,"!\EM") - ,(250,"!\EM\SOH"),(251,"!\EM\SOH"),(252,"!\EM\SOH"),(253,"!\EM\SOH"),(254,"!\EM\STX"),(255,"!\EM\STX"),(256,"!\EM\STX"),(257,"!\EM\STX"),(258,"!\EM\STX"),(259,"!\EM\STX") - ,(260,"!\SUB\ETX"),(261,"!\SUB\ETX"),(262,"!\SUB\ETX"),(263,"!\SUB\ETX"),(264,"!\SUB\ETX"),(265,"!\SUB\EOT"),(266,"!\SUB\EOT"),(267,"!\SUB\EOT"),(268,"!\SUB\EOT"),(269,"\"\ESC\ENQ") - ,(270,"\"\ESC\ENQ"),(271,"\"\ESC\ENQ"),(272,"\"\ESC\ENQ"),(273,"\"\ESC\ACK"),(274,"\"\ESC\ACK"),(275,"#\FS\ACK"),(276,"#\FS\ACK"),(277,"#\FS\a"),(278,"#\FS\a"),(279,"#\FS\a") - ,(280,"#\FS\a"),(281,"#\FS\b"),(282,"#\FS\b"),(283,"$\GS\b"),(284,"$\GS\b"),(285,"$\GS\t"),(286,"$\GS\t"),(287,"$\GS\t"),(288,"$\RS\t"),(289,"$\RS\t") - ,(290,"%\RS\n"),(291,"%\RS\n"),(292,"%\RS\n"),(293,"%\RS\n"),(294,"%\RS\n"),(295,"%\RS\v"),(296,"%\RS\v"),(297,"%\US\v"),(298,"%\US\v"),(299,"&\US\f") - ,(300,"&\US\f"),(301,"&\US\f"),(302,"&\US\f"),(303,"&\US\f"),(304,"&\US\f"),(305,"&\US\r"),(306,"&\US\r"),(307,"&\US\r"),(308,"& \r"),(309,"& \r") - ,(310,"& \r"),(311,"& \r"),(312,"& \SO"),(313,"& \SO"),(314,"& \SO"),(315,"& \SO"),(316,"& \SO"),(317,"' \SO"),(318,"' \SO"),(319,"' \SO") - ,(320,"' \SO"),(321,"' \SO"),(322,"' \SI"),(323,"' \SI"),(324,"' \SI"),(325,"& \SI"),(326,"& \SI"),(327,"& \SI"),(328,"& \SI"),(329,"& \SI") - ,(330,"& \SI"),(331,"& \SI"),(332,"& \SI"),(333,"& \SI"),(334,"& \SI"),(335,"& \SI"),(336,"& \SI"),(337,"& \SI"),(338,"& \SI"),(339,"& \SI") - ,(340,"& \SI"),(341,"& \SI"),(342,"& \SI"),(343,"&\US\SI"),(344,"&\US\SI"),(345,"&\US\SI"),(346,"&\US\SI"),(347,"&\US\DLE"),(348,"&\US\DLE"),(349,"&\US\DLE") - ,(350,"&\US\DLE"),(351,"&\US\DLE\SOH"),(352,"&\US\DLE\SOH"),(353,"&\US\DLE\SOH"),(354,"&\US\DLE\SOH"),(355,"&\US\DLE\SOH"),(356,"&\US\DLE\SOH"),(357,"&\US\DLE\SOH"),(358,"&\US\DLE\SOH"),(359,"&\US\DLE\SOH") - ,(360,"&\US\DLE\STX"),(361,"&\US\DLE\STX"),(362,"&\US\DLE\STX"),(363,"&\US\DLE\STX"),(364,"&\US\DLE\STX"),(365,"&\US\DLE\STX"),(366,"& \DLE\STX"),(367,"& \DLE\STX"),(368,"& \DC1\STX"),(369,"& \DC1\ETX") - ,(370,"& \DC1\ETX"),(371,"& \DC1\ETX"),(372,"& \DC1\ETX"),(373,"& \DC1\ETX"),(374,"& \DC1\ETX"),(375,"& \DC1\ETX"),(376,"' \DC1\EOT"),(377,"' \DC1\EOT"),(378,"' \DC1\EOT"),(379,"' \DC1\EOT") - ,(380,"' \DC1\EOT"),(381,"' \DC2\EOT"),(382,"' \DC2\EOT"),(383,"' \DC2\EOT"),(384,"' \DC2\EOT"),(385,"' \DC2\EOT"),(386,"' \DC2\ENQ"),(387,"' \DC2\ENQ"),(388,"'!\DC2\ENQ"),(389,"'!\DC2\ENQ") - ,(390,"'!\DC2\ENQ"),(391,"'!\DC2\ENQ"),(392,"'!\DC2\ENQ"),(393,"'!\DC3\ACK"),(394,"(!\DC3\ACK"),(395,"(!\DC3\ACK"),(396,"(!\DC3\ACK"),(397,"(!\DC3\ACK"),(398,"(!\DC3\ACK"),(399,"(!\DC3\ACK") - ,(400,"(!\DC3\ACK"),(401,"(!\DC3\a"),(402,"(!\DC3\a"),(403,"(!\DC3\a"),(404,"(!\DC3\a"),(405,"(!\DC4\a"),(406,"(!\DC4\a"),(407,"(!\DC4\a"),(408,"(!\DC4\a"),(409,"(!\DC4\a") - ,(410,"(\"\DC4\b"),(411,"(\"\DC4\b"),(412,"(\"\DC4\b"),(413,"(\"\DC4\b"),(414,"(\"\DC4\b"),(415,"(\"\DC4\b"),(416,"(\"\DC4\b"),(417,"(\"\DC4\b"),(418,"(\"\DC4\b"),(419,")\"\DC4\b") - ,(420,")\"\DC4\t"),(421,")\"\DC4\t"),(422,")\"\DC4\t"),(423,")\"\DC4\t"),(424,")\"\DC4\t"),(425,")\"\DC4\t"),(426,")\"\NAK\t"),(427,")\"\NAK\t"),(428,")\"\NAK\t"),(429,")\"\NAK\t") - ,(430,")\"\NAK\t"),(431,")\"\NAK\t"),(432,")\"\NAK\t"),(433,")\"\NAK\t"),(434,")\"\NAK\n"),(435,")\"\NAK\n"),(436,")\"\NAK\n"),(437,")\"\NAK\n"),(438,")\"\NAK\n"),(439,")\"\NAK\n") - ,(440,")\"\NAK\n"),(441,")\"\NAK\n"),(442,")\"\NAK\n"),(443,")\"\NAK\n"),(444,")\"\NAK\n"),(445,")\"\NAK\n"),(446,")\"\NAK\n"),(447,")\"\NAK\n"),(448,")\"\NAK\n"),(449,")\"\NAK\n") - ,(450,")\"\NAK\n"),(451,")\"\NAK\n\SOH"),(452,")\"\NAK\n\SOH"),(453,")\"\NAK\n\SOH"),(454,")\"\NAK\v\SOH"),(455,")\"\NAK\v\SOH"),(456,")\"\NAK\v\SOH"),(457,")\"\NAK\v\SOH"),(458,")\"\NAK\v\SOH"),(459,")\"\NAK\v\SOH") - ,(460,")\"\NAK\v\SOH"),(461,")\"\NAK\v\SOH"),(462,")\"\NAK\v\SOH"),(463,")\"\NAK\v\SOH"),(464,")\"\NAK\v\SOH"),(465,")\"\NAK\v\SOH"),(466,")\"\NAK\v\SOH"),(467,")\"\NAK\v\SOH"),(468,")!\NAK\v\SOH"),(469,")!\NAK\v\SOH") - ,(470,")!\NAK\v\SOH"),(471,")!\NAK\v\SOH"),(472,")!\NAK\v\SOH"),(473,")!\NAK\v\STX"),(474,")\"\NAK\v\STX"),(475,")\"\NAK\v\STX"),(476,")\"\NAK\v\STX"),(477,")\"\NAK\v\STX"),(478,")\"\NAK\f\STX"),(479,")\"\NAK\f\STX") - ,(480,")\"\NAK\f\STX"),(481,")\"\NAK\f\STX"),(482,")\"\NAK\f\STX"),(483,")\"\NAK\f\STX"),(484,")\"\NAK\f\STX"),(485,")\"\NAK\f\STX"),(486,")\"\NAK\f\STX"),(487,")\"\NAK\f\STX"),(488,")\"\SYN\f\ETX"),(489,")\"\SYN\f\ETX") - ,(490,")\"\SYN\f\ETX"),(491,")\"\SYN\f\ETX"),(492,")\"\SYN\f\ETX"),(493,")\"\SYN\f\ETX"),(494,")\"\SYN\f\ETX"),(495,")\"\SYN\f\ETX"),(496,")\"\SYN\f\ETX"),(497,")\"\SYN\r\ETX"),(498,")\"\SYN\r\ETX"),(499,")\"\SYN\r\ETX") - ,(500,")\"\SYN\r\ETX"),(501,")\"\SYN\r\EOT"),(502,")\"\SYN\r\EOT"),(503,")\"\SYN\r\EOT"),(504,")\"\SYN\r\EOT"),(505,")\"\SYN\r\EOT"),(506,")\"\SYN\r\EOT"),(507,")\"\SYN\r\EOT"),(508,")\"\SYN\r\EOT"),(509,")\"\SYN\r\EOT") - ,(510,")\"\SYN\r\EOT"),(511,")\"\SYN\r\EOT"),(512,")\"\SYN\r\EOT"),(513,")\"\SYN\r\EOT"),(514,")\"\SYN\r\EOT"),(515,"*\"\SYN\r\ENQ"),(516,"*\"\SYN\r\ENQ"),(517,"*\"\SYN\r\ENQ"),(518,"*\"\SYN\r\ENQ"),(519,"*\"\SYN\SO\ENQ") - ,(520,"*\"\SYN\SO\ENQ"),(521,"*\"\SYN\SO\ENQ"),(522,"*\"\SYN\SO\ENQ"),(523,"*\"\SYN\SO\ENQ"),(524,"*\"\SYN\SO\ENQ"),(525,"*\"\SYN\SO\ENQ"),(526,"*\"\SYN\SO\ENQ"),(527,"*\"\SYN\SO\ENQ"),(528,"*\"\SYN\SO\ENQ"),(529,"*\"\SYN\SO\ENQ") - ,(530,"*\"\SYN\SO\ENQ"),(531,"*\"\SYN\SO\ACK"),(532,"*\"\SYN\SO\ACK"),(533,"*\"\SYN\SO\ACK"),(534,"*\"\SYN\SO\ACK"),(535,"*\"\SYN\SO\ACK"),(536,"*\"\SYN\SO\ACK"),(537,"*\"\SYN\SO\ACK"),(538,"*\"\SYN\SO\ACK"),(539,"*\"\SYN\SO\ACK") - ,(540,"*\"\SYN\SO\ACK"),(541,"*\"\SYN\SO\ACK"),(542,"*\"\SYN\SO\ACK"),(543,"*\"\SYN\SO\ACK"),(544,"*\"\SYN\SO\ACK"),(545,"*\"\SYN\SO\ACK"),(546,"*\"\SYN\SO\ACK"),(547,"*\"\SYN\SO\ACK"),(548,"*\"\SYN\SO\ACK"),(549,"*\"\SYN\SO\ACK") - ,(550,"*\"\SYN\SO\ACK\SOH"),(551,"*\"\SYN\SO\a\SOH"),(552,"*\"\SYN\SO\a\SOH"),(553,"*\"\SYN\SO\a\SOH"),(554,"*\"\SYN\SO\a\SOH"),(555,"*\"\SYN\SO\a\SOH"),(556,"*\"\SYN\SO\a\SOH"),(557,"*\"\SYN\SO\a\SOH"),(558,"*\"\SYN\SO\a\SOH"),(559,"*\"\SYN\SO\a\SOH") - ,(560,"*\"\SYN\SO\a\SOH"),(561,"*\"\SYN\SI\a\SOH"),(562,"*\"\SYN\SI\a\SOH"),(563,"*\"\SYN\SI\a\SOH"),(564,"*\"\SYN\SI\a\SOH"),(565,"*\"\SYN\SI\a\SOH"),(566,"*\"\SYN\SI\a\SOH"),(567,"*\"\SYN\SI\a\SOH"),(568,"*\"\SYN\SI\a\SOH"),(569,"*!\SYN\SI\a\SOH") - ,(570,"*!\SYN\SI\a\SOH"),(571,"*!\SYN\SI\a\SOH"),(572,"*!\SYN\SI\a\SOH"),(573,"*!\SYN\SI\a\SOH"),(574,"*!\SYN\SI\a\SOH"),(575,"*!\SYN\SI\a\SOH"),(576,"*!\SYN\SI\a\SOH"),(577,"*!\SYN\SI\b\SOH"),(578,"*!\SYN\SI\b\SOH"),(579,"*!\SYN\SI\b\SOH") - ,(580,"*!\SYN\SI\b\SOH"),(581,"*!\SYN\SI\b\SOH"),(582,"*!\SYN\SI\b\SOH"),(583,"*!\SYN\SI\b\SOH"),(584,"*!\SYN\SI\b\SOH"),(585,"*!\SYN\SI\b\SOH"),(586,"*!\SYN\SI\b\SOH"),(587,"*!\SYN\SI\b\SOH"),(588,"*!\SYN\SI\b\STX"),(589,"*!\SYN\SI\b\STX") - ,(590,"*!\SYN\SI\b\STX"),(591,"*!\SYN\SI\b\STX"),(592,"*!\SYN\SI\b\STX"),(593,"*!\SYN\SI\b\STX"),(594,"*!\SYN\SI\b\STX"),(595,"*!\SYN\SI\b\STX"),(596,"*!\SYN\SI\b\STX"),(597,"*!\SYN\SI\b\STX"),(598,"*!\SYN\SI\b\STX"),(599,"*!\SYN\SI\b\STX") - ,(600,"*!\SYN\SI\b\STX"),(601,"*!\SYN\SI\b\STX"),(602,"*!\SYN\SI\b\STX"),(603,"*!\SYN\SI\b\STX"),(604,"*!\SYN\SI\b\STX"),(605,"*!\SYN\SI\b\STX"),(606,"*!\SYN\SI\t\STX"),(607,"*!\SYN\SI\t\STX"),(608,"*!\SYN\SI\t\STX"),(609,"*!\SYN\SI\t\STX") - ,(610,"*!\SYN\SI\t\STX"),(611,"*!\SYN\SI\t\ETX"),(612,"*!\SYN\SI\t\ETX"),(613,"*!\SYN\SI\t\ETX"),(614,"*!\SYN\SI\t\ETX"),(615,"*!\SYN\SI\t\ETX"),(616,"*!\SYN\SI\t\ETX"),(617,"*!\SYN\SI\t\ETX"),(618,"*!\SYN\SI\t\ETX"),(619,"*!\SYN\SI\t\ETX") - ,(620,"*!\SYN\SI\t\ETX"),(621,"*!\SYN\SI\t\ETX"),(622,"*!\SYN\SI\t\ETX"),(623,"*!\SYN\SI\t\ETX"),(624,"*!\SYN\SI\t\ETX"),(625,"*!\SYN\SI\t\ETX"),(626,"*!\SYN\SI\t\ETX"),(627,"*!\SYN\SI\t\ETX"),(628,"*!\SYN\SI\t\ETX"),(629,"*!\SYN\SI\t\ETX") - ,(630,"*!\SYN\SI\t\ETX"),(631,"*!\SYN\SI\t\ETX"),(632,"*!\SYN\SI\t\ETX"),(633,"*!\SYN\SI\t\ETX"),(634,"*!\SYN\SI\t\EOT"),(635,"*!\SYN\SI\t\EOT"),(636,"*!\SYN\SI\t\EOT"),(637,"*!\SYN\SI\t\EOT"),(638,"*!\SYN\SI\t\EOT"),(639,"*!\SYN\DLE\t\EOT") - ,(640,"*!\SYN\DLE\n\EOT"),(641,"*!\SYN\DLE\n\EOT"),(642,"*!\SYN\DLE\n\EOT"),(643,"*!\SYN\DLE\n\EOT"),(644,"*!\SYN\DLE\n\EOT"),(645,"*!\SYN\DLE\n\EOT"),(646,"*!\SYN\DLE\n\EOT"),(647,"*!\SYN\DLE\n\EOT"),(648,"*!\SYN\DLE\n\EOT"),(649,"*!\SYN\DLE\n\EOT") - ,(650,"*!\SYN\DLE\n\EOT\SOH"),(651,"*!\SYN\DLE\n\EOT\SOH"),(652,"*!\SYN\DLE\n\EOT\SOH"),(653,"*!\SYN\DLE\n\EOT\SOH"),(654,"*!\SYN\DLE\n\EOT\SOH"),(655,"*!\SYN\DLE\n\EOT\SOH"),(656,"*!\SYN\DLE\n\EOT\SOH"),(657,"*!\SYN\DLE\n\EOT\SOH"),(658,"*!\SYN\DLE\n\EOT\SOH"),(659,"*!\SYN\DLE\n\EOT\SOH") - ,(660,"*!\SYN\DLE\n\EOT\SOH"),(661,"*!\SYN\DLE\n\EOT\SOH"),(662,"*!\SYN\DLE\n\EOT\SOH"),(663,"*!\SYN\DLE\n\ENQ\SOH"),(664,"*!\SYN\DLE\n\ENQ\SOH"),(665,"*!\SYN\DLE\n\ENQ\SOH"),(666,"*!\SYN\DLE\n\ENQ\SOH"),(667,"*!\SYN\DLE\n\ENQ\SOH"),(668,"*!\SYN\DLE\n\ENQ\SOH"),(669,"*!\SYN\DLE\n\ENQ\SOH") - ,(670,"*!\SYN\DLE\n\ENQ\SOH"),(671,"*!\SYN\DLE\n\ENQ\SOH"),(672,"* \SYN\DLE\n\ENQ\SOH"),(673,"* \SYN\DLE\n\ENQ\SOH"),(674,"* \SYN\DLE\n\ENQ\SOH"),(675,"* \SYN\DLE\n\ENQ\SOH"),(676,"* \SYN\DLE\n\ENQ\SOH"),(677,"* \SYN\DLE\n\ENQ\SOH"),(678,"* \SYN\DLE\n\ENQ\SOH"),(679,"* \SYN\DLE\n\ENQ\SOH") - ,(680,"* \SYN\DLE\n\ENQ\SOH"),(681,"* \SYN\DLE\n\ENQ\SOH"),(682,"* \SYN\DLE\n\ENQ\SOH"),(683,"* \SYN\DLE\n\ENQ\SOH"),(684,"* \SYN\DLE\n\ENQ\SOH"),(685,"* \SYN\DLE\n\ENQ\SOH"),(686,"* \SYN\DLE\n\ENQ\SOH"),(687,"* \SYN\DLE\n\ENQ\SOH"),(688,"* \SYN\DLE\n\ENQ\SOH"),(689,"* \SYN\DLE\n\ENQ\SOH") - ,(690,"* \SYN\DLE\n\ENQ\SOH"),(691,"* \SYN\DLE\n\ENQ\SOH"),(692,"* \SYN\DLE\n\ENQ\SOH"),(693,"* \SYN\DLE\n\ENQ\SOH"),(694,"* \SYN\DLE\n\ENQ\SOH"),(695,"* \SYN\DLE\n\ENQ\SOH"),(696,"* \SYN\DLE\n\ENQ\SOH"),(697,"* \SYN\DLE\n\ENQ\SOH"),(698,"* \SYN\DLE\n\ENQ\SOH"),(699,"* \SYN\DLE\n\ENQ\SOH") - ,(700,"* \SYN\DLE\n\ACK\SOH"),(701,"* \SYN\DLE\n\ACK\SOH"),(702,"* \SYN\DLE\n\ACK\SOH"),(703,"* \SYN\DLE\n\ACK\SOH"),(704,"* \SYN\DLE\n\ACK\SOH"),(705,"* \SYN\DLE\n\ACK\SOH"),(706,"* \SYN\DLE\n\ACK\SOH"),(707,"* \SYN\DLE\n\ACK\SOH"),(708,"* \SYN\DLE\n\ACK\SOH"),(709,"* \SYN\DLE\n\ACK\SOH") - ,(710,"* \SYN\DLE\n\ACK\SOH"),(711,"* \SYN\DLE\n\ACK\SOH"),(712,"* \SYN\DLE\n\ACK\SOH"),(713,"* \SYN\DLE\n\ACK\STX"),(714,"* \SYN\DLE\n\ACK\STX"),(715,"* \SYN\DLE\v\ACK\STX"),(716,"* \SYN\DLE\v\ACK\STX"),(717,"* \SYN\DLE\v\ACK\STX"),(718,"* \SYN\DLE\v\ACK\STX"),(719,"* \SYN\DLE\v\ACK\STX") - ,(720,"* \SYN\DLE\v\ACK\STX"),(721,"* \SYN\DLE\v\ACK\STX"),(722,"* \SYN\DLE\v\ACK\STX"),(723,"* \SYN\DLE\v\ACK\STX"),(724,"* \SYN\DLE\v\ACK\STX"),(725,"* \SYN\DLE\v\ACK\STX"),(726,"* \SYN\DLE\v\ACK\STX"),(727,"* \SYN\DLE\v\ACK\STX"),(728,"* \SYN\DLE\v\ACK\STX"),(729,"* \SYN\DLE\v\ACK\STX") - ,(730,"* \SYN\SI\v\ACK\STX"),(731,"* \SYN\SI\v\ACK\STX"),(732,"* \SYN\SI\v\ACK\STX"),(733,"* \SYN\SI\v\ACK\STX"),(734,"* \SYN\SI\v\ACK\STX"),(735,"* \SYN\SI\v\ACK\STX"),(736,"* \SYN\SI\v\ACK\STX"),(737,"* \SYN\SI\v\ACK\STX"),(738,"* \SYN\SI\v\ACK\STX"),(739,"* \SYN\SI\v\ACK\STX") - ,(740,"*\US\SYN\SI\v\ACK\STX"),(741,"*\US\SYN\SI\v\ACK\STX"),(742,"*\US\NAK\SI\v\ACK\STX"),(743,"*\US\NAK\SI\v\ACK\STX"),(744,"*\US\NAK\SI\v\ACK\STX"),(745,"*\US\NAK\SI\v\ACK\STX"),(746,"*\US\NAK\SI\v\ACK\STX"),(747,"*\US\NAK\SI\v\ACK\STX"),(748,"*\US\NAK\SI\v\a\STX"),(749,"*\US\NAK\SI\v\a\ETX") - ,(750,"*\US\NAK\SI\v\a\ETX"),(751,"*\US\NAK\SI\v\a\ETX\SOH"),(752,"*\US\NAK\SI\v\a\ETX\SOH"),(753,"*\US\NAK\SI\v\a\ETX\SOH"),(754,"*\US\NAK\SI\v\a\ETX\SOH"),(755,"*\US\NAK\SI\v\a\ETX\SOH"),(756,"*\US\NAK\SI\v\a\ETX\SOH"),(757,"*\US\NAK\SI\v\a\ETX\SOH"),(758,"*\US\NAK\SI\v\a\ETX\SOH"),(759,"*\US\NAK\SI\v\a\ETX\SOH") - ,(760,"*\US\NAK\SI\v\a\ETX\SOH"),(761,"*\US\NAK\SI\v\a\ETX\SOH"),(762,"*\US\NAK\SI\v\a\ETX\SOH"),(763,"*\US\NAK\SI\v\a\ETX\SOH"),(764,"*\US\NAK\SI\v\a\ETX\SOH"),(765,"*\US\NAK\SI\v\a\ETX\SOH"),(766,"*\US\NAK\SI\v\a\ETX\SOH"),(767,"*\US\NAK\SI\v\a\ETX\SOH"),(768,"*\US\NAK\SI\v\a\ETX\SOH"),(769,"*\US\NAK\SI\v\a\ETX\SOH") - ,(770,"*\US\NAK\SI\v\a\ETX\SOH"),(771,"*\US\NAK\SI\v\a\ETX\SOH"),(772,"*\US\NAK\SI\v\a\ETX\SOH"),(773,"*\US\NAK\SI\v\a\ETX\SOH"),(774,"*\US\NAK\SI\v\a\ETX\SOH"),(775,"*\US\NAK\SI\v\a\ETX\SOH"),(776,"*\US\NAK\SI\v\a\ETX\SOH"),(777,"*\US\NAK\SI\v\a\ETX\SOH"),(778,"*\US\NAK\SI\v\a\ETX\SOH"),(779,"*\US\NAK\SI\v\a\ETX\SOH") - ,(780,"*\US\NAK\SI\v\a\ETX\SOH"),(781,"*\US\NAK\SI\v\a\ETX\SOH"),(782,"*\US\NAK\SI\v\a\ETX\SOH"),(783,"*\US\NAK\SI\v\a\ETX\SOH"),(784,"*\US\NAK\SI\v\a\ETX\SOH"),(785,"*\US\NAK\SI\v\a\ETX\SOH"),(786,"*\US\NAK\SI\v\a\ETX\SOH"),(787,"*\US\NAK\SI\v\a\ETX\SOH"),(788,"*\US\NAK\SI\v\a\ETX\SOH"),(789,"*\US\NAK\SI\v\a\ETX\SOH") - ,(790,"*\US\NAK\SI\v\a\ETX\SOH"),(791,"*\US\NAK\SI\v\a\ETX\SOH"),(792,"*\US\NAK\SI\v\a\ETX\SOH"),(793,"*\US\NAK\SI\v\a\ETX\SOH"),(794,"*\US\NAK\SI\v\a\ETX\SOH"),(795,"*\US\NAK\SI\v\a\ETX\SOH"),(796,"*\US\NAK\SI\v\a\ETX\SOH"),(797,"*\US\NAK\SI\v\a\ETX\SOH"),(798,"*\US\NAK\SI\v\a\EOT\SOH"),(799,"*\RS\NAK\SI\v\a\EOT\SOH") - ,(800,"*\RS\NAK\SI\v\a\EOT\SOH"),(801,"*\RS\NAK\SI\v\a\EOT\SOH"),(802,"*\RS\NAK\SI\v\a\EOT\SOH"),(803,"*\RS\NAK\SI\v\a\EOT\SOH"),(804,"*\RS\NAK\SI\v\a\EOT\SOH"),(805,"*\RS\NAK\SI\v\a\EOT\SOH"),(806,"*\RS\NAK\SI\v\a\EOT\SOH"),(807,"*\RS\NAK\SI\v\a\EOT\SOH"),(808,"*\RS\NAK\SI\v\a\EOT\SOH"),(809,"*\RS\NAK\SI\v\a\EOT\SOH") - ,(810,"*\RS\NAK\SI\v\a\EOT\SOH"),(811,"*\RS\NAK\SI\v\a\EOT\SOH"),(812,"*\RS\NAK\SI\v\a\EOT\SOH"),(813,"*\RS\NAK\SI\v\a\EOT\SOH"),(814,"*\RS\NAK\SI\v\a\EOT\SOH"),(815,"*\RS\NAK\SI\v\a\EOT\SOH"),(816,"*\RS\NAK\SI\v\a\EOT\SOH"),(817,"*\RS\DC4\SI\v\a\EOT\SOH"),(818,"*\RS\DC4\SI\v\a\EOT\SOH"),(819,"*\RS\DC4\SI\v\a\EOT\SOH") - ,(820,"*\RS\DC4\SI\v\a\EOT\SOH"),(821,"*\RS\DC4\SI\v\a\EOT\SOH"),(822,"*\RS\DC4\SI\v\a\EOT\SOH"),(823,"*\RS\DC4\SI\v\a\EOT\SOH"),(824,"*\RS\DC4\SI\v\a\EOT\SOH"),(825,"*\RS\DC4\SI\v\a\EOT\SOH"),(826,"*\RS\DC4\SI\v\a\EOT\SOH"),(827,"*\RS\DC4\SI\v\a\EOT\SOH"),(828,"*\RS\DC4\SI\v\a\EOT\SOH"),(829,"*\RS\DC4\SI\v\a\EOT\SOH") - ,(830,"*\RS\DC4\SI\v\a\EOT\SOH"),(831,"*\RS\DC4\SI\v\a\EOT\SOH"),(832,"*\RS\DC4\SI\v\a\EOT\SOH"),(833,"*\RS\DC4\SI\v\a\EOT\SOH"),(834,"*\RS\DC4\SI\v\a\EOT\SOH"),(835,"*\RS\DC4\SI\v\a\EOT\SOH"),(836,"*\RS\DC4\SI\v\a\EOT\SOH"),(837,"*\RS\DC4\SI\v\a\EOT\SOH"),(838,"*\RS\DC4\SI\v\a\EOT\SOH"),(839,"*\RS\DC4\SI\v\a\EOT\SOH") - ,(840,"*\RS\DC4\SI\v\a\EOT\SOH"),(841,"*\RS\DC4\SI\v\a\EOT\SOH"),(842,"*\RS\DC4\SI\v\a\EOT\SOH"),(843,"*\RS\DC4\SI\v\a\EOT\SOH"),(844,"*\RS\DC4\SI\v\a\EOT\SOH"),(845,"*\RS\DC4\SI\v\a\EOT\SOH"),(846,"*\RS\DC4\SI\v\a\EOT\SOH"),(847,"*\RS\DC4\SI\v\a\EOT\SOH"),(848,"*\RS\DC4\SI\v\a\EOT\SOH"),(849,"*\RS\DC4\SI\v\a\EOT\SOH") - ,(850,"*\RS\DC4\SI\v\a\EOT\SOH\SOH"),(851,"*\RS\DC4\SO\v\a\EOT\SOH\SOH"),(852,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(853,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(854,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(855,"*\GS\DC4\SO\v\a\EOT\STX\SOH"),(856,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(857,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(858,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(859,"*\GS\DC4\SO\n\a\EOT\STX\SOH") - ,(860,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(861,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(862,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(863,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(864,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(865,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(866,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(867,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(868,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(869,"*\GS\DC4\SO\n\a\EOT\STX\SOH") - ,(870,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(871,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(872,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(873,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(874,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(875,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(876,"*\GS\DC4\SO\n\a\EOT\STX\SOH"),(877,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(878,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(879,"*\GS\DC4\SO\n\a\ENQ\STX\SOH") - ,(880,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(881,"*\GS\DC4\SO\n\a\ENQ\STX\SOH"),(882,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(883,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(884,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(885,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(886,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(887,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(888,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(889,"*\GS\DC3\SO\n\a\ENQ\STX\SOH") - ,(890,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(891,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(892,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(893,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(894,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(895,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(896,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(897,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(898,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(899,"*\GS\DC3\SO\n\a\ENQ\STX\SOH") - ,(900,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(901,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(902,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(903,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(904,"*\GS\DC3\SO\n\a\ENQ\STX\SOH"),(905,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(906,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(907,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(908,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(909,"*\FS\DC3\SO\n\a\ENQ\STX\SOH") - ,(910,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(911,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(912,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(913,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(914,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(915,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(916,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(917,"*\FS\DC3\SO\n\a\ENQ\STX\SOH"),(918,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(919,")\FS\DC3\SO\n\a\ENQ\STX\SOH") - ,(920,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(921,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(922,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(923,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(924,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(925,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(926,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(927,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(928,")\FS\DC3\SO\n\a\ENQ\STX\SOH"),(929,")\FS\DC3\r\n\a\ENQ\STX\SOH") - ,(930,")\FS\DC3\r\n\a\ENQ\STX\SOH"),(931,")\FS\DC3\r\n\a\ENQ\STX\SOH"),(932,")\FS\DC3\r\n\a\ENQ\STX\SOH"),(933,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(934,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(935,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(936,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(937,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(938,")\FS\DC3\r\n\a\ENQ\ETX\SOH"),(939,")\FS\DC3\r\n\a\ENQ\ETX\SOH") - ,(940,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(941,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(942,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(943,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(944,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(945,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(946,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(947,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(948,")\FS\DC2\r\n\a\ENQ\ETX\SOH"),(949,")\FS\DC2\r\n\a\ENQ\ETX\SOH") - ,(950,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(951,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(952,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(953,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(954,")\FS\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(955,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(956,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(957,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(958,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(959,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH") - ,(960,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(961,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(962,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(963,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(964,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(965,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(966,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(967,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(968,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(969,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH") - ,(970,")\ESC\DC2\r\n\a\ENQ\ETX\SOH\SOH"),(971,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(972,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(973,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(974,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(975,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(976,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(977,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(978,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(979,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH") - ,(980,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(981,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(982,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(983,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(984,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(985,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(986,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(987,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(988,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(989,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(991,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(992,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(993,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(994,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(995,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(996,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(997,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(998,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH"),(999,")\ESC\DC2\r\t\a\ENQ\ETX\SOH\SOH") - ,(1000,")\ESC\DC1\r\t\a\ENQ\ETX\SOH\SOH"),(1001,")\ESC\DC1\r\t\a\ENQ\ETX\SOH\SOH"),(1002,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1003,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1004,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1005,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1006,")\ESC\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1007,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1008,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1009,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH") - ,(1010,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1011,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1012,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1013,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1014,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1015,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1016,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1017,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1018,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1019,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1021,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1022,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1024,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1025,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1026,")\SUB\DC1\f\t\a\ENQ\ETX\SOH\SOH"),(1028,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1029,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1031,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1033,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1034,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1035,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1037,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1038,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1039,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH") - ,(1040,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1041,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1042,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1043,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1044,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1045,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1046,")\SUB\DC1\f\t\ACK\ENQ\ETX\SOH\SOH"),(1047,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH"),(1049,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH"),(1051,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1052,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1053,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1054,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1055,")\SUB\DC1\f\t\ACK\EOT\ETX\SOH\SOH\SOH"),(1057,")\EM\DLE\f\b\ACK\EOT\ETX\SOH\SOH\SOH"),(1058,")\EM\DLE\f\b\ACK\EOT\ETX\SOH\SOH\SOH") - ,(1060,")\EM\DLE\f\b\ACK\EOT\ETX\SOH\SOH\SOH"),(1062,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1063,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1064,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1065,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1066,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1067,")\EM\DLE\f\b\ACK\EOT\ETX\STX\SOH\SOH"),(1068,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1069,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH") - ,(1070,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1072,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1073,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1075,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1076,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1078,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1079,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH") - ,(1080,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1081,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1082,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1083,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1084,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1085,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1086,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1087,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1088,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1089,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1091,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1092,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1094,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1095,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1096,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1097,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1098,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1101,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1102,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1103,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1105,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1107,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1108,")\EM\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1112,")\CAN\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1113,")\CAN\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1115,")\CAN\DLE\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1117,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1119,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH") - ,(1120,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1125,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1126,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1127,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1128,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1129,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1132,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1133,")\CAN\SI\v\b\ACK\EOT\ETX\STX\SOH\SOH"),(1134,")\CAN\SI\v\b\ENQ\EOT\ETX\STX\SOH\SOH"),(1135,")\CAN\SI\v\b\ENQ\EOT\ETX\STX\SOH\SOH"),(1136,")\CAN\SI\v\b\ENQ\EOT\ETX\STX\SOH\SOH"),(1141,")\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1142,")\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1143,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1144,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1147,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH"),(1152,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1153,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1154,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1156,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1157,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1158,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1159,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH") - ,(1160,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1165,"(\CAN\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1169,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1171,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1175,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1177,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH"),(1178,"(\ETB\SI\n\a\ENQ\EOT\ETX\STX\SOH\SOH\SOH") - ,(1180,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1181,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1183,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1185,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1195,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1198,"(\ETB\SO\n\a\ENQ\EOT\STX\STX\SOH\SOH\SOH"),(1201,"(\ETB\SO\n\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1203,"(\ETB\SO\n\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1205,"(\ETB\SO\n\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1219,"(\ETB\SO\t\a\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1225,"(\ETB\SO\t\ACK\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1227,"(\ETB\SO\t\ACK\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1238,"(\SYN\SO\t\ACK\ENQ\ETX\STX\SOH\SOH\SOH\SOH"),(1253,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1262,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH") - ,(1270,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH") - ,(1280,"(\SYN\r\t\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1295,"(\NAK\r\b\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1321,"(\NAK\r\b\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH"),(1322,"(\NAK\r\b\ACK\EOT\ETX\STX\SOH\SOH\SOH\SOH\SOH") - ,(3100,"9\SO\a\ETX\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH\SOH")] rmfile ./src/Generations/QtGS20.hs addfile ./src/Print.hs hunk ./src/Print.hs 1 - + rmfile ./src/Print.hs addfile ./src/PyroSim.hs hunk ./src/PyroSim.hs 1 +{- | Sim454 - simulate 454 flowgrams from a reference genome + + Flow values are modelled from a log-normal noise, and a sequence of + normal distributions, one for each homopolymer length. These distributions + can be estimated from real data. + + Todo: + Options: -m [-n | -r ] + Model as a data structure (dyn load?) + Paired ends models B-linker-A + +-} +{-# options -XParallelListComp #-} + +module Main where + +import Bio.Sequence +import Bio.Sequence.SFF + +import qualified Data.ByteString.Lazy.Char8 as B +import qualified Data.ByteString.Lazy as BL +import qualified Data.ByteString.Char8 as BS +import qualified Data.ByteString as BS2 +import System.Environment (getArgs) + +import Data.Char (toUpper) +import Data.Int +import Data.List (unfoldr) + +import Statistics + +import Generations.GenBase +import Generations.GS20 + + +-- | A Model consists of a set of distribution parameters (mu and sigma). +-- The first distribution is log-normal noise, the subsequent are normal distributions +-- corresponding to the signal for increasing homopolymer lengths. +data Dir = Fwd | Rev deriving (Eq,Enum,Bounded) + +instance Random Dir where + random g = let (b,g') = random g in (if b then Fwd else Rev,g') + randomR = error "randomR is undefined for Dir" + +-- | The different generations of 454 hardware (and, presumably, software). +-- data Generation = GS20 | FLX | Titanium + +main = do + -- handle options! + args <- getArgs + let arg = case args of [x] -> x + _ -> error "Usage: pyrosim " + ss <- map castToNuc `fmap` readFasta arg + sff <- evalRandIO (sim454 gs20 $ head ss) + -- writeFile "debug.txt" (show sff) + writeSFF "output.sff" sff + +-- testing +s = Seq (fromStr "foo") (fromStr "aacacattcgtggtnagctacggaacacattcgtggtnagctacggaacacattcgtggtnagctacggaacacattcgtggtnagctacgg") Nothing + +-- | Heavy lifting. Building an SFF file from the specified information +-- sim454 :: String -> Generation -> Model -> Sequence Nuc -> StdGen -> SFF +sim454 :: RandomGen g => Generation -> Sequence Nuc -> Rand g SFF +sim454 gen sq = do + let ch = (makeCommonHeader gen) {num_reads = 2} + rbs <- sequence (replicate (fromIntegral $ num_reads ch) (makeReadBlock gen sq ch)) + return (SFF ch rbs) + +-- -------------------------------------------------- +-- Generate the flow values + +-- generate the "absolute" flow values from the key and the origin sequence data +makeFlows :: [Char] -> SeqData -> [Int] +makeFlows c s | B.null s = [] + | otherwise = let (c1,s1) = makeCycle [] (take 4 c) s + s2 = case B.uncons s1 of Just (x,_) -> if not (toUpper x `elem` "ACGT") then B.tail s1 else s1; _ -> s1 + in c1 ++ makeFlows c s2 + +{- + prop_makeFlows :: EST -> Bool + prop_makeFlows (E s) = let sd = filter (not . (=='n')) $ toStr $ seqdata s + in makeFlows "TACG" (seqdata s) == reverse (makeFlows "TACG" $ seqdata $ revcompl s) +-} + +makeCycle :: [Int] -> [Char] -> SeqData -> ([Int],SeqData) +makeCycle acc [] s = (reverse acc,s) +makeCycle acc (c:cs) s = let (this,rest) = B.span ((==toUpper c).toUpper) s + in makeCycle (fromIntegral (B.length this):acc) cs rest + +-- -------------------------------------------------- +-- pull a value from a model + +permuteFromModel :: RandomGen g => Generation -> [Int] -> Rand g [Flow] +permuteFromModel gen = mapM permute . zip [0..] + where permute (p,x) = do y <- sample (model gen x p) + return $ floor (y * 100) + +-- -------------------------------------------------- +-- Calling the sequence from the flows +call :: Generation -> [Char] -> [Flow] -> [(Char,Qual,Int)] +call _ _ [] = [] +call g cs fs = let (low, high) = span (<50) fs + c:cs' = drop (length low) (cycle cs) + in if length low >= 3 then ('N',0,length low) : call g (c:cs') high + else case high of (h:rest) -> call1 g c (length low+1) h ++ call g cs' rest + [] -> [] + +call1 :: Generation -> Char -> Int -> Flow -> [(Char,Qual,Int)] +call1 g c p f = let q1:qs = getqual g f in (c,q1,p):[(c,q,0) | q <- qs] + +-- testing +prop_flow_call e = undefined -- seqdata e == call GS20 "TCAG" $ makeFlows "TCAG" $ seqdata e +prop_flow_index1 e = error "check that called indices correspond to flows >=0.5" +prop_flow_index2 e = error "check that uncalled indices correspond to flows <0.5" + +-- -------------------------------------------------- +-- Putting it together +makeCommonHeader :: Generation -> CommonHeader +makeCommonHeader = commonhd + +-- use MonadRandom +makeReadBlock :: RandomGen g => Generation -> Sequence Nuc -> CommonHeader -> Rand g ReadBlock +makeReadBlock g sq ch = + do dir <- getRandom :: RandomGen g => Rand g Dir + p <- getRandomR (0,(fromIntegral $ seqlength sq-1)) :: RandomGen g => Rand g Integer + let pos = fromIntegral p + -- sffinfo doesn't like this, I think: + rn = BS.pack ((toStr $ seqlabel sq)++"_"++(case dir of Fwd -> "+"; Rev -> "-")++(show pos)) + sdata = let orig = B.splitAt (fromIntegral pos) (seqdata sq) + in case dir of Fwd -> snd orig + Rev -> revcompl' $ fst orig + fs = take (fromIntegral $ flow_length ch) $ makeFlows (BS.unpack $ flow ch) $ BL.concat [BL.fromChunks [key ch], sdata] + pfs <- permuteFromModel g fs + let (cs,qs,is) = unzip3 $ call g (BS.unpack $ flow ch) pfs + return $ ReadBlock { + read_header = ReadHeader { + name_length = fromIntegral $ BS.length rn -- :: Int16 + , num_bases = fromIntegral $ length cs -- :: Int32 + , clip_qual_left = 5 -- :: Int16 + , clip_qual_right = fromIntegral $ length cs -- :: Int16 + , clip_adapter_left = 0 -- :: Int16 + , clip_adapter_right = 0 -- :: Int16 + , read_name = rn -- :: ByteString + } + -- The data block + , flowgram = pfs -- :: [Flow] + , flow_index = BS2.pack $ map fromIntegral is -- :: ByteString + , bases = fromStr cs -- :: SeqData + , quality = BL.pack qs -- :: QualData + } hunk ./src/Sim454.hs 1 -{- | Sim454 - simulate 454 flowgrams from a reference genome - - Flow values are modelled from a log-normal noise, and a sequence of - normal distributions, one for each homopolymer length. These distributions - can be estimated from real data. - - Todo: - Options: -m [-n | -r ] - Model as a data structure (dyn load?) - Paired ends models B-linker-A - --} -{-# options -XParallelListComp #-} - -module Main where - -import Bio.Sequence -import Bio.Sequence.SFF - -import qualified Data.ByteString.Lazy.Char8 as B -import qualified Data.ByteString.Lazy as BL -import qualified Data.ByteString.Char8 as BS -import qualified Data.ByteString as BS2 -import System.Environment (getArgs) - -import Data.Char (toUpper) -import Data.Int -import Data.List (unfoldr) - -import Statistics - -import Generations.GenBase -import Generations.GS20 - - --- | A Model consists of a set of distribution parameters (mu and sigma). --- The first distribution is log-normal noise, the subsequent are normal distributions --- corresponding to the signal for increasing homopolymer lengths. -data Dir = Fwd | Rev deriving (Eq,Enum,Bounded) - -instance Random Dir where - random g = let (b,g') = random g in (if b then Fwd else Rev,g') - randomR = error "randomR is undefined for Dir" - --- | The different generations of 454 hardware (and, presumably, software). --- data Generation = GS20 | FLX | Titanium - -main = do - -- handle options! - args <- getArgs - let arg = case args of [x] -> x - _ -> error "Usage: pyrosim " - ss <- map castToNuc `fmap` readFasta arg - sff <- evalRandIO (sim454 gs20 $ head ss) - -- writeFile "debug.txt" (show sff) - writeSFF "output.sff" sff - --- testing -s = Seq (fromStr "foo") (fromStr "aacacattcgtggtnagctacggaacacattcgtggtnagctacggaacacattcgtggtnagctacggaacacattcgtggtnagctacgg") Nothing - --- | Heavy lifting. Building an SFF file from the specified information --- sim454 :: String -> Generation -> Model -> Sequence Nuc -> StdGen -> SFF -sim454 :: RandomGen g => Generation -> Sequence Nuc -> Rand g SFF -sim454 gen sq = do - let ch = (makeCommonHeader gen) {num_reads = 2} - rbs <- sequence (replicate (fromIntegral $ num_reads ch) (makeReadBlock gen sq ch)) - return (SFF ch rbs) - --- -------------------------------------------------- --- Generate the flow values - --- generate the "absolute" flow values from the key and the origin sequence data -makeFlows :: [Char] -> SeqData -> [Int] -makeFlows c s | B.null s = [] - | otherwise = let (c1,s1) = makeCycle [] (take 4 c) s - s2 = case B.uncons s1 of Just (x,_) -> if not (toUpper x `elem` "ACGT") then B.tail s1 else s1; _ -> s1 - in c1 ++ makeFlows c s2 - -{- - prop_makeFlows :: EST -> Bool - prop_makeFlows (E s) = let sd = filter (not . (=='n')) $ toStr $ seqdata s - in makeFlows "TACG" (seqdata s) == reverse (makeFlows "TACG" $ seqdata $ revcompl s) --} - -makeCycle :: [Int] -> [Char] -> SeqData -> ([Int],SeqData) -makeCycle acc [] s = (reverse acc,s) -makeCycle acc (c:cs) s = let (this,rest) = B.span ((==toUpper c).toUpper) s - in makeCycle (fromIntegral (B.length this):acc) cs rest - --- -------------------------------------------------- --- pull a value from a model - -permuteFromModel :: RandomGen g => Generation -> [Int] -> Rand g [Flow] -permuteFromModel gen = mapM permute . zip [0..] - where permute (p,x) = do y <- sample (model gen x p) - return $ floor (y * 100) - --- -------------------------------------------------- --- Calling the sequence from the flows -call :: Generation -> [Char] -> [Flow] -> [(Char,Qual,Int)] -call _ _ [] = [] -call g cs fs = let (low, high) = span (<50) fs - c:cs' = drop (length low) (cycle cs) - in if length low >= 3 then ('N',0,length low) : call g (c:cs') high - else case high of (h:rest) -> call1 g c (length low+1) h ++ call g cs' rest - [] -> [] - -call1 :: Generation -> Char -> Int -> Flow -> [(Char,Qual,Int)] -call1 g c p f = let q1:qs = getqual g f in (c,q1,p):[(c,q,0) | q <- qs] - --- testing -prop_flow_call e = undefined -- seqdata e == call GS20 "TCAG" $ makeFlows "TCAG" $ seqdata e -prop_flow_index1 e = error "check that called indices correspond to flows >=0.5" -prop_flow_index2 e = error "check that uncalled indices correspond to flows <0.5" - --- -------------------------------------------------- --- Putting it together -makeCommonHeader :: Generation -> CommonHeader -makeCommonHeader = commonhd - --- use MonadRandom -makeReadBlock :: RandomGen g => Generation -> Sequence Nuc -> CommonHeader -> Rand g ReadBlock -makeReadBlock g sq ch = - do dir <- getRandom :: RandomGen g => Rand g Dir - p <- getRandomR (0,(fromIntegral $ seqlength sq-1)) :: RandomGen g => Rand g Integer - let pos = fromIntegral p - -- sffinfo doesn't like this, I think: - rn = BS.pack ((toStr $ seqlabel sq)++"_"++(case dir of Fwd -> "+"; Rev -> "-")++(show pos)) - sdata = let orig = B.splitAt (fromIntegral pos) (seqdata sq) - in case dir of Fwd -> snd orig - Rev -> revcompl' $ fst orig - fs = take (fromIntegral $ flow_length ch) $ makeFlows (BS.unpack $ flow ch) $ BL.concat [BL.fromChunks [key ch], sdata] - pfs <- permuteFromModel g fs - let (cs,qs,is) = unzip3 $ call g (BS.unpack $ flow ch) pfs - return $ ReadBlock { - read_header = ReadHeader { - name_length = fromIntegral $ BS.length rn -- :: Int16 - , num_bases = fromIntegral $ length cs -- :: Int32 - , clip_qual_left = 5 -- :: Int16 - , clip_qual_right = fromIntegral $ length cs -- :: Int16 - , clip_adapter_left = 0 -- :: Int16 - , clip_adapter_right = 0 -- :: Int16 - , read_name = rn -- :: ByteString - } - -- The data block - , flowgram = pfs -- :: [Flow] - , flow_index = BS2.pack $ map fromIntegral is -- :: ByteString - , bases = fromStr cs -- :: SeqData - , quality = BL.pack qs -- :: QualData - } rmfile ./src/Sim454.hs } Context: [commented-out test for flows revcomps s = reverse flows s Ketil Malde **20090703114427 Ignore-this: 11d5254077111ec659d2e7df6c61e9d3 ] [num_reads is a property of the header Ketil Malde **20090703114343 Ignore-this: dabc91e9c79b567c4cf2fc7fdbdb482 ] [slightly improved arg handling Ketil Malde **20090629084344 Ignore-this: 335e826228d71908b0e3e3260f4aac22 ] [set clip_qual limits to whole sequence Ketil Malde **20090511094537] [dead code chop chop Ketil Malde **20090509105451] [model is now a function from hpoly lenght and sequence (i.e. flow) position Ketil Malde **20090509105217] [bugfix: limit flowgram lenght to flow_lenght ch Ketil Malde **20090508094712] [rename to pyrosim, update cabal file Ketil Malde **20090508091501] [implement a primitive mkQualTable Ketil Malde **20090504135559] [count bases in output Ketil Malde **20090504115412] [random direction, prepend key sequence Ketil Malde **20090504115349] [use a real lognormal noise distrib Ketil Malde **20090504115324] [pick random dir/pos too Ketil Malde **20090504101147] [add random permutations from model Ketil Malde **20090504101114] [mock-up various output values, produce credible SFF output Ketil Malde **20090502194528] [comment/whitespace fixes Ketil Malde **20090502110527] [update to use Rand monad throughout Ketil Malde **20090502110507] [sample now works in the Rand monad Ketil Malde **20090502110422] [trap unitialized fields, elim warnings Ketil Malde **20090502110245] [move more stuff out to Generation, now produces correct header Ketil Malde **20090429134234] [restructure generations as a struct Ketil Malde **20090428075223] [fix? for call Ketil Malde **20090428073849] [sketch test cases, comment changes Ketil Malde **20090428073755] [generic Distribution data type Ketil Malde **20090416185311] [integrate postions into the call function Ketil Malde **20090416094959] [use gs20lookup to build quals Ketil Malde **20090416094135] [working call function for base and quality Ketil Malde **20090416094040] [export gs20lookup from the qualtable Ketil Malde **20090416094002] [split up makeFlows to accomodate N's in input sequence Ketil Malde **20090415082840] [add test seq Ketil Malde **20090415082651] [branched from flower to sim454, add QT stuff Ketil Malde **20090414164248] [TAG 0.1.1 Ketil Malde **20090302205439] Patch bundle hash: d42b4915992d229b2c9e00f30ccc6d3e9af9bf5b